Cassiopeia Override Kategorieliste

  • Moin,
    ich mache gerade Versuche mit der Kategorieliste iVm. Schlagwörtern.


    Die Liste ist so konfiguriert, dass Titel und Änderungsdatum als Spalten angezeigt werden.

    Nun würde ich gerne in einer zusätzlichen Spalte die verwendeten Schlagworter anzeigen,
    ABER ich habe bisher nicht die Datei gefunden, für die ich das Override erstellen kann.


    Kann mir Jemand auf die Sprünge helfen?


    Christian

  • Hallo,


    ich setze den Thread wieder auf "unerledigt", WEIL ich mit meinem profunden Halbwissen keine Ahnung habe, wie ich die im Beitrag verwendeten Schlagwörter in der angepassten Kategorieliste zur Anzeige bringe.

    Ich habe in der Tabelle "#_content" den entsprechenden Datensatz des Beitrages gefunden, aber ich finde keine Verbindung zu dem erfassten Schlagwort (= tag).

    Wo muss ich da suchen und wie lautet die Syntax für die Ausgabe im Override?

    Die testweise Anzeige des Alias mit

    <?php echo $article->alias; ?>

    hat auf Anhieb geklappt.


    Christian

  • In der Datei default_articles.php wäre das Muster:


    PHP
    <?php foreach ($this->items as $i => $article) : ?>
        <?php echo $this->escape($article->tag); ?>
    ...
    <?php endforeach; ?>

    Funktioniert so nicht. Scheint komplexer.

  • Danke. Ich habe den Code aufgedröselt.

    Snippet aus view.php siehe github:



    default_articles.php:



    Wie alles zusammensetzen ist die Frage, damit tags erscheinen? Danke für die geschätzte Hilfe.
    Flipper

  • Moin,


    das Problem muss doch zu lösen sein, jedoch bekomme ich es nicht auf die Reihe.

    Ich habe ein Override von "com_content > category > default_articles.php"

    Dort habe ich die Tabelle um eine Spalte erweitert und auch die Spalte eine Überschrift gegeben.

    Soweit so gut, aber ich bekomme es nicht hin, den Wert des Schlagwortes bzw. CustomFields für den jeweiligen Beitrag ausgeben.

    Die testweise Ausgabe des Alias mit

    <?php echo $article->alias; ?>

    klappte auf Anhieb.


    ;(


    Christian

  • Ohne jetzt tiefer einsteigen zu wollen:

    Das ganze Schlagwortlistenthema ist in Joomla überhaupt nicht ausgereift und hat mich echt schon Nerven gekostet.

    Was ich damit sagen will... Du bist nicht alleine mit deinem Schmerz. ;(:)


  • Ich würde statt der Kategorie-Liste den Kategorie-Blog wählen und die Datei blog_item.php abändern. Zur Veranschaulichung rudimentär Titel und Tags tabellarisch dargestellt:



    Vielleicht passts oder jemand anderes hat Freude daran.

    Grüsse Flipper

  • Wohl eventuell nützlich an der richtigen Stelle im Override von "com_content > category > default_articles.php" :


    PHP
    <?php  $article->tagLayout = new FileLayout('joomla.content.tags');  ?>    
    <?php  $article->tags = new TagsHelper(); ?> 
    <?php  $article->tags->getItemTags('com_content.article', $article->id); ?> 
    
    <?php echo $article->tagLayout->render($article->tags->itemTags); ?>     

    und bei den use Zeilen am Anfang der Datei zuvor natürlich noch ergänzen:


    Code
    use Joomla\CMS\Helper\TagsHelper;
    use Joomla\CMS\Layout\FileLayout;
  • Klappt. Top.

  • Wenn du das so machst wie in deiner obigen Datei in #17 dann wird dir PHP zumindest eine Notice als Meldung auswerfen wenn du in System->Konfiguration->Server->"Fehler berichten" z.B. auf "maximal" einstellst!

    Und dies bei allen Beiträgen die keine Tags enthalten und mit diesem view ausgegeben werden.


    Daher wohl besser z.B. per if zuerst klären ob überhaupt ein Schlagwort(Tag) beim Beitrag vorhanden ist...


    PHP
    <?php  if (!empty($article->tags->itemTags)): ?>  
    <?php  echo $article->tags->itemTags[0]->title ; ?> 
    <?php  endif; ?>  

    Wird übrigens z.B. beim Beitrags-View auch so ähnlich gemacht:


    gitub.com/joomla/joomla-cms/blob/4.2.6/components/com_content/tmpl/article/default.php#L79-L83


    Dort wird z.B. zusätzlich noch abgefragt wie im Beitrag im Tab Optionen das Schlagwörter-Anzeigen eingestellt ist...