Jump to content

Featured Replies

Posted

I have database articles with categories.

I created a block that needs to be obtain the current category id for a given database record being displayed.

I tried this and number of other things but still unable to get the category id. 

{{$cat_id=$category->database_id;}}

Does anyone know how to do it? Thanks.

 

Solved by Nathan Explosion

Go to solution

 

$record->container()->id

 

Edited by Nathan Explosion

  • Author

@Nathan Explosion thank you.

Adding this 

{{$cat_id = $record->container()->id;}}

results 503 error message in pages

 

in pages

Where exactly are you adding this in pages? You've given no information about what template you are editing so I'm assuming that it is the record display template in the Pages templates that you are editing, as you mentioned:

 

 

a given database record

Give more information than you are currently providing...help people help you. Describe what you are doing more...

 

created a block

What is the full code of the block? Where is the block placed in Pages? etc.

 

Edited by Nathan Explosion

  • Author

That is intended to be used inside a custom html block that will display content based on the category id of a given database record.

  • Community Expert

try it the other way around

have the category conditional call on the record template with a separate block for each category as needed

Edited by sound

  • Author

Sound, thank you but I am not sure I understood. 

 

 

What is the full code of the block? Where is the block placed in Pages? etc.

 

@Nathan Explosion Here is the full code where cat_id should be the current article (database record) category id

{{if request.app == 'cms' }}

	{block="articles_related_articles_{$cat_id}"}
{{endif}}

 

Edited by virap1

  • Solution
This post was recognized by Marc!

Nathan Explosion was awarded the badge 'Helpful' and 5 points.

OK - assumptions made:

  1. You are creating a custom manual HTML block that contains that code
  2. You are placing that block in the sidebar when viewing a record
{{if request.app == 'cms' }}
	{{$databaseId = \IPS\cms\Databases\Dispatcher::i()->databaseId;}}
	{{$class = "\IPS\cms\Records".$databaseId;}}
	{{$record = $class::load(\IPS\Request::i()->id);}}
	{{$categoryId = $record->container()->id;}}
	{block="articles_related_articles_{$categoryId}"}
{{endif}}

If that doesn't work (and there is probably a better way of doing it, this was a quick throw-togehter) then I've got no idea where you are putting it.

  • Author

@Nathan Explosion thank you very much. Your suggestion works as expected.

Recently Browsing 0

  • No registered users viewing this page.