Vor kurzem habe ich einen Client von Blogger zu Wordpress verschoben.
Beim Importieren der Beiträge aus dem Blogger wurden die "Labels" des Bloggers als "Tags" in Wordpress gespeichert. Da ich diese stattdessen als Kategorien haben möchte, habe ich ein Plugin verwendet, um alle Tags in Kategorien zu konvertieren.
Dies funktionierte gut und gut, aber es wurde in allen meinen Posts nicht kategorisiert. Jetzt habe ich ungefähr 900 Beiträge, an die alle die richtigen Kategorien angehängt sind, sowie "Nicht kategorisiert".
Mein Ziel ist es also, "Uncategorized" aus allen 900 Posts zu entfernen, aber ich habe Mühe, eine schnelle Methode dafür zu finden.
Weiß jemand, wie ich dies in einer Massenmethode erreichen kann?
categories
Corey
quelle
quelle
Uncategorized
Kategorie löschen .Uncategorized
Kategorie löschen, es ist die Standard-Post-Kategorie, die Posts zugewiesen wird, wenn keine zugewiesen ist, aber wir können diese Standard-Kategorie, indem wir zuSettings-->Writing
Antworten:
Mit wp-cli installiert Sie können wie folgt ein Bash - Skript ausführen , um die Kategorie ‚Allgemein‘ aus allen Beiträgen mit mehr als einer Kategorie entfernen
Speichern Sie dies als etwas wie
delete_uncategorized.bash
und führen Sie es dannbash delete_uncategorized.bash
über die Befehlszeile aus.quelle
Hier ist ein Plugin, das bei Aktivierung alle Beiträge in der nicht kategorisierten Kategorie durchläuft. Wenn es sich in einer anderen Kategorie befindet, wird es nicht kategorisiert entfernt. Wenn ein Beitrag gespeichert wird, wird die gleiche Prüfung durchgeführt.
quelle
Ein bisschen spät zu den Party-Jungs, aber ich musste das einfach selbst machen. Eine Problemumgehung wäre über SQL-Abfragen in phpmyadmin, etwa:
(Ersetzen Sie das Präfix wp_ durch Ihr Präfix.) Normalerweise hat "nicht kategorisiert" eine term_taxonomy_id = 1. Die obige Abfrage gruppiert alle Beitrags-IDs, bei denen mehr als eine Kategorie vorhanden ist. Daher wird "nicht kategorisiert" natürlich zuerst in der Gruppierung angezeigt. Wählen Sie also alle Zeilen mit einer term_taxonomy_id = 1 aus und löschen Sie sie. Und das war's auch schon!
Alles was Sie jetzt tun müssen, ist , bearbeiten die Zählung Bereich „nicht zugeordnet“ ( term_taxonomy_id = 1) in der wp_term_taxonomy Tabelle. Die Anzahl der Artikel gibt an, wie viele Artikel in dieser Kategorie aufgeführt sind, das jeweilige Feld wird jedoch nicht automatisch aktualisiert.
Wenn Sie zu Ihrem wp-Admin-Bereich im Abschnitt "Kategorien" gehen, wird die alte (falsche) Zählnummer weiterhin angezeigt. Wenn Sie jedoch diese Nummer drücken und zur Liste der nicht kategorisierten Beiträge gehen, zählt WordPress normalerweise die damit verbundenen Beiträge auf Kategorie. Oben rechts wird eine korrekte Zählung angezeigt. Gehen Sie also in Ihre Datenbank und bearbeiten Sie das Zählfeld entsprechend :)
Bearbeiten: Tatsächlich wird die Zählung schließlich aktualisiert, nur nicht sofort. Daher können Sie die manuelle Zählaktualisierung überspringen.
quelle
Basierend auf der Antwort von @ TechSmurfy habe ich Folgendes gefunden:
quelle
Der einfachste Weg, ohne mit der Datenbank herumzuspielen, besteht darin, eine neue Kategorie zu erstellen, diese als Standard festzulegen, dann in die Liste der Beiträge zu wechseln und nach der Kategorie "nicht kategorisiert" zu sortieren. Bearbeiten Sie diese Beiträge und entfernen Sie das Kategorie-Tag "Nicht kategorisiert".
Sobald dies abgeschlossen ist, können Sie die Kategorie löschen. Eine Kategorie kann nicht gelöscht werden, wenn ein Beitrag diese Kategorie verwendet.
quelle
Nachdem ich herumgespielt und alle Ansätze von oben ausprobiert hatte, stellte ich fest, dass diese SQL-Abfrage der schnellste Weg ist, um Beiträge aus Uncategorized zu entfernen, die mehr als eine Katze haben.
Die Verwendung von WP-CLI wäre die beste Option, wenn es nicht so langsam wie die Hölle wäre.
In meinem Fall musste ich mehr als 50 000 Laufzeitbeziehungen löschen, daher ist es einfach gescheitert.
quelle