Custom Filed in Artikel auslesen

  • Hallo Zusammen,


    ich habe in Joomla 4 nach dieser Anleitung ein eigenes Feld für ein Profilbild angelegt.


    Soweit, so gut. Als nächsten möchte ich dieses Feld als Override in einen Artikel auslesen. Dabei bin ich nach der selben Anleitung vorgegangen. Ich habe ein Override erstellt: com_content/article/default.php


    In dieser Datei dann den Code der Anleitung eingefügt. Ich kann auch das Feld auslesen, jedoch ist der Wert (value) leer.


    Kann mir bitte jemand weiter helfen. Hat sich da bei Joomla 4 etwas geändert? Funktioniert die Anleitung für Joomla 4 überhaupt?



    MfG neoman

  • Nein, die Ausgabe ist an jeder Stelle im Code gleich. Hier mal das Array. Ziemlich am Ende sollte bei "value" der Pfad zum Bild enthalten sein. Der Wert ist aber leer.


    Wenn ich den Code wie in der Anleitung in der Datei author.php die als Override unter templates/mein-template/html/layouts/joomla/content/info_block liegt eingebe, funktioniert es komischerweise. Da ist der Wert "value" nicht leer, sondern enthält den Bilderpfad.


    Code
    stdClass Object ( [id] => 1 [title] => Profilbild [name] => profilbild [checked_out] => [checked_out_time] => [note] => [state] => 1 [access] => 1 [created_time] => 2021-05-12 16:58:31 [created_user_id] => 323 [ordering] => 0 [language] => * [fieldparams] => Joomla\Registry\Registry Object ( [data:protected] => stdClass Object ( [directory] => [preview] => [image_class] => ) [initialized:protected] => 1 [separator] => . ) [params] => Joomla\Registry\Registry Object ( [data:protected] => stdClass Object ( [hint] => [class] => [label_class] => [show_on] => [render_class] => [showlabel] => 1 [label_render_class] => [display] => 2 [prefix] => [suffix] => [layout] => [display_readonly] => 2 ) [initialized:protected] => 1 [separator] => . ) [type] => media [default_value] => [context] => com_users.user [group_id] => 1 [label] => Profilbild [description] => [required] => 0 [language_title] => [language_image] => [editor] => [access_level] => Public [author_name] => Admin [group_title] => Benutzerinformationen [group_access] => 1 [group_state] => 1 [group_note] => [value] => [rawvalue] => )


    Was mache ich falsch?



    MfG neoman

  • Für Joomla 4 habe ich zufällig gerade hier etwas Ähnliches gesehen: Ein Tutorial zur Verwendung des Cassiopeia-Templates für Joomla 4

    Vielen Dank für den Link. Hab den Fehler gefunden, jetzt klappt es.


    Es lag an der Zeile


    Code
    $author = Joomla\CMS\Factory::getUser($displayData['item']->created_by);


    die natürlich so aussehen muss


    Code
    $author = Joomla\CMS\Factory::getUser($this->item->created_by);


    War ein Denkfehler meinerseits.



    MfG neoman