Manchmanl ist es einfach notwendig die Permalinks der WordPress-Beiträge direkt in der Datenbank zu checken oder die gesamten Blog-Posts mit Titeln, Inhalten und dazugehörigen Links herunterzuladen. Da jeder Beitrag in der WordPress-Datenbank aber in mehrere Tabellen aufgeteilt ist, kann diese Aufgabe sich etwas schwieriger gestalten. Dank folgendem MySQL-Script gelingt es jedoch sehr einfach.
Anwendungsmöglichkeiten
- Die Permalinks direkt in der Datenbank ändern
- Backup von allen Posts in ordentlicher Form
- Import in Excel
MySQL-Abfrage
SELECT wpp.post_title, wpp.guid, wpp.post_date,
REPLACE( REPLACE( REPLACE( REPLACE( wpo.option_value, '%year%', DATE_FORMAT(wpp.post_date,'%Y') ), '%monthnum%', DATE_FORMAT(wpp.post_date, '%m') ), '%day%', DATE_FORMAT(wpp.post_date, '%d') ), '%postname%', wpp.post_name ) AS permalink
FROM wp_posts wpp
JOIN wp_options wpo
ON wpo.option_name = 'permalink_structure'
WHERE wpp.post_type = 'post'
AND wpp.post_status = 'publish'
ORDER BY wpp.post_date DESC;
Das Ergebnis der Abfrage sieht dann so aus:
Folgende Kolumnen sind im Ergebnis enthalten:
- post_title
- Titel des WordPress-Posts
- guid
- Original-Link zum WordPress-Beitrag mit ID (bei ausgeschaltenen Permalinks)
- post_date
- Datum des Beitrags
- permalink
- Die gewünschten Permalinks (tatsächliche URLs zu den Postings)
Quellenangabe:
Dieser Code stammt ursprünglich von der Seite : http://yllus.com/2015/12/08/how-to-get-wordpress-post-permalinks-directly-from-the-mysql-database/ Allerdings hat er erst nicht funktioniert – es mussten die Anführungsstriche von ´` auf “ geändert werden. Jetzt läuft es einwandfrei. Getestet wurde es in phpmyadmin auf einer Windows 10 XAMPP Installation.