web-dev-qa-db-fra.com

Erreur d'enregistrement d'article: ID parent non valide (Frontend)

Sur un site assez récent, quelque chose s'est produit qui a causé que les articles donnent le message d'erreur suivant lors de la sauvegarde (uniquement sur l'interface)

Save failed with the following error: Invalid Parent ID

En cherchant une solution, j’ai trouvé que l’une des raisons de cette erreur est que l’arborescence des catégories s’est détériorée pour une raison quelconque et qu’il semble exister de nombreuses solutions. J'ai d'abord essayé ce qui suit:

  • Reconstruire tous les éléments de menu
  • Reconstruire toutes les catégories
  • Actualiser toutes les catégories en éditant et en sauvegardant/fermant
  • Actualiser tous les articles en modifiant et en sauvegardant/fermant

Comme expliqué autrement dans cet article: https://www.joomla-tips.org/joomla-troubleshooter/save-failed-with-the-sollowing-error-inval-parent-id.html

Iv'e a également essayé de créer une catégorie temporaire et de déplacer toutes les catégories sous celle-ci et de revenir à la racine, comme expliqué dans cet article: https://www.itsupportguides.com/knowledge-base/joomla-tips/joomla- save-failed-with-the-error-parent-id-parent /

Cependant, rien de tout cela ne semble fonctionner. Ce n'est que lorsque j'édite ou crée des articles sur le front-end que ce message d'erreur s'affiche. Jamais été un problème lorsque vous faites la même chose sur le backend, où il enregistre sans erreur.

La dernière chose que j'ai essayée était d'installer l'extension ACL Manager, qui dispose également d'un outil de diagnostic permettant de résoudre les problèmes liés aux tables d'actifs. L'un a été détecté avec com_category. Cependant, le résoudre ne l'a pas résolu non plus.

Toute aide appréciée.

2
Marius

Ceci est en effet un problème causé par le Falang Componenet (2.9.1) avec Joomla 3.7.3+.

Le problème semble être un problème avec php 5 et la requête utilisée par Joomla dans les tables d'actifs.

Un moyen de résoudre ce problème consiste à mettre à jour vers PHP 7.0+ comme l'a mentionné @Tomasz Malinowski.

Cependant, la mise à jour vers PHP 7.0+ peut provoquer d'autres erreurs si votre site n'est pas prêt, comme c'était mon cas.

Donc, si vous devez garder php 5 (dans mon cas 5.6), alors ce correctif fonctionne jusqu'à ce qu'une nouvelle version de Falang soit publiée avec un correctif officiel.

Dans .../libraries/joomla/table/asset.php ligne 110 remplace

->select('1')

avec

->select($this->_db->quoteName('id'))

Pour Joomla 3.8+, la ligne à remplacer ci-dessus se trouve dans ... libraries/src/Table/Asset.php ligne 99

1
Marius

Peut-être utilisez-vous le composant Falang? Dans mon cas, seules les soultions étaient mises à jour PHP à 7.0 ou 7.1 Ce problème existe depuis Joomla 3.7.3 - c'est tout ce que je sais ...

2
Tomasz Malinowski