WordPress Error Logging

Um Fehler in einem WordPress-System in eine Datei loggen zu lassen, muss man die WordPress-Konfigurationsdatei wpconfig.php anpassen. Folgende Einträge sind in der Datei wpconfig.php notwendig:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
ini_set('error_log', WP_CONTENT_DIR . '/debug.log');

Nach dem Abspeichern der genannten Einträge, werden alle Fehler in die Datei /wp-content/debug.log geschrieben. Möchte man selber Informationen in die Log-Datei schreiben, so kann man die PHP-Funktion error_log benutzen.
WordPress Error Logging weiterlesen

WordPress Widget ID herausfinden

WordPress unterstützt im Design-Bereich die Möglichkeit, mehrere Instanzen eines Widgets zu verwenden. Damit Anwendungsentwickler die Möglichkeit haben, auf die Einstellungen verschiedener Instanzen eines Widgets zu reagieren, kann die Widget ID abgefragt werden. Die Widget ID setzt sich aus einem Slug des Widget-Namens und einer fortlaufenden Nummer zusammen.
WordPress Widget ID herausfinden weiterlesen

Stabile und komfortable Links mit WordPress einfügen

Wer mit dem WYSIWYG-Editor von WordPress arbeitet, wird festgestellt haben, dass der Editor absolute Links einfügt. Selbst wenn man Links zur eigenen Webseite haben möchte, erstellt einem der WYSIWYG-Editor einen Eintrag in dieser Form:

<a href="https://www.bennyn.de/css3-animationen" title="CSS3 Animationen">CSS3 Animationen</a>

Zieht man mit seinem Blog nun auf eine andere Domain um oder möchte man seinen Blog auf dem localhost testen, dann funktionieren die Verlinkungen nicht mehr, da der absolute Pfad nicht stimmt. Ich habe mir deshalb eine Lösung in Form eines Shortcodes überlegt, die Folgendes im Editor ermöglicht:

[link]5255[/link]
 
führt zu:
 
<a href="https://www.bennyn.de/css3-animationen" title="CSS3 Animationen">CSS3 Animationen</a>
 
[link text="Mein Text"]5255[/link]
 
führt zu:
 
<a href="https://www.bennyn.de/css3-animationen" title="Mein Text">Mein Text</a>

Die Links werden dynamisch mit PHP erzeugt, so dass der Host immer dem gerade verwendeten Host entspricht. Ein Domain-Umzug ist somit kein Problem! Außerdem muss man keinen Text mehr für die Links eingeben, da automatisch der Text des Beitrags genommen wird. Alles was man wissen muss, ist die Post-ID (im Beispiel 5255).

Wie kann man den Shortcode [ link ] benutzen?

Um den Shortcode zu verwenden, muss man folgende PHP-Zeilen in der Datei functions.php seines WordPress-Themes einfügen:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/*
 * [link]5255[/link]
 * [link text="My Link"]5255[/link]
 */
function displayLink($attributes, $postId) {
  $linkTarget = get_permalink($postId);
  $linkText = $attributes[text];
 
  if (!$linkText)
    $linkText = esc_attr(strip_tags(get_the_title($postId)));
 
  $format = '<a href="%s" title="%s">%s</a>';
  $link = sprintf($format, $linkTarget, $linkText, $linkText);
 
  return $link;
}
 
add_shortcode('link', 'displayLink');

Sollte die Datei functions.php nicht vorhanden sein, kann eine leere PHP-Datei mit diesem Namen erstellt werden, um den Code einfügen zu können.

RSS Datumsformat in MySQL Datetime umwandeln

WordPress stellt zu jeder Kategorie einen RSS 2.0 Feed zur Verfügung. Man muss dazu nur die Permalink-URL gefolgt von einem /feed/ eingeben.

Beispiel: https://www.bennyn.de/downloads/
RSS-Feed: https://www.bennyn.de/downloads/feed/
Alternativ: https://www.bennyn.de/downloads/?feed=rss2

Das Datum des jeweiligen Feed-Eintrags wird nach RFC822 Spezifikation angegeben (Beispiel: Sun, 06 Sep 2009 16:10:34 +0000). In der Programmiersprache PHP habe ich eine Funktion geschrieben, die dieses Format in ein MySQL-kompatibles DATETIME umwandelt.
RSS Datumsformat in MySQL Datetime umwandeln weiterlesen

WordPress Installation übertragen

Um eine bestehende WordPress-Installation auf einen anderen Server (z.B. dem eigenen localhost) zu kopieren, kann man wie folgt vorgehen:

  1. Im bestehenden WordPress Blog das Plugin WordPress Database Backup von Austin Matzko installieren
  2. Nach erfolgreicher Installation über „Werkzeuge“ > „Backup“ eine Sicherung der WP-Datenbank durchführen
  3. Über SFTP den kompletten WordPress Ordner auf den localhost kopieren
  4. Mit phpMyAdmin eine neue MySQL-Datenbank auf dem localhost anlegen
  5. In die neue Datenbank wechseln und das Datenbank-Backup (*.sql.gz) importieren
  6. Die Tabelle wp_options öffnen und unter „option_name“ den Eintrag siteurl editieren und als „option_value“ die neue Adresse eingeben (Bsp.: http://localhost/bennyn.de/)
  7. In die Administrations-Oberfläche der WP-Installation auf dem localhost wechseln
  8. Unter Einstellungen > Allgemein die Blog-Adresse (URL) anpassen (Bsp.: http://localhost/bennyn.de/)