Wenn du per SSH auf den Webserver zugreifen kannst, wäre das Kommandozeilen-Tool WP-CLI dafür bestens geeignet. Mit einem Bash-Script wie
#!/bin/bash
posts = wp post list --field=ID --post_type=post --post_status=publish
for i in "${posts[@]}"
do
wp post update $i --post_content=''
done
solltest du dann allen veröffentlichten Beiträgen einen leeren Inhalt zuweisen können.
Vorher unbedingt ein Backup der Datenbank anlegen!
Solltest du (z.B. wegen billigem Shared Hosting) keinen Zugriff per SSH haben, kannst du die Website in eine lokale Arbeitsumgebung (z.B. DevKinsta) klonen und die „Operation am offenen Herzen“ dort durchführen. Anschließend brauchst du nur die Datenbank zu exportieren/importieren.
Danke für die schnelle Antwort.
SSH Zugang habe ich leider nicht 🙂
lg
@pixolin +1 für WPCLI! IMMER!
@masterriemi1702 das was du brauchst, geht eigentlich eh recht einfach.
Und kann jeder Entwickler innert kürzester Zeit als Code-Snippet bereitstellen.
Aber ich denke (@pixolin ?), dass geht über den Umfang dieses Supportforums hinaus.
Custom PHP Code für Firmen, die hier nach gratis Support fragen, ist nicht der Sinn dieses Forums, denk ich.
Und nimmt Entwicklern auch Arbeit weg…
Deshalb der Vorschlag, die Website in einem lokale Arbeitsumgebung zu klonen. 🙂
@souri Wir stellen schon mal PHP-Code-Snippets zur Verfügung, wenn auch die Erfahrungen damit eher gemischt sind. Oft kommen, nachdem du den Code zur Verfügung gestellt hast, noch diverse Zusatzwünsche („… aber nur Beiträge, die bei Vollmond erstellt wurden und zur Kategorie Europäische Nervkatze gehören …“). Grundsätzlich sehe ich das aber wie du: „Custom PHP Code“ ist hier nicht wirklich unsere Aufgabe. 🙂
Wenn es übrigens darum geht, alle/bestimmte Beiträge komplett zu löschen, sieht das Plugin Bulk Delete mit seinen diversen Auswahlkriterien sehr vielversprechend aus. Nur sind dann eben die Beiträge komplett weg, nicht nur der Inhalt.
Anonymous User 14429768
(@anonymized-14429768)
@masterriemi1702 860 Beiträge kannst ja mit Bordmittel löschen.
Bei einer Beiträge-Liste von 300 löscht man idF. 3x alle angezeigten, fertig. Dann den Papierkorb leeren …
SQL wäre aber eh interessant. Weil z.B. per phpmyadmin nur die Tabelle posts
leeren ist einfach – doch das ist ja nicht alles.
Weil nämlich noch die Post-Meta-Tabelle da ist, wo nach Post-IDs gesucht werden muss. Zudem können in den Options bzw Transients noch Post-IDs versteckt sein. Usw usf. (Um den Gedanken weiterzuführen, den @pezi angefangen hat)