web-dev-qa-db-fra.com

WordPress L'éditeur ne met pas à jour les fichiers: impossible de communiquer avec le site pour vérifier les erreurs fatales

Bonjour collègues développeurs et résolveurs de problèmes. J'ai rencontré un problème avec la mise à jour du fichier header.php dans un site Web WordPress.

Tout d'abord, j'ai essayé de mettre à jour le fichier manuellement via C-Panel -> Gestionnaire de fichiers. Le code semble rester dans le fichier, mais lorsque vous affichez la source de la page en mode navigation privée et différents navigateurs Web, le code ne s'affiche pas.

Ce n'est pas un problème de serveur, j'ai déjà contacté l'équipe d'assistance du serveur et aucun journal d'erreurs n'est signalé par MySQL.

Il ne semble pas y avoir beaucoup de solutions à cela d'après ce que je peux trouver en faisant des recherches sur Google.

Erreur complète

Impossible de communiquer avec le site pour vérifier les erreurs fatales, donc la modification PHP a été annulée. Vous devrez télécharger votre PHP changement de fichier par d'autres moyens) , par exemple en utilisant SFTP.

Toute aide serait grandement appréciée.

3
nickdevyyc

Maintenant, cela n'a techniquement pas résolu le problème. Mais je viens d'ajouter un WordPress appelé Insérer en-têtes et pieds de page et j'ai ajouté le script d'en-tête et cela a fonctionné avec succès.

2
nickdevyyc

Ce qui a fonctionné pour moi, c'est de désactiver tous les plugins, puis de les réactiver. Cela était dû à une mise à jour wordpress. Tout fonctionne comme prévu maintenant, mais c'était assez frustrant ..

PS: utilisez l'action de désactivation en bloc.

3
Borislav Stoilov

Je suis un peu en retard à la fête et Mtxz a raison sur leur réponse. Cependant, leur solution ne "résout" pas le problème. J'ai trouvé ce forum qui dit que vous pouvez le résoudre en supprimant les lignes 492 à 599 dans le fichier wp-admin/includes/file.php.

La première ligne est if ( $is_active && 'php' === $extension ) { et la troisième dernière ligne est return new WP_Error( 'php_error', $message, $result );, suivie de deux lignes de crochets.

Cela a résolu le problème sur plusieurs de mes serveurs.

Remarque: cette solution supprime également PHP débogage, donc si vous avez une erreur de syntaxe et que vous le faites, votre site peut se bloquer et vous ne pouvez pas modifier les fichiers sauf si vous passez par SFTP/FTP. Comme toujours, il est préférable d'avoir une sauvegarde avant de modifier les fichiers.

1
Kenton de Jong

Cette erreur provient d'une fonctionnalité Wordpress incluse dans Wordpress 4.9. Elle vérifie essentiellement les erreurs PHP lors du téléchargement de fichiers dans le WP éditeur de fichiers pour éviter d'enregistrer du code qui pourrait/cassera votre site.

Il s'agit principalement d'un plugin (ou d'une configuration de serveur) qui empêche la vérification de bouclage Wordpress pour vérifier correctement les erreurs potentielles causées par votre mise à jour. Comme Wordpress n'est pas en mesure de pour vérifier si votre nouveau code produira des erreurs ou non, il empêche la mise à jour du code.

Vérifiez ces liens:

Vous pouvez essayer de désactiver vos plugins pour voir si la fonctionnalité revient, ou mettre à jour vos fichiers en utilisant FTP/SFTP (sans l'éditeur de fichiers Wordpress).

1
Mtxz

J'ai eu un problème similaire, ma version wordpress est 5.2.2.

Plugin "Database Browser", qui n'est pas testé avec ma version de WordPress a créé le problème. Il a été corrigé en désactivant ce plugin.

Vérifiez donc les plugins qui sont "non testé avec votre version de WordPress" (cela peut être vu lors de l'installation d'un plugin depuis le tableau de bord-> plugins-> Ajouter un nouveau), désactivez-les (si inutile) et essayez d'utiliser "éditeur de thème" pour la mise à jour du fichier.

0
Vishnu V