Ich weiß garnicht mehr, warum ich mal danach gesucht hatte, es gibt aber eine ganz simple Methode, um alle möglichen WordPress-Einstellungen übersichtlich auf einer Seite aufzulisten. Dazu musst du einfach die URL

http://<Deine Domain>/wp-admin/options.php

aufrufen.

<Deine Domain> muss hierbei logischerweise durch deine eigene Domain ersetzt werden. In meinem Fall müsste man also

http://www.patrick-gotthard.de/wp-admin/options.php

aufrufen.

Möchte man eine Einstellung für irgendetwas nutzen, kann man diese mit folgender Abfrage auslesen:

<?php bloginfo('<Option>'); ?>

Um also z.B. die Administrator-E-Mail auszulesen, benutzt man folgende Abfrage:

<?php bloginfo('admin_email'); ?>

Ich habe seit einiger Zeit das Problem, dass bei mir das Hochladen von Bildern in WordPress nicht mehr richtig klappt.

Wenn ich Bild einfügen wähle, dann auf Dateien auswählen klicke und dann das Bild hochlade, kommt zwar noch die Anzeige Crunching… und das Bild ist auf meinem Webserver vorhanden, danach zeigt er jedoch nur folgendes Fenster an:

Wenn dort eine 0 steht, dann kann ich das Bild garnicht einfügen, steht dort eine Zahl ungleich 0, dann kann ich auf Alle Änderungen speichern klicken und danach das Bild aus der Galerie einfügen. Ich habe schon testweise das Fluency Admin deaktiviert, daran liegt es aber auch nicht.

Kennt jemand den Fehler und kann mir helfen?

Vor einiger Zeit habe ich im Netz nach einer guten Seiten-Navigation für mein WordPress-Theme gesucht. Dabei bin ich auf diesen Beitrag bei Benjamin Vötterle gestoßen. Er hat sich die Mühe gemacht und den PHP-Code für eine WordPress-Pagination geschrieben.

Diesen Code habe ich mir genommen, verbessert, verschlankt und an meine Bedürfnisse angepasst. Herausgekommen ist dabei folgende Pagination:

Hier kannst du ein Paket aus der PHP-Datei und dem zugehörigen Stylesheet herunterladen. Den Quellcode musst du einfach in deine functions.php kopieren oder anderweitig in dein WordPress-Theme einbinden.

Um die Pagination nutzen zu können, musst du folgenden Code an die passende Stelle einfügen:

<?php if(function_exists('pagination')) pagination(); ?>

Die Funktion kann auch parametriert aufgerufen werden:

<?php if(function_exists('pagination')) pagination($start_end_links, $middle_links); ?>

Der erste Parameter gibt dabei an, wieviele Links immer am Anfang und am Ende der Pagination angezeigt werden sollen. Der zweite Parameter bestimmt, wieviele Links “um den Link der aktiven Seite” angezeigt werden. Für den zweiten Parameter empfiehlt sich deshalb eine ungerade Zahl.

P.S.: Nicht vergessen, den alten Code für die herkömmliche Navigation auszukommentieren bzw. zu löschen ;)

Seit WordPress 2.9 unterstützt WordPress die offene Schnittstelle oEmbed,  mit der Medien automatisch von anderen Quellen eingebunden werden können. So können z.B. ganz einfach Videos von Youtube eingebunden werden, indem man die URL des Videos (bzw. der Seite in das das Video eingebettet ist) in WordPress einfügt.

Derzeit ist das Feature jedoch aus Sicherheitsgründen beschnitten. So können nur Medien von ausgewählten Anbietern eingebunden werden. Welche das sind, kannst du hier nachlesen. Doch was muss man tun, um nicht unterstützte Anbieter mit einzubeziehen. Dafür gibt es zwei Methoden. Entweder man benutzt die Funktion wp_oembed_add_provider(), um einzelne Anbieter hinzuzufügen, oder man installiert das Plugin Enable oEmbed Discovery, das eine generelle oEmbed-Unterstützung aktiviert. Diese beiden Methoden greifen jedoch nur, wenn der Anbieter auch oEmbed unterstützt. Über einen Tipp, wie man das prüfen kann, wäre ich sehr dankbar :)

Möchtest du einen Anbieter hinzufügen, der kein oEmbed anbietet, musst du ihn manuell einbinden. Dazu nutzt man die Funktion wp_embed_register_handler().

P.S.: Ich muss gestehen, dass ich mir die Funktions-Seiten erst nach dem Verfassen des Artikels angeschaut habe. Derzeit sind diese noch leer. Ich hoffe, dass diese in den nächsten Tagen gefüllt werden. Ansonsten wird man sicherlich per Google findig :)

Gestern habe ich bereits über die neue WordPress-Version 2.9 berichtet, heute kann ich über neue Erfahrungen mit der Version schreiben.

Nachdem es mir anfangs nicht gelungen ist, Youtube-Videos ohne seperates Plugin zentriert einzubinden, habe ich heute nochmal Google bemüht und diese Seite gefunden. Es gibt zwei Möglichkeiten, um Videos (zum Beispiel von Youtube) unter WordPress einzubinden:

Variante 1: der Link steht allein in einer Zeile (das kann man über die HTML-Ansicht prüfen).

Variante 2: man benutzt das embed-Tag (genaueres auf der verlinkten Seite). Hierbei darf der Link auch von anderen HTML-Elementen umgeben sein, wodurch das Video auch einfach zentriert werden kann.

Eine weitere Neuerung von WordPress 2.9 ist die Batch-Aktualisierung für Plugins, mit der bis zu 10 Plugins auf einmal aktualisiert werden können. Leider ist die Funktion ein bisschen versteckt. Beim Fluency-Admin Theme erreicht man die Batch-Aktualisierung über Werkzeuge »Autoupdate.

Seit ein paar Tagen gibt es WordPress in der Version 2.9. Heute habe ich dann die deutsche Version per Update eingespielt. Es wurden wieder zahlreiche Bugs gefixt, aber auch neue Funktionen hinzugefügt.

So verfügt WordPress nun über einen Papierkorb, mit dem gelöschte Artikel wiederhergestellt werden können. Durch das neue Feature wurde die Bestätigung beim Löschen eines Artikels entfernt. Es können nun bis zu 10 Plugins auf einmal aktualisiert werden, sodass man nicht jedes Update einzeln einspielen muss. Auch wurde ein Bildeditor integriert, der das Zurechtschneiden, Drehen, Spiegeln und Skalieren von Bildern erlaubt. Des Weiteren findet man viele kleinere Verbesserungen unter der Haube, wie z.B. die Unterstützung für das suchmaschinenfreundliche rel=”canonical”.

Die Einbindung von Videos wurde nun ebenfalls verbessert. So können nun zum Beispiel ganz leicht Videos von Youtube eingebettet werden. Die neuste deutsche Version von WordPress kann man wie gehabt hier herunterladen. Wer bereits ein WordPress im Einsatz hat, kann per Update-Funktion auf die neue Version aktualisieren.

Das mit der Video-Einbindung habe ich eben erfolgreich getestet, man muss einfach den Youtube-Link in den Artikel packen. Allerdings zeigt er mir, sobald ich das Video zentrieren möchte, nur den Linktext an. Insgesamt kommt mir alles ein bisschen schneller vor, selbst das Plugin WP Super Cache habe ich eben deinstalliert, irgendwie baut sich die Seite nun schneller auf als zuvor… Kann aber auch Einbildung sein…

[Quelle: pro-linux.de]

WordPress Datenbank aufräumenHeute habe ich mich wieder einmal mit der Bereinigung der WordPress-Datenbank beschäftigt. Letztens habe ich bereits geschrieben, wie man verwaiste Einträge in der Tabelle wp_options entfernen kann, heute geht es der automatischen Zwischenspeicherung und Versionierung an den Kragen.

WordPress erstellt selbstständig zahlreiche Zwischenspeicherungen, während man einen neuen Artikel erstellt bzw. einen bestehenden Artikel editiert. Zusätzlich dazu wird bei jeder Aktualisierung eines Artikels eine neue Version des Artikels in der Datenbank abgelegt.

Beide Features haben ihre Vor- und Nachteile. So stellt die automatische Zwischenspeicherung sicher, dass ein relativ frischer Artikelstand gespeichert ist, auch wenn man aus Versehen seinen Brwoser geschlossen hat. Die Versionierung kann dann hilfreich sein, wenn man einen älteren Artikel-Stand wiederherstellen möchte.

Ich brauche beide Funktionen nicht und entschied mich deshalb dafür, die Datenbank von diesem Müll zu befreien. Zunächst einmal legt man eine Sicherung der WordPress-Datenbank an. Dann geht es den bereits gespeicherten Zwischenspeicherungen und Versionen an den Kragen. Dazu öffnest du PHPMyAdmin oder ein anderes MySQL-Administrationstool und feuerst folgendes SQL-Kommando ab:

DELETE FROM wp_posts WHERE post_type = 'revision'

Mit diesem SQL-Kommando wurden bei mir z.B. 804 Einträge gelöscht, übrig blieben gerade einmal 225 Einträge. Anders ausgedrückt: der SQL-Dump schrumpfte von 2,44MB auf gerade einmal 0,81MB. Das erfreut die Datenbank :)

Um die automatische Zwischenspeicherung und Versionierung in Zukunft zu unterbinden, kann man das Plugin Disable Revisions and Autosave installieren. Es gibt auf derselben Seite auch noch zwei andere Plugins, die jeweils entweder nur die automatische Zwischenspeicherung oder die Versionierung deaktivieren. Diese Plugins sind für diejenigen nützlich, die nur eines der beiden Features deaktivieren möchten.

[Gefunden auf www.majeres.de]

WordPress Datenbank aufräumenHeute wollte ich meinem Blog wieder ein Plugin verpassen, das automatisch einen eintrag auf Twitter erzeugt, wenn ich einen neuen Artikel erstellt habe. Nachdem ich das Plugin Twitter Updater installiert hatte, war ich ein wenig verdutzt: es waren meine Twitter-Daten bereits eingetragen. Nach kurzer Überlegzeit bin ich darauf gekommen: das Plugin hatte ich schonmal installiert! Aber wo hat es die Einstellungen gespeichert…? Die Antwort war leicht: in der Tabelle wp_options der WordPress-Datenbank.

Also habe ich einmal einen kleinen Blick auf die Tabelle geworfen. Klein?? Nix da, die Tabelle war vollkommen aufgebläht von Einstellungen, die getestete Plugins hinterlassen hatten. Doch wie räume ich diese Tabelle ordentlich auf, ohne etwas wichtiges zu löschen? Hier kommt das Plugin Clean Options ins Spiel.

Zunächst einmal habe ich eine Sicherung der Datenbank gemacht und dann Clean Options gestartet. Clean Options nimmt sich die  Tabelle wp_options vor und guckt im wp-content Verzeichnis, ob dort irgendwelche Dateien auf die Eintellungen in der Tabelle zugreifen. Findet er keine Übereinstimmung, listet er die vermeintlich verwaisten Einträge auf. Diese kann man einzelnd durchgehen und entscheiden, welche Einträge gelöscht werden sollen. Bei mir kamen so über 200 verwaiste Einträge in den Müll. Wie man sieht läuft mein WordPress noch ;)

Ich kann nur empfehlen, seine WordPress-Datenbank sauber zu halten. Das spart nicht nur Speicher, sondern macht auch WordPress insgesamt performanter. Die nächsten Tage werde ich über weitere Maßnahmen berichten, wie man die WordPress-Datenbank clean hält. Also immer schön vorbeischauen ;)

UPDATE: Gut, dass ich zuvor ein Backup gemacht habe. Beim Durchgehen der verwaisten Einträge habe ich aus Versehen die Daten meines Plugins wp-table-reloaded gekickt.

Zum Entwickeln meines neuen Designs habe ich mir eine lokale Entwicklungsumgebung aufgesetzt, die auf den Daten meines Produktivsystems (also der laufenden Webseite) basiert. Dafür musste ich dieses WordPress auf geeignete Art und Weise auf meinen localhost bringen.

WordPress umziehen

Dabei habe ich zunächst die Daten der WordPress-Datenbank mit PHPMyAdmin als SQL-Datei exportiert. Sollte deine Datenbank bereits so umfangreich sein, dass PHPMyAdmin die Aufgabe nicht mehr erledigt, kann auf Tools wie den MySQL Administrator zurückgegriffen werden.

weiterlesen…

Denjenigen, die meine Seite häufiger besuchen, sollte es sofort auffallen: mein Blog hat ein neues Design! Viele Stunden mühevoller Handarbeit waren notwendig, um dieses Design zu entwerfen und umzusetzen. Ich habe hierbei vor allem darauf geachtet, kaum etwas im <head>-Bereich und im Kommentar-Bereich zu ändern, da bei mir ja bekanntlich die  Ping- und Trackbacks irgendwie nicht mehr arbeiten wollen. So kann ich ausschließen, dass der Fehler beim Design liegt.

Das neue Design sollte vor allem freundlicher und optisch ansprechender gestaltet sein. Ab sofort hält auch wieder eine Seitenleiste Einzug, auf der z.B. die neusten Kommentare und die Blogroll angezeigt werden (das wird den caschy freuen :D ). Natürlich ist das Design wieder CSS- und XHTML-valide ;)

Damit das alte Design nicht in Vergessenheit gerät, poste ich hier noch einmal kurz ein Bild der alten Seite:

Altes Blog-Design

Und nun seid ihr gefragt: wie findet ihr das neue Design? Was würdet ihr noch verändern?

Geplant ist noch folgendes:

  • Suchfunktion muss neu eingebunden werden (erledigt)
  • Farben werden ein bisschen dunkler gestaltet, ist mir auf die ganze Seite gesehen doch etwas zu hell (erledigt)
  • eventuell noch ein paar optische Highlights reinbringen (erledigt)
  • Kommentar-Darstellung überarbeiten (erledigt)

P.S.: Ich hoffe man kapiert, dass das Logo oben links meine Initialien sind :D Leider fiel mir nichts gescheites ein, als ich ein Logo mit “PG” von links nach rechts erstellen wollte. (Neuer Header)