[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
Modul Kopfgrafik - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
barbe
Beiträge: 239
Registriert: 17. Mai 2006, 13:09

Modul Kopfgrafik

12. Dez 2007, 11:28

Hallo liebe Rexaner,

habe mich dran gemacht, ein Script zum Einbinden von Kopfgrafiken, die in den Kategorien per meta-infos festgelegt sind, zu erstellen.

Habe mir bei Euch ein bisschen was abgeschaut und versucht, eine Lösung zu basteln.

Bekomme aber den Fehler:
Fatal error: Call to a member function getValue() on a non-object
Wundert mich eigentlich, denn ich habe die Variable $art doch mit allen Informationen gefüllt ...

Code: Alles auswählen

<?
   // KOPFGRAFIK
   // Default-Kategorie festlegen
   $def_cat = OOCategory::getCategoryById(8);
   $def_topbanner = $def_cat->getValue("cat_kopfgrafik");

   // hat Kategorie des aktuellen Artikels eine Kopfgrafik gesetzt?
   $art = OOArticle::getArticleById(REX_ARTICLE_ID);
   $cat = OOCategory::getCategoryById($art->getCategoryById());
   $topbanner = $cat->getValue("cat_kopfgrafik");
   
   // Wert vorhanden oder default?
   if ($topbanner == '') {
   $topbanner = $def_topbanner;
   }

?>

Code: Alles auswählen

[quote][/quote][quote][/quote]

dag
Beiträge: 369
Registriert: 24. Aug 2004, 22:11
Wohnort: Dortmund
Kontaktdaten: Website

12. Dez 2007, 15:14

Hallo,
ist das nicht hier bereits gelöst worden? Du hast diesen Thread ja auch dort noch mal eingetragen.
http://forum.redaxo.de/ftopic6045.html

Und
OOCategory::getCategoryById($art->getCategoryById());
muß wahrscheinlich so lauten:
OOCategory::getCategoryById($art->getCategoryId());
Grüße
Dagmar

barbe
Beiträge: 239
Registriert: 17. Mai 2006, 13:09

12. Dez 2007, 15:53

Danke! Leider nein, dann lautet der Fehler ähnlich:
Fatal error: Call to a member function getCategoryId() on a non-object in
Viele Grüße!

Benutzeravatar
Markus.Staab
Entwickler
Beiträge: 9634
Registriert: 29. Jan 2005, 15:50
Wohnort: Aschaffenburg/Germany
Kontaktdaten: ICQ Website

12. Dez 2007, 18:21

Hi,

du verwendest redaxo4?

short open tags sollte man in php nicht mehr verwenden (statt <? nimm <?php)

was kommt bei

Code: Alles auswählen

var_dump("REX_ARTICLE_ID");
für eine ausgabe?

Die Bemerkung von Dagmar ist ebenfalls wichtig/richtig.

Gruß,
Markus

barbe
Beiträge: 239
Registriert: 17. Mai 2006, 13:09

12. Dez 2007, 19:07

Hi Markus,

ja, genau. Rex4.

Ausgabe:

string(14) "REX_ARTICLE_ID"

Gruss
Sebastian

Benutzeravatar
Markus.Staab
Entwickler
Beiträge: 9634
Registriert: 29. Jan 2005, 15:50
Wohnort: Aschaffenburg/Germany
Kontaktdaten: ICQ Website

14. Dez 2007, 15:58

Hi Sebastian,

wo hast du diesen Code stehen?

Wenn ich das in der Modulausgabe drinne hab, kommt bei mir die Artikel Id raus..

Viele Grüße,
Markus

barbe
Beiträge: 239
Registriert: 17. Mai 2006, 13:09

14. Dez 2007, 16:01

Hi Markus,

ich hab den Code direkt im Template drinnen.

Code: Alles auswählen

<?php
   // KOPFGRAFIK
   // Default-Kategorie festlegen
   $def_cat = OOCategory::getCategoryById(219);
   $def_topbanner = $def_cat->getValue("cat_kopfgrafik");

   // hat Kategorie des aktuellen Artikels eine Kopfgrafik gesetzt?
   $art = OOArticle::getArticleById(REX_ARTICLE_ID);
//   $cat = OOCategory::getCategoryById($art->getCategoryId());
//   $topbanner = $cat->getValue("cat_kopfgrafik");
//   var_dump("REX_ARTICLE_ID");
   // Wert vorhanden oder default?
   if ($topbanner == '') {
   $topbanner = $def_topbanner;
   }
?>
Ist das erste, was im Template steht.

Gruss
Sebastian

Benutzeravatar
Markus.Staab
Entwickler
Beiträge: 9634
Registriert: 29. Jan 2005, 15:50
Wohnort: Aschaffenburg/Germany
Kontaktdaten: ICQ Website

14. Dez 2007, 16:43

Hi Sebastian,

da du natürlich in der Kategorie "module/aktionen" gepostet hast, war das letzte woran ich gedacht habe, dass du ein Template verwendest..

ich verschieb das ganze mal..

Gruß,
Markus

PS: verwedet statt REX_ARTICLE_ID mal $this->getValue('article_id')

barbe
Beiträge: 239
Registriert: 17. Mai 2006, 13:09

14. Dez 2007, 16:46

Hi Markus,

danke! Hab ich wohl nicht aufgepasst.

Aber gibt es den Einschränkungen in den Funktionalitäten von Templates gegenüber Modulen? Bisher hatte ich das Problem nie.

Viele Grüße
Sebastian

barbe
Beiträge: 239
Registriert: 17. Mai 2006, 13:09

14. Dez 2007, 16:50

Klappt jetzt. Lässt sich REX_ARTICLE_ID nur in den Modulen nutzen?

Gruss
Sebastian

Benutzeravatar
Markus.Staab
Entwickler
Beiträge: 9634
Registriert: 29. Jan 2005, 15:50
Wohnort: Aschaffenburg/Germany
Kontaktdaten: ICQ Website

14. Dez 2007, 16:53

Hi Sebastian,

sieht so aus, ist allerdings nicht gewollt... ich schau mir das an..

Gruß,
Markus

Zurück zu „Allgemeines [R4]“