Après une mise à jour MemberPress, un site web peut planter en raison d'une erreur PHP fatale si le serveur OPcache fournit des fichiers obsolètes. Le message d'erreur indique qu'un trait ou une classe au sein du MemberPress\Rez-de-chaussée L'espace de noms n'a pas été trouvé.
Cette erreur provient du cache du serveur, et non de MemberPress lui-même. Elle n'indique pas que des données ont été perdues ou endommagées. Tous les abonnements, les membres et les paramètres sont conservés en toute sécurité dans la base de données.
Ce document explique les causes de l'erreur et comment y remédier. Les solutions proposées vont du simple rafraîchissement de la page à une brève demande adressée à l'hébergeur.
Comprendre l'erreur
Après une mise à jour MemberPress, le site web peut afficher le “ Une erreur critique s'est produite sur ce site web. ” message. L'erreur fatale associée apparaît dans le Journal de débogage WordPress:
Erreur fatale PHP : le trait " MemberPress\GroundLevel\Container\Concerns\InjectsDependencies " est introuvable dans /home/username/public_html/wp-content/plugins/memberpress/app/lib/MeprAddonUpdates.php à la ligne 19
WordPress envoie également un e-mail concernant cette erreur critique à l'adresse e-mail de l'administrateur du site. Dans cet e-mail, l'erreur apparaît comme suit :
Une erreur de type E_ERROR s'est produite à la ligne 15 du fichier /home/username/public_html/wp-content/plugins/memberpress/app/controllers/MeprFeatureAddonCtrl.php. Message d'erreur : Trait " MemberPress\GroundLevel\Container\Concerns\InjectsDependencies " introuvable
Le nom exact du fichier, le numéro de ligne et le nom du trait ou de la classe peuvent varier d'un site web à l'autre. Toutes les variantes de cette erreur ont la même cause et la même solution.
Quelles sont les causes de cette erreur ?
La plupart des serveurs utilisent OPcache, une fonctionnalité de PHP qui conserve des copies du code du site web en mémoire. Cela permet aux pages de se charger plus rapidement, car le serveur n'a pas besoin de relire chaque fichier à chaque visite.
Lors d'une mise à jour, MemberPress remplace ses fichiers sur le serveur. WordPress demande alors au serveur d'actualiser les copies stockées. Cependant, certaines configurations de serveur bloquent ou ignorent cette actualisation.
Dans ce cas, le serveur continue d'utiliser une liste obsolète des fichiers du plugin. Les nouveaux fichiers issus de la mise à jour ne figurent pas dans cette liste. Par conséquent, PHP ne parvient pas à les trouver, ce qui provoque l'apparition d'une erreur fatale.
Ce même comportement du serveur peut affecter toute mise à jour d'un plugin ou d'un thème WordPress. La solution consiste à forcer le serveur à charger les nouveaux fichiers.
Solution n° 1 : Actualiser la page Web
Dans de nombreux cas, cette erreur est temporaire. Le serveur actualise automatiquement son cache quelques minutes après la mise à jour.
Patientez quelques minutes, puis actualisez la page. Si l'erreur persiste, passez à la solution suivante.
Solution 2 : Réinstaller la mise à jour MemberPress
La réinstallation du plugin entraîne la réécriture de tous les fichiers MemberPress sur le serveur. Dans la plupart des cas, cela permet au serveur de supprimer les copies obsolètes. Utilisez la même édition et la même version de MemberPress pour remplacer celle actuellement installée. Suivez les étapes suivantes :
- Télécharger le dernier fichier .zip MemberPress de la Téléchargements onglet de votre Compte MemberPress.
- Connectez-vous à votre site web et naviguez vers Tableau de bord > Plugins > Ajouter un nouveau plugin.
- Cliquez sur le bouton Télécharger le plugin bouton, cliquez sur Choisir un fichier, puis sélectionnez le fichier .zip téléchargé.
- Cliquez sur Installer maintenant.
- Sur la page suivante, cliquez sur le bouton Remplacer actuel par téléchargé bouton.

Cette procédure réinstalle le plugin sans affecter les données MemberPress. Le Mise à jour de MemberPress Ce document décrit plus en détail la procédure de mise à jour manuelle.
Consultez le site web après la réinstallation. Si l'erreur persiste, passez à la solution suivante.
Solution 3 : Vider la mémoire cache OPcache du serveur
Sur certains serveurs, la réinstallation des fichiers ne provoque pas l'actualisation du cache. Dans ce cas, il faut réinitialiser manuellement le cache.
De nombreux panneaux de contrôle d'hébergement proposent une option permettant de vider le cache PHP ou de redémarrer PHP. Le nom et l'emplacement de cette option varient selon le fournisseur d'hébergement. Recherchez les options intitulées “ Vider le cache OPcache de PHP ”, “ Vider le cache PHP ”ou “ Redémarrer PHP ”. Le redémarrage de PHP efface également l'intégralité du cache.
Videz le cache, puis actualisez la page. Si l'erreur persiste ou si cette option n'est pas disponible, contactez votre hébergeur.
Solution n° 4 : Contacter l'hébergeur
L'hébergeur peut vider le cache directement sur le serveur. Cette solution ne nécessite aucune intervention technique. Elle fonctionne également lorsque l'erreur fatale bloque le tableau de bord WordPress.
Le modèle de message suivant permet de décrire le problème à l'équipe d'assistance de l'hébergeur :
Bonjour,
Suite à la mise à jour d'un plugin, mon site web affiche une erreur fatale PHP indiquant qu'un
trait ou une classe est introuvable. Les fichiers du plugin mis à jour sont bien présents sur le
disque. Cependant, OPcache sert des copies mises en cache obsolètes de certains fichiers.
Pourriez-vous, s'il vous plaît, vider la mémoire cache OPcache de mon compte, ou redémarrer PHP
(PHP-FPM) ?
Veuillez également vérifier si les paramètres opcache.restrict_api ou
opcache.validate_timestamps=0 sont activés sur mon serveur. Ces paramètres empêchent
WordPress d'actualiser automatiquement les fichiers mis en cache lors des mises à jour
de plugins. Les modifier permettrait d'éviter ce problème lors des prochaines mises à jour.
Merci.
Une fois que l'hébergeur a vidé le cache, le site web charge les nouveaux fichiers du plugin et l'erreur disparaît. Si l'erreur persiste après la vidange du cache, contactez le Équipe d'assistance MemberPress pour obtenir de l'aide.
Ce qui ne permet généralement pas de résoudre cette erreur
L'erreur provient du cache PHP du serveur. Par conséquent, les étapes de dépannage courantes suivantes ne permettent généralement pas de la résoudre :
- vider le cache du navigateur, car celui-ci ne conserve pas l'erreur ;
- vider la mémoire cache des pages des plugins de mise en cache (par exemple, WP Rocket, W3 Total Cache), car ces plugins stockent des pages et non des fichiers PHP ;
- vider le cache du CDN (par exemple, Cloudflare), pour la même raison ;
- la désactivation puis la réactivation de MemberPress, car cela n'entraîne pas la réécriture des fichiers du plugin ;
- réparer ou restaurer la base de données, puisque ce n'est pas elle qui est à l'origine de l'erreur.
En sautant ces étapes, vous gagnez du temps et évitez d'apporter des modifications inutiles au site web.
