Piet von Netzpanorama hat gestern in seinem Artikel Artikelübersicht oder Inhaltsverzeichnis als WordPress Unterseite beschrieben, wie er mit dem WordPress-Plugin Articles eine Sitemap erstellt. Genauer gesagt erstellt dieses Plugin eine HTML-Sitemap, die die Benutzerfreundlichkeit eines Blogs verbessern soll. Das ist der Unterschied zu einer XML-Sitemap, die man erstellt, damit Google sich besser auf der eigenen Website zurechtfindet.
Während bei Piet das Plugin einwandfrei funktioniert, gab es bei mir und zwei anderen Usern Probleme. Articles bietet nämlich zwei Möglichkeiten, eine Sitemap in den eigenen Blog einzubinden. Bei der ersten Variante musste man einen php-Code einfügen, was einen größeren Eingriff ins Template bedeutet hätte.
Für die zweite Möglichkeit musste man lediglich eine neue Seite erstellen und dort in der HTML-Ansicht einen Token einfügen. Außerdem musste man in den Plugineinstellungen ein Auswahlfeld von „No“ auf „Yes“ ändern. Und genau da hakte es bei mir. Ich konnte zwar die Auswahl auf „Yes“ ändern, nach Drücken des Buttons „Update Articles Settings“ wurde automatisch wieder die Auswahl auf „No“ gestellt.
Ich dachte zuerst, es würde vielleicht an den Dateirechten liegen und stellte das Pluginverzeichnis und die Plugindatei auf 777. Das brachte aber leider nix. Also guckte ich mir mal die WordPress-Datenbank mal näher an und siehe da, da fand ich einen passenden Eintrag, den ich nur von 0 auf 1 ändern musste.
Datenbankeintrag von Articles ändern
Ich poste hier jetzt mal die genaue Anleitung, wie man die Änderung vornimmt. Wer diese nachvollziehen will, sollte aber unbedingt vorher ein Backup der WordPress-Datenbank machen. Wie das funktioniert habe ich in diesem Artikel bereits erklärt: Datenbank optimieren mit phpMyAdmin.
Um in den Plugineinstellungen von Article bei der Option „Enable token method for showing the articles list“ den Wert „Yes“ einzustellen, muss man in der Tabelle wp_options den Wert „aka_token“ auswählen (wenn Articles gerade erst installiert wurde, müsste der Wert in der Tabelle ziemlich weit hinten stehen) und auf Bearbeiten klicken. Dort ändert man den angezeigten Wert von „0“ auf „1“ und klickt auf „OK“. Jetzt braucht man nur noch wie vorgesehen eine Seite zu erstellen und dort den Token einzufügen.
Für ein weiteres Problem habe ich leider keine brauchbare Lösung gefunden. Damit Articles weiß, welchen Beitrag man in der Sitemap haben will, muss man nämlich jeden einzelnen Beitrag bearbeiten und dort bei „Mark as an Article?“ mittels eines Radiobuttons das voreingestellte „No“ auf „Yes“ ändern. Wenn man mehrere hundert Beiträge hat, ist das natürlich ein riesiger Aufwand. Diese Einstellung wird zwar auch in der Datenbank gespeichert, es muss aber zuvor für jeden Artikel ein Datenbankeintrag angelegt werden. Und da ist es doch einfacher, diese Einstellung direkt im Beitrag vorzunehmen. Falls jemand eine einfache Lösung für dieses Problem hat, bin ich natürlich für eine Anregung dankbar 🙂
Alles in allem muss ich doch Piet zustimmen, der meinte, dass sich diese Fleißarbeit auf jeden Fall lohnen würde. Denn die von Articles erstellte Sitemap ist nicht nur übersichtlich, sondern auch optisch gut gelungen.
Hey Cujo, ich freue mich dass du eine Lösung gefunden hast. Schaut gut aus deine Sitemap 🙂
Aber ich bin echt verwundert dass es so viele Probleme gibt, bei mir lief damals alles ganz problemlos. Ob da ein zwischenzeitliches WordPress Update den Ausschlag gibt? Auf jeden Fall zeigt es mal wieder unterschiedlich unsere WordPress Installationen sind und dass Dinge die auf Blog A super funktionieren bei Blog B bei weitem nicht so einfach zu realisieren sind. Ich hoffe meine Leser machen von deiner Lösung gebrauch und können dann ebenfalls eine Sitemap genießen.
LG Piet
Klasse Cujo!
Das war es auch bei mir. Dank Deines Beitrages konnte ich auch bei mir eine Seite mit einer Artikelübersicht anlegen 😀
LG Sylvi
Hi,
ich hatte das selbe Problem bis mich Piet auf deinen Beitrag hingewiesen hat . Super, dass du eine Lösung gefunden hast, hat mir sehr geholfen und nun habe ich auch meine Übersicht:)
Klasse! Das werde ich jetzt auch gleich probieren! Vielen Dank.
Bis dato kannte ich nur dieses Plugin für die Sitemap: http://wordpress.org/extend/plugins/sitemap-generator/ Hatte ich selbst auch einige Zeit lang im Einsatz. Mit der Zeit werden es aber zu viele Artikel, so dass mir meine Lösung der unterschiedlichen Sidebars mit Artikelauflistungen der jeweiligen Kategorie bzw. des Tags noch am besten gefällt.
Wenn es denn unbedingt wieder eine solche Sitemap werden sollte, dann würde ich persönlich eher auf eine selbst programmierte Lösung zurückgreifen. query_posts funktioniert doch so schön 😉
@ Tanja Den Sitemap-Generator hatte ich bisher im Einsatz. Aber das Plugin, das Piet vorgestellt hatte, hat mir doch besser gefallen. Sieht einfach schöner aus 🙂
Der einzige Nachteil ist halt, dass man bei jedem Beitrag, den man schreibt, daran denken muss ihn der Sitemap hinzuzufügen. Das war beim Sitemap-Generator nicht nötig.
Schöner sieht der Output aus, das muss ich Dir Recht geben. Ich würde es für mich aber trotzdem eher „händisch“ vorziehen, was ebenfalls den Vorteil hat, dass man beim Artikel selbst keine Einstellungen hat. Entweder mit query_posts oder mit den schönen popular_posts, da liese sich sicherlich einiges kreatives damit anstellen.
Ist aber natürlich alles auch Geschmackssache und ich bin ein Typ, der gerne händisch ins Theme eingreift.
Hy,
ich blicke an diesem Punkt nicht durch:
Ich habe jetzt mit dem WYSIWYG Editor eine Startseite mit Unterseiten extra desingt (für´s Layout).
Nun möchte ich diese Seiten als neue Startseite auf meinen WordPress Blog haben. Meine „Artikel“ (Blogthemen) sollen so bleiben wie sie sind.
Ich habe meine neu entworfenen Seiten mit den WordPress „Artikeln“ einfach verlinkt.
Wie mach ich das jetzt, dass meine Seiten von WordPress so aussehen wie ich sie mit dem WYSIWYG Editor designt habe?
PS: Ich habe einen FTP Manager von meinem Anbieter, traue mich aber nicht so recht, dort was zu ändern..
Kannst Du mir da weiter helfen?
Grüße Manuela
😉
Hi, versuche seit ein paar Tagen eine Übersichtsseite für meinen Reime-Blog zu basteln (siehe Website), bin aber mit dem Ergebnis von Articles unzufrieden.
Gibt es ein Plugin oder einen Code-Schnippsel mit dem ich auf einer Seite meines Blogs nur Aritkel aus einer bestimmten Kategorie anzeigen lassen kann?
Gruß Sean
Eigentlich sind genau dafür ja die WordPress-Kategorien gedacht. Du ordnest jeden Beitrag in eine Kategorie ein und blendest in der Sidebar die Kategorien ein. Dann kannst du dir mit einem Klick alle Beiträge anzeigen lassen, die zu dieser Kategorie gehören.
Ein Plugin brauchst du dafür nicht.
@Cujo Und was ist mit SEO? eine Seite kann ich mit zusätzlichem Text und Bildern gestalten, um diese für Nutzer und Suchmaschinen zu optimieren. In meinem Blog werden die Seiten in der Top-Navi deutlich mehr als die Kategorien angeklickt.
Daraus ergibt sich für mich auch die Frage, ob Articles den Suchmaschinen überhaupt Content auf der Seite anzeigt?!
@Sean Okay, jetzt verstehe ich was du meinst. Soweit ich weiß, kann man auf einer Seite keine Blogeinträge anzeigen lassen. Zumindest kenne ich keine fertige Lösung dafür.
Du brauchst für Articles nur einen Token einzufügen. Ansonsten kannst du die Seite völlig frei gestalten. Du kannst also auf die Sitemap-Seite auch Texte schreiben und Bilder einfügen.
Inwiefern das sinnvoll ist, ist dann wieder eine andere Frage. Ich finde, eine Sitemap soll der Übersicht dienen. Bei zuviel anderem Texten und Bildern besteht die Gefahr, dass die Sitemap unübersichtlich wird.
Guter Tip mit dem Plugin… Es ist auf jeden Fall schon mal ein guter Anfang, auch wenn es noch einige rauhe Kanten hat.
Damit ich nicht alle Artikel nachträglich als Artikel markieren musste, habe ich den folgenden SQL Befehl ausführen lassen:
insert into wp_postmeta (post_id, meta_key, meta_value)
SELECT id, '_ak_article', 1 FROM `wp_posts`WHERE post_status = 'publish'
Damit bekommen alle Artikel, die als veröffentlicht angezeigt werden, die notwendige Markierung, um in der Artikelliste zu erscheinen.
@Jörn Vielen Dank für deinen Code. Ich habe ihn bei mir auch ausprobiert und er funktioniert einwandfrei.
Wer die Artikel auch per Datenbankbefehl auf „Yes“ setzen will, sollte aber vorher unbedingt ein Datenbank-Backup anfertigen.
@Jörn: Dank Dir für den Schnipsel. Das nimmt mir auf jeden Fall einiges an Arbeit ab.
Super Plugin, das mit dem manuellen Markieren hatte ich total überlesen. Na ja, dann an die Arbeit!
Einfaches umgehen des „mark as article“:
in Zeile 103 im articles.php im plugin-dir das mit dem AKA_META_KEY rausnehmen, dass es so aussieht:
$query = new WP_Query(‚posts_per_page=99999999‘);