[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
Sidebar - welches Konzept ist am besten? - 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/
fsiebert1977
Beiträge: 168
Registriert: 9. Feb 2005, 20:51
Wohnort: Bad Nauheim
Kontaktdaten: Website

Sidebar - welches Konzept ist am besten?

11. Jul 2005, 20:47

Hallo allerseits,

ich bin gerade im Planungsstadium für eine neue Website. Ich würde gerne ein Seitenlayout mit einer Navigation im Header und einer vielseitig nutzbaren Sidebar realisieren (Entwurf dazu kann man sich hier anschauen: http://www.spitz.softloop.biz.

Nun meine Frage dazu: Wie erzeuge ich am besten die Inhalte der Sidebar? Lege ich dazu ein Modul an, oder benutze ich besser einen zusätzlichen Artikel? Ich vermute, dass es besser wäre, einen Artikel anzulegen, weil man so in der Lage wäre, in der Sidebar selbst mehrere Module zu verwenden. Aber wie würde ich diesen Artikel dann ansprechen und wie müssten die Templates aussehen? Wie würde der Sidebar-Artikel wissen, zu welchem Content-Artikel er gehört?

Wäre nett, wenn jemand mir einen Tipp geben könnte.

Grüße
Florian Siebert

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

Re: Sidebar - welches Konzept ist am besten?

12. Jul 2005, 07:24

Hej,
fsiebert1977 hat geschrieben: Nun meine Frage dazu: Wie erzeuge ich am besten die Inhalte der Sidebar? Lege ich dazu ein Modul an, oder benutze ich besser einen zusätzlichen Artikel?
Hängt davon ab, ob die Sidebar immer den gleichen Content hat oder von Artikel zu Artikel unterschiedlich sein soll.

Für den Content der Sidebar aller Artikel legst du einen neuen Artikel an und fügst den entsprechenden Inhalt ein.

Im Template setzt du dann im entsprechenden Container folgendes ein:

Code: Alles auswählen

<?php
$sidebar = new article;
$sidebar->setArticleID(99);
echo $sidebar->getArticle();
?>
Anstelle der 99 natürlich die richtige ArtikelId deines Sidebarartikels.

lg Thomas

fsiebert1977
Beiträge: 168
Registriert: 9. Feb 2005, 20:51
Wohnort: Bad Nauheim
Kontaktdaten: Website

12. Jul 2005, 10:21

Hi Thomas,

danke für deine Hilfe.

Der Inhalt der Sidebar wird in jedem Artikel unterschiedlich sein. Muss ich dann mit Modulen arbeiten? Ich würde jedoch die Sidebar gerne wie einen eigenen Contentbereich behandeln können, d.h. unterschiedliche Module wie Headline, Fliesstext, Bild etc. einsetzen können unabhängig vom Hauptcontent. Wie löse ich das am besten?

Gruß Florian

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

12. Jul 2005, 12:49

Hi,

ich würde in jede Categorie einen Artikel hineinlegen, der "sidebar" heisst und diesen dann per searchArticleByName ( 'sidebar') auslesen und anzeigen... so kannst(musst) du in jeder Kategorie eine andere sidebar hinterlegen

Gruß,
Markus

fsiebert1977
Beiträge: 168
Registriert: 9. Feb 2005, 20:51
Wohnort: Bad Nauheim
Kontaktdaten: Website

12. Jul 2005, 12:55

Das hört sich doch vernünftig an. Ich kenne mich zwar leider mit den Redaxo-eigenen Funktionen noch nicht gut aus, werde aber mal probieren, ob ich was hinbekomme. Gibt es eigentlich eine Referenz für Redaxo-Funktionen und Variablen?

Gruß Florian

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

12. Jul 2005, 13:04

Hej
fsiebert1977 hat geschrieben:Gibt es eigentlich eine Referenz für Redaxo-Funktionen und Variablen?
Nein noch nicht. Da die Doku gerade im Aufbau ist, wird auch dieses Kapitel denke ich in Angriff genommen.

Thomas

fsiebert1977
Beiträge: 168
Registriert: 9. Feb 2005, 20:51
Wohnort: Bad Nauheim
Kontaktdaten: Website

13. Jul 2005, 13:50

kills hat geschrieben:Hi,

ich würde in jede Categorie einen Artikel hineinlegen, der "sidebar" heisst und diesen dann per searchArticleByName ( 'sidebar') auslesen und anzeigen... so kannst(musst) du in jeder Kategorie eine andere sidebar hinterlegen

Gruß,
Markus
@Markus:
Bei mir sagt er "Call to undefined function". Wo finde ich die o.a. Funktion und wie gebe ich dann mit $this -> getArticle() den gefundenen Artikel aus?

Gruß Florian

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

13. Jul 2005, 14:22

Hi Florian,

Code: Alles auswählen

$ooCat = OOCategory::getCategoryById( $this->getValue( 'category_id'));
$ooArticles = $ooCat->getArticles();

foreach ( $ooArticles as $ooArticle) 
{
  if ( $ooArticle->getName() == 'sidebar') {
     // mach was
    break;
  }
}
Leider fehlt eine Funktion um Artikel nach Name zu suchen.

@jan: Bitte auf die Todo Liste mit drauf :)

Gruß,
Markus


PS:
Eine kleine Funtionsrefrenz gibts hier:
http://wiki.redaxo.de/pmwiki.php/Main/O ... dFramework
http://wiki.redaxo.de/pmwiki.php/Main/OOCategory
http://wiki.redaxo.de/pmwiki.php/Main/OOArticle

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

13. Jul 2005, 19:22

Das ist aus dem Wiki

searchArticlesByName ($name)

Funktioniert das nicht.

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

13. Jul 2005, 19:25

tbaddade hat geschrieben:Das ist aus dem Wiki

searchArticlesByName ($name)

Funktioniert das nicht.
Das funktioniert vermutlich schon, aber nach dieser Abfrage erhält mann alle Artikel mit dem übergebenen Namen. Und da er ja in jeder Kategorie einen Artikel namens "sidebar" erstellen will, wird Ihm das nicht sehr weiterhelfen...

Es wäre gut wenn man die Suche auf eine Besteimmte Kategorie eingrenzen könnte... Ma sehen was sich da machen lässt.

Gruß,
Markus

EDIT:

Ich hab den CVS von r2.7.4 mal upgedated und nun ist in dieser Version ein 2. Parameter möglich.

Code: Alles auswählen

<?php
// Durchsucht Kategorie 1
$ooArticles = OOArticle::searchArticlesByName( 'Home',1);
?>

Code: Alles auswählen

<?php
// Durchsucht Kategorie 1 u. 2
$ooArticles = OOArticle::searchArticlesByName( 'Home',array(1,2));
?>

Code: Alles auswählen

<?php
// Durchsucht Kategorie 1 u. 2 u. 5 u. 8
$ooArticles = OOArticle::searchArticlesByName( 'Home',array(1,2,5,8));
?>

fsiebert1977
Beiträge: 168
Registriert: 9. Feb 2005, 20:51
Wohnort: Bad Nauheim
Kontaktdaten: Website

14. Jul 2005, 20:40

Hi Markus,

vielen Dank für deine Antworten. Ich war die Tage sehr beschäftigt, deswegen kam ich nicht dazu, mich weiter mit dem Problem zu befassen. Ich werde mich jetzt mal dransetzen und scheuen, ob ich was erreichen kann. Mal nebenbei: Was bedeutet CVS und muss ich mein Redaxo updaten, um die Funktion so wie du zu nutzen?

Gruß Florian

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

14. Jul 2005, 22:26


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

15. Jul 2005, 08:25

tbaddade hat geschrieben:Hej

CVS das ist die Entwicklerversion drin.

http://developer.berlios.de/projects/redaxo/

http://doku.redaxo.de/index.php?article_id=91

Thomas
Hi,

Wenn du nur eine Datei aus dem CVS laden willst, dann geht das schneller per Web Frontend.
http://cvs.berlios.de/cgi-bin/viewcvs.cgi/redaxo/

Die Datei die du brauchst wäre dann folgende:
http://cvs.berlios.de/cgi-bin/viewcvs.c ... ortby=date

Davon die neuste Revision downloaden und die lokale damit ersetzen!

Gruß,
Markus

fsiebert1977
Beiträge: 168
Registriert: 9. Feb 2005, 20:51
Wohnort: Bad Nauheim
Kontaktdaten: Website

15. Jul 2005, 09:25

Cool, danke. Das werde ich ausprobieren.
Gruß Florian
www.softloop.biz

fsiebert1977
Beiträge: 168
Registriert: 9. Feb 2005, 20:51
Wohnort: Bad Nauheim
Kontaktdaten: Website

15. Jul 2005, 11:43

Hi Markus,

wie gebe ich in deinem o.g. Beispiel den gefundenen Artikel aus? Normalerweise zeigt man ja den Startartikel mit echo $this->getArticle(); an. Wie gebe ich andere Artikel aus? Und was bedeutet eigentlich das "->"?

PS. Kenne mich noch nicht gut aus in PHP und Redaxo-Programmierung.
Gruß Florian
www.softloop.biz

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

15. Jul 2005, 12:08

Hi

Code: Alles auswählen

<?php
$aktuelleKategory = $this->getValue('category_id');
$ooSidebarArtikel = OOArticle::searchArticlesByName( 'sidebar', $aktuelleKategory);
echo $ooSidebarArtikel->getArticle();
?> 
Gruß,
Markus

fsiebert1977
Beiträge: 168
Registriert: 9. Feb 2005, 20:51
Wohnort: Bad Nauheim
Kontaktdaten: Website

15. Jul 2005, 12:21

Er spuckt folgende Fehlermeldung aus:

Fatal error: Call to a member function getArticle() on a non-object in /home/httpd/docs/spitz/redaxo/include/classes/class.article.inc.php(375) : eval()'d code on line 2
Gruß Florian
www.softloop.biz

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

15. Jul 2005, 12:24

fsiebert1977 hat geschrieben:Er spuckt folgende Fehlermeldung aus:

Fatal error: Call to a member function getArticle() on a non-object in /home/httpd/docs/spitz/redaxo/include/classes/class.article.inc.php(375) : eval()'d code on line 2
Vorraussetzung ist natürlich, dass es in der Kategorie in der du gerade im Frontend browsed auch einen Artikel namens "sidebar" gibt...

Gruß,
Markus

fsiebert1977
Beiträge: 168
Registriert: 9. Feb 2005, 20:51
Wohnort: Bad Nauheim
Kontaktdaten: Website

15. Jul 2005, 12:31

Den gibt es ja. Mit meinen Laienaugen sieht die Fehlermeldung so aus, als gäbe es da einen Fehler wegen der objekorientierten Programmierung. Kann das sein?
Gruß Florian
www.softloop.biz

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

15. Jul 2005, 12:37

fsiebert1977 hat geschrieben:Den gibt es ja. Mit meinen Laienaugen sieht die Fehlermeldung so aus, als gäbe es da einen Fehler wegen der objekorientierten Programmierung. Kann das sein?
Hi

Code: Alles auswählen

$ooSidebarArtikel = OOArticle::searchArticlesByName( 'sidebar', $aktuelleKategory);
Diese Zeile gibt "null" zurück wenn kein Artikel mit diesem Namen gefunden wurde...

Dann würde so eine Fehlermeldung entstehen..

Kann ich mir das mal online ansehen?

Zugang per PM?

Gruß,
Markus

fsiebert1977
Beiträge: 168
Registriert: 9. Feb 2005, 20:51
Wohnort: Bad Nauheim
Kontaktdaten: Website

15. Jul 2005, 12:48

Klar, ich schick dir die Daten per Mail.
Gruß Florian
www.softloop.biz

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

15. Jul 2005, 13:20

Mir ist grad noch was eingefallen:

Code: Alles auswählen

<?php
$aktuelleKategory = $this->getValue('category_id');

$ooSidebarArtikel = OOArticle::searchArticlesByName( 'sidebar', $aktuelleKategory);

$artikel = new article();
$artikel->setArticleId( $ooSidebarArtikel->getId());
echo $artikel->getArticle();
?> 
Versuch das ma...

Gruß,
Markus

fsiebert1977
Beiträge: 168
Registriert: 9. Feb 2005, 20:51
Wohnort: Bad Nauheim
Kontaktdaten: Website

15. Jul 2005, 13:24

hmm, dann kommt dieser Fehler:

Fatal error: Call to a member function getId() on a non-object in /home/httpd/docs/spitz/redaxo/include/classes/class.article.inc.php(375) : eval()'d code on line 29

Haste die Daten bekommen?
Gruß Florian
www.softloop.biz

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

15. Jul 2005, 13:25

Hi,
fsiebert1977 hat geschrieben: Haste die Daten bekommen?
Ich bin noch auf der Arbeit, da kann ich meine Privaten mails nicht abrufen..

Mach ich heute Abend.

Gruß,
Markus

fsiebert1977
Beiträge: 168
Registriert: 9. Feb 2005, 20:51
Wohnort: Bad Nauheim
Kontaktdaten: Website

15. Jul 2005, 13:38

Ich hab deinen Zugang etwas abgespeckt, ich stell ihn jetzt einfach mal ins Forum:

www.abc.de

login: xxXXxxx
pass:xxXXxxx

Wenn du magst, kannst du ja mal nachschauen.
Gruß Florian
www.softloop.biz

Zurück zu „Allgemeines [R2]“