10 façons de casser son site WordPress ... et de le réparer !
1. 10 façons de casser son site
WordPress,
Et de le réparer !
~ par Julio Potier ~
WordCamp Paris
2013 @ Maison des Associations
"Aucun site n'a été maltraité durant cette présentation."
2. Julio Potier
- Consultant en Sécurité Web
- 33 ans, marié, 2 enfants
- Je mange du Nutella.
Je publie des articles chez :
● http://www.geekpress.fr
● http://www.screenfeed.fr
● http://www.wpchannel.fr
● http://www.tutorialstag.com
● ...
3. Sommaire
1. Les mises à jour maléfiques.
2. Plugin or not plugin.
3. Abracadawarningcannotmodifyheaderinformation
4. Vous habitez chez vos parents ?
5. Touche pas à ça, p'tit con.
6. Des baskets ? Tu rentres pas !
7. Les widgets de Jack Griffin
8. Entrée, plat, dessert.
9. A tables !
10. Tipiak !
11. Bonux
4. 0. Avant toute chose ...
1. Passez en mode DEBUG en ajoutant define
('WP_DEBUG', true); dans le fichier "wp-
config.php" afin d'afficher les erreurs,
2. Parlez de votre problème sur les forums,
dites comment vous avez résolu votre
problème, partagez ces infos !
3. Votre problème, quelqu'un l'a eu avant vous,
vous trouverez une solution ...
4. Posez près de vous un thermos de café, ça
peut être très long parfois ...
5. Merci à l'association WordPress-France !
5. 1. La mise à jour maléfique.
Problèmes :
a. J'ai mise à jour le Core de WordPress
b. J'ai mis à jour un thème
c. J'ai mis à jour un plugin
6.
7. “Maintenance Mode - secupress.fr is currently
undergoing scheduled maintenance. Please
try back in 60 minutes.”
8. “Fatal error: Call to undefined function wtf()
in wp-includes/formatting.php on line 2112”
9. “The following themes are installed but
incomplete. Themes must have a stylesheet
and a template.”
10. 1. La mise à jour maléfique.
Problèmes :
a. J'ai mise à jour le Core de WordPress
b. J'ai mis à jour un thème
c. J'ai mis à jour un plugin
Solutions (dans l'ordre) :
1. Supprimez le fichier ".maintenance",
2. Supprimez/réinstallez le thème ou plugin incriminé,
3. Supprimez le dossier "wp-content/upgrade",
4. Videz le cache navigateur,
5. Utilisez sFTP au lieu de la MAJ automatique.
11. 2. Plugin or not plugin
Problème :
a. J'ai mis à jour un plugin mais il entre en conflit avec
un plugin déjà en place.
b. J'ai fait la même chose avec l'ajout d'une astuce.
12. “Fatal error: Cannot redeclare test()
(previously declared in old_plugin/index.php)
in new_plugin/index.php(35) : on line 666”
13. 2. Plugin or not plugin
Problème :
a. J'ai mis à jour un plugin mais il entre en conflit avec
un plugin déjà en place.
b. J'ai fait la même chose avec l'ajout d'une astuce.
Solutions :
a. Désactiver le plugin/astuce et visiter le support.
b. Bien lire le message et renommer la fonction citée
partout dans le plugin/astuce en attendant un patch.
c. Ne pas ajouter "function_exists()" car le
plugin/astuce ne serait plus fonctionnel.
15. “Warning: Cannot modify header information
- headers already sent by (output started at
/public_html/wp-config.php:1) in
/public_html/wp-login.php on line 1”
16. 3. Abracadawarningcannotmodifyheaderinformation
Problèmes :
a. Une espace est présente en début ou fin d'un fichier
de type .php
b. Un de mes plugins joue avec les "headers" trop tôt.
Solutions :
a. Vérifiez dans le fichier que vous venez de mettre à
jour avant le <?php et après le ?>.
b. Visitez le support du plugin pour voir si vous êtes le
seul, postez le problème puis désactivez le plugin.
17. 4. Vous habitez chez vos parents ?
Problème :
a. J'ai modifié les adresses (URLs) de mon site dans les
réglages généraux, je ne peux plus me connecter à
l'administration.
18.
19. 4. Vous habitez chez vos parents ?
Problème :
a. J'ai modifié les adresses (URLs) de mon site dans les
réglages généraux, je ne peux plus me connecter à
l'administration.
Solutions :
a. Via PHPMyAdmin, modifiez les champs "home" et "siteurl" de la table
"wp_options",
b. Via wp-config.php ajoutez "define('RELOCATE', true);",
chargez /wp-login.php, supprimez le define.
c. Via "functions.php", ajoutez 2 lignes : update_option
('siteurl','http://example.com/blog'); &
update_option('home','http://example.com);
Puis visitez le site et enfin supprimez ces lignes.
20. 5. Touche pas à ça, p'tit con.
Problème :
a. "J'ai des menus en moins, des catégories en plus, des
articles coupés, des images en 404, mon thème est
revenu sur TwentyTwelve, je ne peux plus me
connecter correctement." - Pete Thompson
21. 5. Touche pas à ça, p'tit con.
Problème :
a. "J'ai des menus en moins, des catégories en plus, des
articles coupés, des images en 404, mon thème est
revenu sur TwentyTwelve, je ne peux plus me
connecter correctement." - Pete Thompson
Solution :
a. La base de données a été corrompue et doit être
réparée, pour cela ajoutez dans le fichier "wp-config.
php": define('WP_ALLOW_REPAIR', 'julio'); puis
visitez la page de réparation dédiée : http://example.
com/wp-admin/maint/repair.php
22.
23.
24. 6. Des baskets ? Tu rentres pas !
Problème :
a. J'ai perdu mon mot de passe administrateur et je
n'avais pas utilisé ma véritable adresse email,
comment accéder tout de même au tableau de bord ?
25. 6. Des baskets ? Tu rentres pas !
Problème :
a. J'ai perdu mon mot de passe administrateur et je
n'avais pas utilisé ma véritable adresse email,
comment accéder tout de même au tableau de bord ?
Solutions :
a. Passez via PHPMyAdmin, modifiez votre mot de
passe en utilisant la fonction de hash MD5().
b. ...
c. ...
27. 6. Des baskets ? Tu rentres pas !
Problème :
a. J'ai perdu mon mot de passe administrateur et je
n'avais pas utilisé ma vraie adresse email, comment
accéder tout de même au tableau de bord ?
Solutions :
a. Passez via PHPMyAdmin, modifiez votre mot de
passe en utilisant la fonction de hash MD5().
b. Passez via FTP et ajoutez dans functions.php :
wp_set_password('Nouveau_PASS(666)', 1);
c. via FTP encore utilisez "WP Backdoor user".
29. 7. Les widgets de Jack Griffin
Problèmes :
a. J'ai ajouté des widgets depuis l'administration et
tous les autres ont disparu !
b. J'ai ajouté ma bio dans un widget et le site est
défiguré, surtout le footer...
33. 7. Les widgets de Jack Griffin
Problèmes :
a. J'ai ajouté des widgets depuis l'administration et
tous les autres ont disparu !
b. J'ai ajouté ma bio dans un widget et le site est
défiguré, surtout le footer...
Solutions :
a. Ajouter manuellement les widgets que vous aviez
avant l'ajout, puis ajoutez maintenant les nouveaux.
b. Vérifiez bien les couples de balises afin d'éviter de
décaler les éléments HTML et ainsi défigurer la mise
en page d'origine.
34. 8. Entrée, plat, dessert.
Problèmes :
a. J'ai changé de thème et mon menu n'est plus le
même pourtant j'ai vérifié il existe toujours.
b. J'ai encore mes menus mais il m'en manque !
37. 8. Entrée, plat, dessert.
Problèmes :
a. J'ai changé de thème et mon menu n'est plus le
même pourtant j'ai vérifié il existe toujours.
b. J'ai encore mes menus mais il m'en manque !
Solutions :
a. Il faut de nouveau entre chaque thème redéfinir quel
menu est attribué à quel emplacement de ce thème.
b. Il est fort probable que ce nouveau thème ne possède
pas autant d'emplacements de menus que l'ancien, il
faut alors les ajouter dans le code PHP et HTML.
38. 9. A tables !
Problème :
a. J'ai renommé mes tables pour en modifier le préfixe
et ainsi changer "wp_" en "double_vai_pei_" mais
depuis impossible de me connecter !
39.
40. 9. A tables !
Problème :
a. J'ai renommé mes tables pour en modifier le préfixe
et hanger "wp_" en "double_vai_pei_underscore_"
mais depuis impossible de me connecter !
Solution :
a. Revenez en arrière en remettant le préfixe "wp_"
puis utilisez le plugin "WP Security Scan" qui
renomme les tables ET certains champs dans
"wp_options" et "wp_usermeta".
41. 10. Tipiak !
Problèmes :
a. Mon site affiche des liens/pub non désirés en footer.
b. Mon site redirige vers un site en .ru
c. Sur Google, mes mots clés sont ... dérangeants ...
d. Mon site est noté par Google "malveillant".
e. Ma page d'accueil a été "défacée".
42.
43. 10. Tipiak !
Problèmes :
a. Mon site affiche des liens/pub non désirés en footer.
b. Mon site redirige vers un site en .ru
c. Sur Google, mes mots clés sont ... dérangeants ...
d. Mon site est noté par Google "malveillant".
e. Ma page d'accueil a été "défacée".
Solutions :
a. Vous êtes victime d'un piratage, des hackers ont la
main sur votre site dans un but Black SEO (par ex.).
Il va falloir trouver où sont les points d'entrées, les
corriger ou les supprimer, verrouiller le tout et
sécuriser le reste. C'est un travail de longue haleine.
b. Auto-promo : appelez-moi c'est mon métier !
44. 11. Bonux !
En vrac, quelques "trucs" à faire :
● Faites des sauvegardes !
● Relisez votre fichier wp-config.php
● Relisez votre fichier .htaccess
● Revalidez vos permaliens
● Désactivez les plugins avec "WP No Plugins"
● Repassez sur le thème TwentyTwelve
● Augmentez la mémoire allouée
● Réinstallez WordPress
● D'autres idées ?
45. Ressources utilisées
- Le Codex WordPress !
- Le plugin "Rich Contact Widget"
par Rémy Perona
- GeekPress.fr pour les astuces qui
ne foirent pas votre installation !
- "WP Backdoor User" pour
regagner l'accès admin facilement
- "WP No Plugins" pour désactiver
les plugins rapidement
- WPChannel.com pour les tutos
vidéos et ses astuces (dont celles du
changement de pass ici)
- Le plugin "WP Security Scan"
pour modifier le préfixe de vos base
dans dommages ...
- SecuPress.fr qui ouvre en 2013 !