Kategorie IDs im Frontend
Closed this issue · 5 comments
eiswurm commented
Ist ist möglich die Kategorie-IDs im Frontend auszugeben? Bei den Variablen z.B. beim event_full.html5 ist nichts dabei.
aschempp commented
in 11c2b03 hinzugefügt. Im event_full
Template (etc.) sollten die IDs der Kategorien ab Version 1.1.1 als $this->categories
verfügbar sein.
eiswurm commented
Bei mir zeigt es sie leider immer noch nicht an, weder im event_full noch in den anderen (upcoming etc.).
aschempp commented
du müsstest das Template anpassen und sie selber ausgeben, automatisch passiert nichts...
fritzmg commented
Die Änderung greift nur, wenn die Filterung aktiv ist.
fritzmg commented
This is how you could do it in your own hook:
namespace App\EventListener\GetAllEvents;
use Codefog\HasteBundle\Model\DcaRelationsModel;
use Contao\CoreBundle\DependencyInjection\Attribute\AsHook;
use Terminal42\CalendarCategoriesBundle\Model\CalendarCategoryModel;
#[AsHook('getAllEvents')]
class EventTitlesListener
{
public function __invoke(array $days): array
{
foreach ($days as &$dates) {
foreach ($dates as &$events) {
foreach ($events as &$event) {
$categoryIds = DcaRelationsModel::getRelatedValues('tl_calendar_events', 'categories', $event['id']);
$event['categoriesCollection'] = CalendarCategoryModel::findMultipleByIds($categoryIds);
}
}
}
return $days;
}
}
<!-- templates/event_teaser.html5 -->
<?php foreach ($this->categoriesCollection ?? [] as $category): ?>
<div><?= $category->name ?></div>
<?php endforeach; ?>