Je travaille sur un site Web avec ~ 100 éléments de menu (le type est "Article simple"). Chaque élément de menu a ses propres paramètres uniques dans l’onglet "Options":
Cela remplace évidemment les paramètres globaux, mais je souhaite le redéfinir sur "Utiliser global" afin de contrôler les paramètres à partir de "Paramètres globaux" dans le gestionnaire d'articles et que tous les articles aient le même aspect.
Est-il possible de définir "Utiliser global" pour toutes les options dans tous les éléments de men à la fois?
Ma première pensée a été d’utiliser une requête MySql, mais je ne sais pas comment elle devrait être écrite ni quelle entrée de base de données je devrais changer.
Utilisez ceci à vos risques et périls:
UPDATE jos_menu SET params = CONCAT('{"show_title":"","link_titles":"","show_intro":"","info_block_position":"","show_category":"","link_category":"","show_parent_category":"","link_parent_category":"","show_author":"","link_author":"","show_create_date":"","show_modify_date":"","show_publish_date":"","show_item_navigation":"","show_vote":"","show_icons":"","show_print_icon":"","show_email_icon":"","show_hits":"","show_tags":"","show_noauth":"","urls_position":"",', SUBSTR(params, POSITION('"menu-anchor_title"' IN params))) WHERE `link` like "index.php?option=com_content&view=article&id=%"
jos
par votre préfixe de table Joomla.La requête a fonctionné sur un environnement de test Joomla 3.3.3.
Je viens de faire cela avec joomla 3.7, il ne fallait que changer un paramètre. voici le code que j'ai utilisé avec succès:
update xxx_menu set params = replace(params,'"show_page_heading":"1"','"show_page_heading":"0"') where params like '%"show_page_heading":"1"%'
Je l'ai testé avec une clause where pour un identifiant de menu en premier pour être sûr que cela fonctionnait, et bien sûr tout sauvegardé en premier! J'espère que ça aide quelqu'un.
Dans PHPmyAdmin, vous pouvez écrire quelque chose comme ci-dessous:
UPDATE `#__menu`
SET `params` = '{"show_title":"","link_titles":"","show_intro":"","info_block_position":"","show_category":"","link_category":"","show_parent_category":"","link_parent_category":"","show_author":"","link_author":"","show_create_date":"","show_modify_date":"","show_publish_date":"","show_item_navigation":"","show_vote":"","show_icons":"","show_print_icon":"","show_email_icon":"","show_hits":"","show_tags":"","show_noauth":"","urls_position":"","menu-anchor_title":"","menu-anchor_css":"","menu_image":"","menu_text":1,"page_title":"","show_page_heading":0,"page_heading":"","pageclass_sfx":"","menu-meta_description":"","menu-meta_keywords":"","robots":"","secure":0}'
WHERE `link` LIKE 'index.php?option=com_content&view=article&id=%'
Remarques:
params
prend les valeurs pour les options d’éléments de menu. Pour définir un paramètre par défaut, il vous suffit de transmettre une valeur vide, par exemple. "montrer le titre":"". Vérifiez chaque paramètre pour vous assurer que vous avez le réglage souhaité.link
LIKE 'index.php? Option = com_content & view = article & id =%' est utilisé pour rechercher uniquement les articles simples.Grâce au commentaire de Fari, soyez conscient: Cette requête affectera également des paramètres tels que la méta-description, les méta-mots-clés, la classe de page, le titre de la page du navigateur, etc.