Beiträge automatisch archivieren
-
Ein Bekannter stellte sich diese Aufgabe:
Alle Beiträge, z.B. älter als 1 Jahr sollen automatisch in eine unsichtbare, öffentlich unzugängliche Kategorie verschoben werden.Ich riet zu dem bekannten „PublishPress Future“. Okay, das geht, das kann genau das. Aber nur für neue Beiträge, bestehende müssten einzeln mit einer „Ablauf“-Regel behandelt werden. Eine Massen-Bearbeitung geht nicht, zumindest fand ich nichts zu.
Bei > 1000 Beiträgen zu viel Arbeit.So bleiben die Fragen, ob jemand noch ähnliche Plugins kennt oder einen anderen Trick (gerne auch Codeschnippsel) für dieses Vorhaben?
Mir ist bekannt, dass bei den wenigen aktiven Supportern hier vllt. keine Idee zu kommt und wie schwer es ist, die Vorstellungen eines Foristen zu erkennen. Dennoch: Evtl. gibt es dazu einen Denkanstoß?
D.i.V.
-
Zur Massenbearbeitung kannst du WP-CLI nutzen.
Ich hatte gerade erst auf eine sehr ähnliche Frage geantwortet:https://de.wordpress.org/support/topic/beitraege-loeschen/#post-141546
Es ist übrigens nicht so, dass wir hier empathie- und ideenlos wären. Weil wir wissen, wie hilflos sich Anwender fühlen können, bieten wir (teilweise seit einigen Jahren) kostenlos unsere Unterstützung an. Der Hinweis, dass wir hier mit wenigen aktiv Teilnehmenden keine „Schwarmintelligenz“ anbieten können, soll vor allem vor falschen Erwartungen schützen, dass hier „bei hunderten Teilnehmenden“ ganz rasch eine passende Lösung gefunden würde.
„Du brauchst ja nicht zu antworten“ ist ein oft genannter Einwand von denen, die sich spätestens nach zwei Tagen beschweren, weil niemand geantwortet hat. Nur mal so als Denkanstoß.Dass du dich in letzter Zeit selber aktiv eingebracht hast, finde ich super. Gerne mehr davon.
-
Diese Antwort wurde vor 2 Jahren, 2 Monaten von
Bego Mario Garde geändert.
Hallo,
eine weitere Möglichkeit besteht darin, dass du diese Kategorien entweder über den hook pre_get_posts ausschließt oder ein entsprechendes Plugin wie z. B. Ultimate Category Excluder verwendest.Wie das funktioniert, habe ich in dem folgenden Beitrag ausführlich beschrieben.
Viele Grüße
Hans-GerdWP-CLI
Diese Möglichkeit hat der nicht im Hostingpaket und ich nicht in Brain.exe. Das ist mir zu viel Stoff. Vllt. auch zu viel für so eine Aufgabe, die mir eigentlich zuerst recht simpel lösbar schien.
hook pre_get_posts
Das schaut in der Tat gut aus! Sicher eine Try&Error Bastelarbeit für einen Laien, aber spannend. Andererseits: Es geht hier ja nicht bloß um das Nicht-Anzeigen bestimmter Beiträge, sondern eher, auch um das automatische verschieben in eine andere Kategorie. Eine Kat namens Archiv, also nicht die WP-Archivansicht, sondern eben eine echte Kategorie.
Hier ist mir, bzw. dem eigentlichen Fragesteller wichtig, dass es automatisch passiert. Dies hängt nun weniger an der Zahl der Beiträge, sondern hat eher mit dessen Abo-System zu tun. Soweit ich das verstand, sollen Beiträge nach einer festgelegten Zeit von selber die Kategorie wechseln. Ein Auto-Switch von Kategorien wie etwa „Premium“ zu „Frei“ und später in ein „Archiv“
das ist auch okay, aber nur fürs verstecken und nicht automatisierbar.
Eine Kombination aus „PublishPress Future“ und „Ultimate Member“ könnte das durchaus auch so, dazu automatisch. Aber nur für neue Beiträge, weil ersteres Plugin eben an der Massenbearbeitung scheitert. (Zusätzlich hat es das Problem).
Die haurand Seite fand ich übrigens auch schon vorher. Kommt jedenfalls in die Lesezeichen, weil es das mit pre_get post gut zeigt. Danke!
Hallo,
Die haurand Seite fand ich übrigens auch schon vorher. Kommt jedenfalls in die Lesezeichen, weil es das mit pre_get post gut zeigt. Danke!
gerne 😊
Aber noch mal zu WP CLI und vielleicht ein wenig off topic: Das ist eine tolle Sache. Mit entsprechenden Bash-Scripten kann ich innerhalb wenigen Minuten eine komplette Website, die ich mit der kostenfreien Version von UpdraftPlus gesichert habe, auf einer lokalen Entwicklungsumgebung migrieren.
Es lohnt sich allemal, sich damit zu beschäftigen.
Und die von dir beschriebene Aufgabe (Verschiebung von Beiträgen in eine öffentlich unzugängliche Kategorie) wäre damit in der Tat recht einfach zu realisieren.Viele Grüße
Hans-GerdVerschiebung von Beiträgen in eine öffentlich unzugängliche Kategorie) wäre damit in der Tat recht einfach zu realisieren.
Tja, sicher. Aber ich hab nachgeschaut, keiner hat dieses SSH, weder meine Bekannten noch ich. Man müsste überall upgraden oder extra löhnen.
Wenn ich Begos WP CLI Kommando hier richtig deute, dann löscht das alle Posts von 2022? Wobei was format=ids ist?
Na, egal, es geht ja eh nicht. Und wenn: ich würde mit so Scripts auch das I-Net mit auslöschen.
Dann: Wie automatisieren?Hallo,
Wobei was format=ids ist?
Schau mal hier.
Dann: Wie automatisieren?
Eine automatisierte Option habe ich nicht gefunden. Aber evtl. findest du in dem folgenden (englischsprachigen) Beitrag einen Ansatz. Das dort angesprochene Plugin ist allerdings seit 2 Jahren nicht mehr aktualisiert worden. Evtl. kommt das Plugin Bulk Edit Categories and Tags – Create Thousands Quickly on the Editor in Betracht.
Das habe ich alles nicht getestet und ich kenne beide Plugins nicht. Das müsstest du dann selbst mal testen, wenn das in Frage kommt.
Über eine Rückmeldung freuen wir uns.Viele Grüße
Hans-GerdBei dem Konsolen-Befehl
wp post delete $(wp post list \ --post_type=post --format=ids --year=2022)
wird zuerst der Teil in der Klammer ausgeführt. Als Pseudocode ausgedrückt: Liste mit alle Beiträge auf, die den Inhaltstype Beitrag haben und im Jahr 2022 erstellt wurden. Gib die Liste in Form von Beitrags-IDs aus (dafür ist das
format=ids
).Diese Beitrags-IDs werden im nächsten Befehl verwendet: Lösche die Beiträge mit der ID … {Liste der Beitrags-IDs}.
Aber stimmt, das geht nur, wenn du per SSH auf den Server zugreifen kannst, was bei billigen Shared-Hosting-Verträgen meist ausgeschlossen ist.
Eine Alternative ist, mit Local-WP eine Staging-Umgebung einzurichten, eine vorhandene Website zu klonen, den WP-CLI-Befehl lokal auszuführen und die aktualisierte Datenbank wieder auf den produktiven Server zu übertragen. Zugegeben nichts für Laien, die schon beim Gedanken eines Datenbankim-/exports nervös werden.
Alles zu kompliziert? Dann können Beiträge mit den vorhandenen Mitteln gelöscht werden. Menü Beiträge, per Pulldown „Ansicht anpassen“ die Anzahl der angezeigten Beiträge pro Seite erhöhen, per Filter z.B. „Januar 2021“ auswählen, alle gefilterten Beiträge markieren und per Mehrfachaktion in den Papierkorb verschieben. Weniger komfortabel, aber auch weniger kompliziert. Ein paar Mausklicks, mehr nicht.
@hage, das mit dem format zeigt schon: Alles nicht für Laien.
Plugins > 1 yo nehme ich nie, die werden meist nie mehr aktualisiert. Und wenn man die mal laufen hat, vergisst man darauf und sind vllt. irgendwo ein Risiko.
Bulk Edit Categories and Tags hab ich getestet, vllt. kann die Pro das was wir da suchen. Die Free sagt mir da nichts zu.
Wie gesagt, Beiträge sollen automatisch von einer Kategorie zur anderen wechseln. (Was dieses „PublishPress Future“ eben kann, aber nicht für viele alte Beiträge.)
Eine Alternative … den WP-CLI-Befehl lokal auszuführen und die aktualisierte Datenbank wieder auf den produktiven Server zu übertragen.
@pixolinGinge auch, aber umständlich.
Und wenn, dann müsste es mit XAMPP machbar sein. Alle anderen lokalen Umgebungen sind nicht mein Fall.Zugegeben nichts für Laien, die schon beim Gedanken eines Datenbankim-/exports nervös werden.
Also mit SQL fühle ich mich wohl.
Da kann man ja schon allein aus der Beobachtung, wie phpmyadmin die Statements zusammenbaut, was lernen. Da hebe ich mir so manches Statement extra auf, bastele weitere daraus , usw.Ebenso sind die Befehle im WP Frontend, z.B, bei der Beitragsliste durchaus erweiterbar; mit ein bisschen Überlegung kann man die (hinter den Buttons/Auswahlen fixe codierten) Parameter einfach in der Adresszeile anpassen und hat dann noch mehr Ansichten, Auswahlmöglichkeiten.
Das ist kein Problem, aber WP CLI ist irgendwie … exotisch weit weg und die meist engl Anleitungen dazu zu viel.
Beiträge mit den vorhandenen Mitteln gelöscht
Klar. Und wie oberhalb gesagt, man kann sich auch spezielle Ansichten, Listeninhalte, … per „URL-Manipulation“ 😉 basteln, welche nicht mit den Buttons alleine gehen. Das ist nicht das Problem, sondern der will es eben automatisch haben …
Interessant: Will man mit WP Bordmitteln Beiträge, welche in mehreren Kategorien sind, auf eine einzige Kategorie reduzieren, geht das nur einzeln?
Beiträge, welcher z.B. in Kategorien Aktuell, Politik, Wirtschaft usw. sind, kann man zwar im Bulk mit weiteren Kategorien versehen, aber diese nicht in einem Rutsch entfernen.
Also scheitert das Vorhaben, viele alte Beiträge nur in eine einzige bestimmte Kategorie (z.b. Unsichtbar, Bezahlschranke, …) zu verschieben schon vorher. (Schon bevor man über einen Automatismus nachdenken kann)
Somit kommt man schon beim ersten Absatz meines Eingangsposts nicht weiter:
in eine unsichtbare, öffentlich unzugängliche Kategorie verschoben
Aber halt: Es geht doch mit einem winzigen Plugin namens „Bulk remove posts from category„! Das hängt sich in die gewohnte Liste der Beiträge ein und zeigt bei der üblichen Mehrfachauswahl von Beiträgen > Bearbeiten eine Checkbox „Remove from category„. Damit kann man blitzschnell und unkompliziert alle nicht mehr benötigten Kategorien aus allen gewählten Beiträgen entfernen!
Warum will der überhaupt Kategorien entfernen, statt die eine (Abo-Kategorie, unsichtbare Archiv-Kat, … oder so) hinzu und fertig?
Das reicht oft nicht. Denn je nach der Methode, wie man bestimmte Kategorien versteckt oder nur für bestimmte Nutzer zugänglich macht: Wenn ein Beitrag auch noch in normalen, öffentlich sichtbaren/zugänglichen Kategorien ist, dann wird er allen gezeigt. Dann hilft nur: Es darf nur diese eine spezielle Kategorie übrig bleiben.
Das geht mit dem Plugin super.Falls das zu OT ist, kann das gerne als neuer Forenbeitrag verschoben werden.
-
Diese Antwort wurde vor 2 Jahren, 2 Monaten von
- Das Thema „Beiträge automatisch archivieren“ ist für neue Antworten geschlossen.