06.10.2008, 13:33
|
#1 (permalink)
| | PostRank: 1
Registriert seit: 06.10.2008
Beiträge: 28
| Kategorien in der Menuleiste verlinken Hallo,
ich stricke gerade an meinem Blog und modifiziere das Theme (BranfordMagazine) und habe folgendes Problem: Ich habe in der Menuleiste den Punkt "Kategorien" eingefügt und darunter gehen die einzelnen Kategorien auf. Wenn ich jetzt auf die Kategorie "Top-Thema" klicke hätte ich gerne, dass die Seite angezeigt wird mit allen Beitragen aus dieser Kategorie. Aber wie das geht weiß ich nicht.
Weiß das jemand?
Danke |
| |
06.10.2008, 13:53
|
#2 (permalink)
| | WPD-Team
Registriert seit: 05.10.2006
Beiträge: 12.961
| Zitat:
Zitat von ddklog Ich habe in der Menuleiste den Punkt "Kategorien" eingefügt und darunter gehen die einzelnen Kategorien auf. | Wie hast du die Kategorien eingefügt? Zitat: |
Wenn ich jetzt auf die Kategorie "Top-Thema" klicke hätte ich gerne, dass die Seite angezeigt wird mit allen Beitragen aus dieser Kategorie.
| Template Tags/wp list categories WordPress Codex |
| |
06.10.2008, 15:31
|
#3 (permalink)
| | PostRank: 1
Registriert seit: 06.10.2008
Beiträge: 28
| Die Kategorien habe ich ganz normal über WP >> "Verwalten" >> "Kategorien" angelegt.
Die Menuleiste habe ich über "Schreiben" >> "Seite" angelegt, wobei ich dann ein beliebiges Template ausgesucht habe und die einzelnen Kategorien der übergeordneten Seite "Kategorien" zugeordnet habe. (ich vermute ja auch, dass ich ein eigenes Template bauen muss in dem dann der Befehl stehen muss. Aber da ich kaum php kann, ist das schwierig. |
| |
06.10.2008, 15:49
|
#4 (permalink)
| | PostRank: 1
Registriert seit: 06.10.2008
Beiträge: 28
| Zitat:
Wenn ich jetzt auf die Kategorie "Top-Thema" klicke hätte ich gerne, dass die Seite angezeigt wird mit allen Beitragen aus dieser Kategorie. Template Tags/wp list categories WordPress Codex | Mit dem Link kann ich leider nur bedingt etwas anfangen: - In welches Dokument an welcher Stelle kommt dieser Code hin? (<?php wp_list_categories('arguments'); ?> )
- Der zweite Teil (Examples) muss ja auch irgendwo hin.
Tut mir leid, aber ich bin da noch ein Greenhorn und ab einem gewissen Level bin ich einfach überfragt.
Danke |
| |
06.10.2008, 15:59
|
#5 (permalink)
| | WPD-Team
Registriert seit: 05.10.2006
Beiträge: 12.961
| Seiten != Kategorien
Das will ich nur mal festgehalten haben  Dein problem ist also eher im Konzept zu suchen. Das wird dir aber sicher das Theme ein wenig so vorgeben.
Du könntest entweder den Theme- Header (d.h. da wo die "Seiten" ausgegeben werden) die Kategorieliste mit o.g. Befehl ausgeben. Das wäre das einfachste. Die Frage ist nur, ob dass das Theme so erlaubt, oder ob man da größere Änderungen vornehmen müsste.
Die andere Variante ist, die Kategorien auf gleichnamigen Seiten auszugeben. Schau dazu mal in diesen Thread rein: Auf Seiten Artikel zeigen? |
| |
06.10.2008, 17:26
|
#6 (permalink)
| | PostRank: 1
Registriert seit: 06.10.2008
Beiträge: 28
| Ich glaube, mein Problem ist viel einfacher: In der Sidebar besitzte ich bereits eine Liste mit einen Kategorien. Wenn ich die anklicke, komme ich auf eine Seite, auf der alle Artikel dieser Kategorie (mit Headline, Teaser, Autor, etc.) untereinander stehen. In der Menuleiste soll im Endeffekt die selbe Liste noch mal stehen. Mit dem Unterschied, dass Kategorie der Hauptmenu-Punkt ist und die einzelnen Kategorien die "Children" (so wird das wohl genannt) sind. So gesehen bin ich auch auf den Gedanken gekommen, dass ich einzelne "kategorie1-page.php", etc. bauen muss um den erwünschten Effekt zu haben. Aber was sollte in diesem Dokument drinne stehen ist halt meine Frage. Da der Effekt derselbe ist, wie wenn ich auf eine bestimmte Kategorie in der Sidebar klicke, dachte ich mir, dass der Befehl doch auch irgendwo in den Dateien des Themes oder WP zu finden sein muss - aber da bin ich eben überfragt.
Nach meinem Verständnis müsste auf dieser Seite folgendes stehen (aber eben in php): Rufe alle Artikel dieser Kategorie auf. Zeige jeweils darunter: Headline, die ersten bspw. 40 Wörter, Autor, Kommentare und ein "Weiterlesen"-Button. Und: die Seite muss so aufgebaut sein, dass ich sie dem Kategorie-Punkt beim erstellen der Kategorie im Admin-Bereich zuordnen kann. Klingt einfach - aber vielleicht gibt es dazu noch eine Anleitung,
Danke |
| |
06.10.2008, 19:19
|
#7 (permalink)
| | WPD-Team
Registriert seit: 05.10.2006
Beiträge: 12.961
| Zitat:
Zitat von ddklog In der Sidebar besitzte ich bereits eine Liste mit einen Kategorien. | Jupp. Diese wird mit ziemlicher Sicherheit von oben genannter wp_list_categories()-Funktion (im WP-Jargon "Template Tag" genannt) generiert. Zitat: |
Wenn ich die anklicke, komme ich auf eine Seite, auf der alle Artikel dieser Kategorie (mit Headline, Teaser, Autor, etc.) untereinander stehen.
| Ja, auch das ist Standard-WordPress, und nennt sich "Kategoriearchiv". Für dieses Kategoriearchiv wird eine bestimmteTenplate-Datei genutzt, d.h. alle Kategoriearchive greifen zur Darstellung auf diese Template-Datei zurück. Welche das ist erfährst du ebenfalls in der Doku: Template Hierarchy WordPress Codex Category Templates WordPress Codex Zitat: |
In der Menuleiste soll im Endeffekt die selbe Liste noch mal stehen.
| Soweit klar. Daher ja mein Hinweis auf wp_list_categories(). Zitat: |
Mit dem Unterschied, dass Kategorie der Hauptmenu-Punkt ist und die einzelnen Kategorien die "Children" (so wird das wohl genannt) sind.
| Nun, du würdest in diesem Fall die Hauptkategorien zu Children des Menüpunktes "Kategorien" degradieren.  Nur die Frage: was ist "Kategorien"? Ein Link oder nicht? Ist es ein Link, dann: wohin? Zitat: |
So gesehen bin ich auch auf den Gedanken gekommen, dass ich einzelne "kategorie1-page.php", etc. bauen muss um den erwünschten Effekt zu haben.
| Nicht zwingend. Du bekommst aber ein Problem, die Auflistung von Kategorien und "Seiten" ( im WP-Sinn) im Menü zu vermischen. Da gibts verschiedene Ansätze, wirklich "schön" ist aber keiner. Wie gesagt, "Seiten != Kategorien" Zitat: |
Aber was sollte in diesem Dokument drinne stehen ist halt meine Frage.
| Ein "Loop", d.h. eine Artikelschleife. Darum musst du dich aber nicht kümmern. Wie gesagt, es wird auf eine bestehende Templatedatei zurückgegriffen. WENN du es richtig machst.
So, ich hoffe, damit auch zu deinen restlichen Fragen zumindest einen Hinweis gegeben zu haben. Wenn nicht, frag einfach nach. |
| |
07.10.2008, 10:10
|
#8 (permalink)
| | PostRank: 1
Registriert seit: 06.10.2008
Beiträge: 28
| Hallo nochmal, Zitat:
In der Menuleiste soll im Endeffekt die selbe Liste noch mal stehen.
Soweit klar. Daher ja mein Hinweis auf wp_list_categories().
| Irgendwie steckt in dem Begriff "wp_list_categories" noch nicht drinne wie und wo ich darauf verweisen kann.
Ich bräuchte hier aufgrund meiner Kenntnisse einfach den ganz konkreten Hinweis. Also der ganz konkrete Schritt: Bspw. habe ich die Möglichkeit in das Textfeld im WP-Admin-Bereich beim Seiten generieren einen Befehl schreiben zu können. Ist das die Stelle an der ich darauf verweise, dass beim draufklicken bitte die Kategorie xy aufgerufen wird? - und wo steckt die Information, dass es sich um die Kategorie xy und nicht um yz handelt?
Ich dachte, ich kann den Link dafür aus der Sidebar rausholen - da steht aber nur: Zitat:
<?php } ?>
<li>
<h3><?php _e('Kategorien','branfordmagazine');?></h3>
<ul class="subnav">
<?php wp_list_categories('orderby=order&hide_empty=1&tit le_li=&exclude=1,');?>
</ul>
</li>
| Siehst du da, etwas, was ich brauchen könnte? Zitat: |
Du bekommst aber ein Problem, die Auflistung von Kategorien und "Seiten" (im WP-Sinn) im Menü zu vermischen. Da gibts verschiedene Ansätze, wirklich "schön" ist aber keiner. Wie gesagt, "Seiten != Kategorien"
| Ich verstehe hier auch deinen Verweis Seiten!=Kategorien und die Warnung, das nicht zu vermischen, nicht genau, kannst du das konkretisieren? Außerdem: welche sind die Wege? |
| |
07.10.2008, 10:24
|
#9 (permalink)
| | WPD-Team
Registriert seit: 05.10.2006
Beiträge: 12.961
| Zitat:
Zitat von ddklog Irgendwie steckt in dem Begriff "wp_list_categories" noch nicht drinne wie und wo ich darauf verweisen kann. | Hast du dir die Doku zu der Funktion eigentlich mal angesehen? Hier nochmal der Link zur (weniger ausführlichen, aber vielleicht einfacher zu verstehenden) deutschen Doku dieser Funktion: Template Tags/wp list categories ? WordDoku
und ein Zitat aus eben dieser: Zitat: |
Zitat von Doku Zeigt eine Liste aller Kategorien an. Die Links sind zum jeweiligen Archiv der Kategorie verlinkt. | Zitat:
Ich dachte, ich kann den Link dafür aus der Sidebar rausholen - da steht aber nur: Code: <?php } ?>
<li>
<h3><?php _e('Kategorien','branfordmagazine');?></h3>
<ul class="subnav">
<?php wp_list_categories('orderby=order&hide_empty=1&tit le_li=&exclude=1,');?>
</ul>
</li>
Siehst du da, etwas, was ich brauchen könnte?
| Ja. Hab ich dir rot markiert. (PS: Verwende bitte keine Zitat- Tags für Quellcode, sondern die entsprechenden Code-Buttons) Zitat: |
Ich verstehe hier auch deinen Verweis Seiten!=Kategorien und die Warnung, das nicht zu vermischen, nicht genau, kannst du das konkretisieren?
| Die Liste der Seiten wird (analog zur Liste der Kategorien) mit der Template-Funktion wp_list_pages() erzeugt und ausgegeben. D.h. du schreibst im Template nur diesen Funktionsaufruf hin, und WP schreibt dir an diese Stelle eine HTML-Liste aller Seiten deines Blogs. Du kannst innerhalb dieser Liste nicht einfach sagen: "an 3. Stelle möchte ich jetzt aber eine Liste meiner Kategorien haben, und danach den Rest der Seiten". Das meine ich mit "vermischen". Zitat: |
Außerdem: welche sind die Wege?
| Du könntest mit include/exclude-Parametern steuern, welche Seiten ausgegeben werden sollen. D.h. du schließt erst eine Hälfte der Seite aus, gibst dann deine Kategorieliste aus, und dann die restlichen Seiten. Du könntest ebenso mit Filtern (WordPress Plugin-API) arbeiten, und die Seitenliste bei der Ausgabe "editieren". Du könntest Seiten anlegen, die ein Kategorielisting (d.h. die Artikel in eienr Kategorie) ausgeben.
Wie gesagt, jede dieser Möglichkeiten hat ihre Nachteile, wirklich empfehlen kann ich davon keine. Am sinnvollsten wäre in meinen Augen noch Variante 1, wobei die Kategorieliste am Anfang/Ende der Seitenliste angefügt wird - mittel schon x-mal erwähnter wp_list_categories()-Funktion. |
| |
07.10.2008, 14:18
|
#10 (permalink)
| | PostRank: 1
Registriert seit: 06.10.2008
Beiträge: 28
| Super! Jetzt konnte ich mich entscheiden:
Ich denke ich entscheide mich für die Variante, bei der ich Seiten anlege, die ein Kategorienlisting ausgeben. Das ist für mich am sinnvollsten, weil ich diese Seiten beim Anlegen im Admin-Bereich eindeutig zuweisen kann.
Frage 1: liege ich damit richtig, dass das Seiten sind, die bspw. „category-1-page.php“ heißen? (nur solche erscheinen in „Erweiterte Einstellungen“ >> „Seiten-Template“)
Frage 2: Wenn ja – muss ich auf dieser Seite ja sagen, um welche Kategorie es sich handelt und wie sie dargestellt werden soll (bspw. Überschrift, Teaser, darunter zusätzliche Angaben, wie Autor, Kommentare, etc). Woher bekomme ich diesen Code? Kann ich mir den irgendwo rauskopieren?
Ich weiß, dass du mir bereits eine Menge an Code-Schnipsel genannt hast – nur kann ich damit nichts anfangen (z.B. der Befehl wp_list_categories () sagt mir so alleine stehend nichts  |
| | | Themen-Optionen | | | | Ansicht | Linear-Darstellung |
Forumregeln
| Es ist dir nicht erlaubt, neue Themen zu verfassen. Es ist dir nicht erlaubt, auf Beiträge zu antworten. Es ist dir nicht erlaubt, Anhänge hochzuladen. Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten. HTML-Code ist aus. | | | Alle Zeitangaben in WEZ +1. Es ist jetzt 08:26 Uhr. | |