J'ai récemment déplacé un client de Blogger vers Wordpress.
Lorsque les articles importés de blogger, il a enregistré les "étiquettes" du blogueur en tant que "tags" dans Wordpress. Étant donné que j'aimerais les avoir en tant que catégories, j'ai utilisé un plugin pour convertir toutes les balises en catégories.
Cela a bien fonctionné et dandy, mais il a laissé Non classé sur tous mes messages. Alors maintenant, j'ai environ 900 messages qui ont tous leurs bonnes catégories attachées, ainsi que "Non classé".
Mon objectif est donc de supprimer "Uncategorized" de tous les 900 messages, mais j'ai du mal à trouver une méthode rapide pour le faire.
Est-ce que quelqu'un sait comment je pourrais accomplir cela dans une méthode en masse?
categories
Corey
la source
la source
Uncategorized
catégorie.Uncategorized
catégorie, c'est la catégorie de message par défaut affectée aux messages quand il n'y en a pas, mais nous pouvons le faire par défaut en allant àSettings-->Writing
Réponses:
Avec wp-cli installé, vous pouvez exécuter un script bash comme celui-ci pour supprimer la catégorie «non catégorisée» de tous les messages avec plus d'une catégorie
Enregistrez-le comme quelque chose comme
delete_uncategorized.bash
, puis exécutez-le àbash delete_uncategorized.bash
partir de la ligne de commande.la source
Voici un plugin qui lors de l'activation, parcourt tous les messages qui sont dans la catégorie non classée. Si c'est dans une autre catégorie, il supprime non classé. De plus, lorsqu'un message est enregistré, il effectue la même vérification.
la source
Un peu tard pour les gars de la fête, mais j'avais juste besoin de le faire moi-même. Une solution de contournement serait via les requêtes SQL dans phpmyadmin, quelque chose comme:
(remplacez le préfixe wp_ par votre préfixe) Habituellement, "non catégorisé" a un term_taxonomy_id = 1. La requête ci-dessus regrouperait tous les identifiants de publication où il y a plus d'une catégorie, donc naturellement "non catégorisé" est affiché en premier dans le regroupement. Sélectionnez donc toutes ces lignes qui ont un term_taxonomy_id = 1 et supprimez-les. Et c'est tout!
Il ne vous reste plus qu'à modifier le champ de comptage "non catégorisé" ( term_taxonomy_id = 1) dans la table wp_term_taxonomy . Le nombre est le nombre d'articles répertoriés dans cette catégorie, mais le champ spécifique n'est pas mis à jour automatiquement.
Si vous allez dans votre panneau d'administration wp, section des catégories, l'ancien (mauvais) numéro de compte est toujours affiché, mais si vous appuyez sur ce numéro et accédez à la liste des publications de `` non catégorisé '', wordpress raconte généralement les publications qui lui sont associées. Catégorie. Un décompte correct sera affiché en haut à droite, alors allez dans votre base de données et modifiez le champ de décompte en conséquence :)
Edit: En fait, le décompte est finalement mis à jour, mais pas tout de suite, vous pouvez donc ignorer la mise à jour manuelle du décompte.
la source
Sur la base de la réponse de @ TechSmurfy, j'ai trouvé ceci:
la source
Eh bien, le moyen le plus simple sans jouer avec la base de données est de créer une nouvelle catégorie, d'en faire la valeur par défaut, puis d'aller dans la liste des messages et de trier par la catégorie `` non catégorisée ''. Modifiez ces messages et supprimez la balise de catégorie «non classé».
Une fois cette opération terminée, vous pouvez supprimer la catégorie. Une catégorie ne peut pas être supprimée si un article utilise cette catégorie.
la source
Après avoir gâché et essayé toutes les approches ci-dessus, j'ai trouvé que cette requête SQL est le moyen le plus rapide de supprimer les publications de Uncategorized qui ont plus d'un chat.
L'utilisation de WP-CLI serait la meilleure option, si elle n'était pas si lente.
Dans mon cas, j'ai dû supprimer plus de 50 000 relations de durée, donc c'est simplement ÉCHEC.
la source