Modifier vos préfixe WP
Avant tout
- Sauvegardes complètes: fichiers + base (dump SQL).
- Fenêtre de maintenance: activez un plugin “maintenance” ou mettez un
maintenance.php. - Accès DB: phpMyAdmin, Adminer ou ligne de commande MySQL. Version MySQL/MariaDB ≥ 5.7 recommandée.
Cas A — Nouveau site (le plus simple)
Dans wp-config.php, modifiez:
$table_prefix = 'mz9x_';
Ensuite installez WordPress: toutes les tables seront créées avec ce préfixe.
Cas B — Site déjà installé (procédure pas-à-pas)
- Choisir un préfixe “alphanum + underscore”, 4–6 caractères aléatoires, par ex.
mz9x_. - Éditer
wp-config.php:
$table_prefix = 'mz9x_';
Ne sauvegardez qu’après avoir renommé les tables (ou faites-le juste avant de remettre le site en ligne).
- Renommer les tables existantes
- Tables “noyau” à renommer (mono-site) :
- wp_commentmeta, wp_comments, wp_links, wp_options, wp_postmeta, wp_posts, wp_termmeta, wp_terms, wp_term_relationships, wp_term_taxonomy, wp_usermeta, wp_users
Exemple SQL (à lancer dans votre base) en remplaçant mz9x_ par votre préfixe:
RENAME TABLE
wp_commentmeta TO mz9x_commentmeta,
wp_comments TO mz9x_comments,
wp_links TO mz9x_links,
wp_options TO mz9x_options,
wp_postmeta TO mz9x_postmeta,
wp_posts TO mz9x_posts,
wp_termmeta TO mz9x_termmeta,
wp_terms TO mz9x_terms,
wp_term_relationships TO mz9x_term_relationships,
wp_term_taxonomy TO mz9x_term_taxonomy,
wp_usermeta TO mz9x_usermeta,
wp_users TO mz9x_users;
- Tables de plugins: listez-les et renommez-les si elles commencent par
wp_. Pour lister:SHOW TABLES LIKE 'wp\_%';Pour générer les RENAME automatiquement (optionnel, MySQL):SELECT CONCAT('RENAME TABLE `', table_name, '` TO `', REPLACE(table_name,'wp_', 'mz9x_'), '`;') FROM information_schema.tables WHERE table_schema = DATABASE() AND table_name LIKE 'wp\_%';Copiez-collez le résultat et exécutez.
- Corriger les clés de rôle et meta utilisateurs
- Dans
wp_options, la ligneoption_name = 'wp_user_roles'doit devenirmz9x_user_roles:UPDATE mz9x_options SET option_name = 'mz9x_user_roles' WHERE option_name = 'wp_user_roles'; - Dans
wp_usermeta, certainsmeta_keycommencent parwp_(ex.wp_capabilities,wp_user_level, parfoiswp_user-settings,wp_user-settings-time). Remplacez le préfixe:UPDATE mz9x_usermeta SET meta_key = REPLACE(meta_key, 'wp_', 'mz9x_') WHERE meta_key IN ('wp_capabilities','wp_user_level','wp_user-settings','wp_user-settings-time') OR meta_key LIKE 'wp_%';Remarque: si des plugins stockent des meta_keys commençant parwp_, cette requête les adaptera aussi proprement.
- Vérifier d’autres occurrences textuelles
- Rare mais possible: certains plugins stockent en base des chaînes contenant des noms de tables. Faites une recherche ciblée et remplacez si nécessaire:
- Dans options (attention aux séries sérialisées):
SELECT option_id, option_name FROM mz9x_options WHERE option_value LIKE '%wp_%'; - Dans metas:
SELECT umeta_id, user_id, meta_key FROM mz9x_usermeta WHERE meta_value LIKE '%wp_%';
wp search-replace 'wp_' 'mz9x_' --all-tables --precise --report-changed-onlyAttention: ne remplacez pas aveuglément ‘wp_’ partout; ciblez les occurrences qui désignent des noms de tables ou des méta-clés. - Dans options (attention aux séries sérialisées):
- Mettre à jour
wp-config.phpet vider caches
- Confirmez:
$table_prefix = 'mz9x_'; - Purgez caches (plugin cache, objet cache/Redis, et CDN si présent).
- Désactivez le mode maintenance.
- Tests rapides
- Connexion/déconnexion au back-office
- Création d’un article, upload média
- Vérifier rôles et permissions (un compte éditeur peut-il toujours éditer ?)
- Recherche sur le site, pages de catégories/étiquettes
- Plugins clés (e-commerce, formulaires, SEO)
Multisite (réseau)
Le réseau crée plusieurs ensembles de tables: wp_, wp_2_, wp_3_, etc. Procédure plus délicate:
- Renommez le set principal comme ci-dessus.
- Pour chaque site du réseau, renommez les tables
wp_N_*versmz9x_N_*. - Mettez à jour
wp_sitemetaetwp_N_optionspour la cléwp_user_rolesde chaque site. - Testez les mappages de domaines et les rôles par site. Si vous n’êtes pas à l’aise, faites-le via un plugin spécialisé ou un script WP-CLI et prévoyez un rollback.
Outils/Plugins qui peuvent aider
iThemes Security (ex “Change Database Table Prefix” dans les outils avancés).
- “Brozzme DB Prefix” ou “Change Table Prefix” dédiés. Toujours exécuter sur un staging d’abord, puis en prod, avec sauvegardes.
