web-dev-qa-db-fra.com

Comment supprimer correctement un site (blog) du réseau dans WordPress Multisite (WPMU)

J'ai un réseau avec environ 30 sites. Et je n'ai besoin d'en effacer qu'un seul.

Pourriez-vous me dire comment supprimer correctement un seul site du réseau WordPress Multisite (WPMU)?

Parce que quand je l'ai fait dans la zone d'administration, le site a été supprimé de l'administrateur, mais les plugins et certaines autres tables de ce site sont toujours dans la base de données et tous les fichiers du répertoire du site Web (blog.dir/id_of_the_site) sont également conservés.

Comment pourrais-je bien faire ça?

Devrais-je supprimer manuellement toutes les tables avec l'ID de site (dans le nom de la table) de la base de données, puis supprimer le répertoire du site Web contenant les fichiers du répertoire blog.dir? Ou devrais-je faire autre chose?

Peut-être connaissez-vous un autre moyen, plus de sécurité et correctement?

P.S.

De plus, j'aimerais savoir s'il est possible de restaurer ce site après ces manipulations (à partir de la sauvegarde) et quel est l'algorithme, car je sais qu'après la suppression de certaines données de la table wp_blogs, elles ont également été supprimées? Merci.

3
solosik
1
djb

Si le site est supprimé par l'administrateur du site , le site est uniquement marqué comme supprimé (il reçoit l'attribut "supprimé"). De plus, les utilisateurs sont supprimés du site (ceci pourrait être modifié dans les futures versions de WP). Toutes les tables et tous les fichiers de la base de données restent.

Si le super administrateur désactive le site , il est marqué comme supprimé (il reçoit l'attribut "supprimé") mais les utilisateurs ne sont pas supprimés. Toutes les tables et tous les fichiers restent.

Si le super administrateur supprime le site de l’écran Sites d’administration réseau avec le lien rouge Supprimer, toutes les tables de base de données WordPress par défaut sont supprimées; celles créées par les plug-ins restent, à moins que le plug-in ne les supprime sur le site. effacement. Les utilisateurs sont supprimés du site. Les fichiers multimédias du site sont également supprimés. Il existe cependant une situation dans laquelle les fichiers et les tables peuvent rester, si WordPress ne peut pas déterminer de manière fiable le dossier de téléchargement.

Si vous souhaitez supprimer manuellement un site , vous pouvez supprimer toutes les tables de base de données commençant par le préfixe du site principal, suivies de l'ID du site, puis soulignées. Donc, pour l'ID de site 33 et le préfixe principal "wp_", vous obtenez "wp_33_" (sans les guillemets). Rendez-vous également dans le dossier wp-content/blogs.dir ou wp-content/sites et supprimez-le avec le numéro d’identification du site. Et supprimez également de la table de base de données wp_blogs la ligne avec l'ID du site dans la colonne blog_id (pas site_id). Il existe également des données utilisateur dans la table wp_usermeta. Toutes les lignes où la valeur de la colonne meta_key commence par le même préfixe que celui dont nous avons parlé ("wp_33_" par exemple). Si vous voulez pouvoir restaurer ce site, je suppose que vous pouvez enregistrer une copie de toutes ces choses que vous avez supprimées et les placer au même endroit pour les restaurer.

Si vous voulez un plugin qui supprime correctement toutes les tables de base de données du site , j'ai ajouté cette fonctionnalité à mon plugin premium appelé Beyond Multisite. Il comporte de nombreuses fonctionnalités, mais l'une des cases à cocher dans les paramètres du module Améliorations est appelée "Supprimez les tables de base de données restantes lorsqu'un site est définitivement supprimé". Si cette case est cochée, lorsqu'un site est supprimé avec le lien rouge Supprimer dans l'écran Sites d'administration de réseau, toutes les tables commençant par le préfixe du site (par exemple, "wp_33_") seront supprimées (pas uniquement celles par défaut). En utilisant également le module Cleanup du plug-in, vous pouvez supprimer toutes les tables de base de données restantes des sites précédemment supprimés.

En ce qui concerne les plugins et les thèmes ils ne seront supprimés par aucune des méthodes de suppression de site. Ils sont globaux et n'existent pas site par site. Vous pouvez supprimer ceux que vous n'utilisez pas à partir de l'écran Network Admin Plugins ou Network Network Themes. En utilisant mon plugin, mentionné ci-dessus, vous pouvez vérifier si un plugin ou un thème est activé sur n’importe quel site (et lequel), ce qui est toujours utile lorsque vous souhaitez les supprimer. Cliquez simplement sur "Activé dans?" lien d'action sous un plugin ou un thème.

0
Nikolay