Page 1 of 1

Seitenleisten Plugins Kategoriebezogen ein- bzw. ausblenden

Posted: Mon Jan 09, 2006 2:37 pm
by cate_archer
Hallo.

Ich suche eine Möglichkeit, bestimmte Seitenleisten PlugIns Kategoriebezogen anzeigen zu lassen.

Also, wenn Kategorie 12-XXX angewählt ist, soll das Seitenleisten PlugIn HTML Klotz [Nr.1] angezeigt werden, wenn aber Kategorie 3-YYY angewählt ist, soll nur HTML Klotz [Nr. 2] (nicht Nr. 1) angezeigt werden.

Ist das irgendwie möglich?

Vielen Dank

PS: Zur Erklärung - ich möchte in jeden HTML Klotz eigene Links zu bestimmten Kategorien anlegen und könnte so verschiedene Menues zu verschiedenen Kategoriebäumen anlegen.

Re: Seitenleisten Plugins Kategoriebezogen ein- bzw. ausblen

Posted: Mon Jan 09, 2006 3:12 pm
by garvinhicking
Jupp, wurde neulich auch im englischen Forum gefragt: http://www.s9y.org/forums/viewtopic.php?t=4121

Du musst also im Template solche Abfragen einfügen -- das Problem ist, dass sowas per GUI/Oberfläche recht schwierig abzufragen/abzufangen wäre.

Den Code kannst du ggf. anpassen und die plugin-klasse oder Titel abzufragen.

Viele Grüße,
Garvin

Posted: Mon Jan 09, 2006 4:44 pm
by cate_archer
Vielen Dank für die schnelle Antwort.

Ich bin leider eine absolute PHP-Niete. :(
Könntest Du mir eine kurze Erklärung zu den Befehlen im Script geben?

Das Ergebnis kannst Du Dir dann unter www.one-11.de anschauen.

Vielen vielen Dank. :)

Posted: Mon Jan 09, 2006 5:13 pm
by garvinhicking
Das sind "nur" Smarty-Abfragen, und kein wirkliches PHP.

Von dem gepostet Code ist nur die IF-Abfrage im Block wirklich wichtig. Einfach mal anschauen und die IF-Abfragen laut lesen, dann dürfte das alles klar werden. :)

Wichtig ist genau diese Zeile:

Code: Select all

 {if $item.class == 'serendipity_categories_plugin' OR $item.class == 'serendipity_plugin_comments'}
Diese fragt ab, ob das Attribut "class" des aktuell darzustellenden Seitenleisten plugins "serendipity_categories_plugin" lautet. Wenn ja, dann wird das angezeigt, wenn nicht, wird das Plugin übersprungen.

Das ganze kannst Du dann mit einer Kategorie-Auswahl aufpeppen:

Code: Select all

 {if $category == 12 AND $item.class == 'serendipity_categories_plugin' }
Das bewirkt dann, dass bei Category #12 das "Kategorien"-Plugin angezeigt wird. Bei allen anderen Kategorien aber nicht. Die Logik kannst Du mit "NOT" oder "OR" auch beliebig umändern.

Alternativ hilft das "categorytemplates" Plugin auch, da kannst Du dann pro Kategorie ein eigenes Template zu weisen, und dann musst Du die $category Abfrage auch nicht in die Template-Datei übernehmen.

Leider ist das sehr aufwändig zu beschreiben, am besten ist es einfach damit etwas rum zu experimentieren!

Viele Grüße,
Garvin

Posted: Mon Jan 09, 2006 9:32 pm
by cate_archer
Hallo Garvin.

Die Geschichte mit dem Einblenden funzt super! :D Aber...

... leider muss ich Dich schon wieder nerven :oops: :

Die Frage ist, wie kann ich eines von mehreren "serendipity_html_nugget_plugin" ansprechen? Im Moment kann ich alle oder keines einblenden.

Mit dem Namen aus der Datenbank [bei mir z.B. @serendipity_html_nugget_plugin:4b7509e15a7d87d4540d9793790d5d71] funktioniert es auch nicht [ob mit oder ohne @]

Muss ich da noch was verändern?
Hat das Plugin noch eine andere Bezeichnung / Nummerierung?

Falls Du auf die Seite [www.one-11.de] schauen solltest > es geht um die beiden links oben (heissen beide Kategorie, könnte ich aber ändern, wenn ich irgendwie was mit den Namen anfangen kann)

Vielen Dank für Deine Mühen!

Posted: Tue Jan 10, 2006 10:40 am
by garvinhicking
Hi!
Die Frage ist, wie kann ich eines von mehreren "serendipity_html_nugget_plugin" ansprechen? Im Moment kann ich alle oder keines einblenden.
Wie genau lautet da dein Code?

$item.class enthält nur die Pluginklasse.

Die ID gibt es so in Smarty nicht. Für das aktuelle SVN von 1.0-alpha2 habe ich gerade committed, das auch $item.id verfügbart ist, aber da müsstest du dann heute abend auch erstmal den neuen snapshot ziehen.

Ich würde Dir eher einen Vergleich anhand von $item.title empfehlen, und dann den Titel des Nuggets als Bedingung nutzen.

Viele Grüße,
Garvin

Posted: Tue Jan 10, 2006 11:19 am
by cate_archer
Hallo.

Eine kurze [hoffendlich letzte] Frage.

Die $item.id währe dann das:
@serendipity_html_nugget_plugin:4b7509e15a7d87d4540d9793790d5d71
oder nur das:
4b7509e15a7d87d4540d9793790d5d71
?

Sorry, ich steh da etwas auf'm Schlauch.

Zur Info: Ich nutze im Moment die Version 1.0-alpha2 vom 01.01.06

Vielen Dank und Grüsse aus dem verschneiten [arschkalten] Allgäu

Posted: Tue Jan 10, 2006 12:27 pm
by garvinhicking
Hi!
Die $item.id währe dann das:
@serendipity_html_nugget_plugin:4b7509e15a7d87d4540d9793790d5d71
oder nur das:
4b7509e15a7d87d4540d9793790d5d71
?
Die wäre dann ersteres. :)

Dafür brauchst Du diesen Patch: http://svn.berlios.de/viewcvs/serendipi ... 730&r2=831

Viele Grüße,
Garvin

Posted: Tue Jan 10, 2006 8:40 pm
by cate_archer
Suuuuuppper! :lol:

Nun funktioniert es genauso wie ich [bzw. Sie] es wollte!

Danke Garvin!!!!!!!!!!!!!!!!!

Posted: Wed Jan 11, 2006 1:42 pm
by garvinhicking
Super! Viel Spaß damit! :)

Viele Grüße,
Garvin

Ein Dankeschön gefällig?

Posted: Mon Feb 06, 2006 10:02 am
by cate_archer
Hallo Garvin,
hier schreibt "Sie".

Ich würde Dir gerne etwas gutes tun, vielleicht ein Buch oder eine CD von Amazon? Hast mein Hausfrauen-dasein echt verschönert, darum dankeschön und maile mir bitte Deinen Wunsch - oder einen Forumeintrag hierzu?

ich@severina.de - www.one-11.de :wink:

Posted: Mon Feb 06, 2006 11:13 pm
by robert
Verstehe ich deine Frage cate_archer ganz falsch, oder ist - Garvin - dafür nicht auch das Plugin "Seitenleisten ein/ausklappbar machen " gedacht, dass es auch ermöglicht bestimmte Seitenleistenplugins nur in bestimmten Kategorien anzuzeigen. Ich habe damit z.B. nur für eine Kategorie einen HTML-Klotz freigeschalten.