Adapter son code pour la 2.24 n° 5

On continue avec la variable globale $_menu (ou son équivalent $GLOBALS['_menu']) qui est à remplacer par dcCore::app()->menu, partout dans votre code.

Exemple pris dans le code du plugin Tags1.

Avant :

$_menu['Blog']->addItem(
    __('Tags'),
    dcCore::app()->adminurl->get('admin.plugin.tags', ['m' => 'tags']),
    [dcPage::getPF('tags/icon.svg'), dcPage::getPF('tags/icon-dark.svg')],
    …

Après :

dcCore::app()->menu['Blog']->addItem(
    __('Tags'),
    dcCore::app()->adminurl->get('admin.plugin.tags', ['m' => 'tags']),
    [dcPage::getPF('tags/icon.svg'), dcPage::getPF('tags/icon-dark.svg')],
    …

L’expression régulière de recherche à utiliser étant :

((\\*?)\$_menu|\$GLOBALS\['_menu'\])

Si vous n’aimez pas les expressions régulières, alors cherchez ceci :

$GLOBALS['_menu']
$_menu
\$GLOBALS['_menu']
\$_menu

Et à remplacer par :

dcCore::app()->menu

Par ailleurs n’oubliez pas de supprimer les lignes contenant :

global $_menu;

Elles ne serviront plus.


On reviendra sur la gestion des menus un peu plus tard, quand on abordera les constantes à utiliser avec la 2.24, et uniquement cette dernière.


Comme pour la variable $core (voir à ce sujet le billet correspondant), vous pouvez ne toucher à rien pour l’instant, la variable globale étant toujours déclarée.

Notez qu’elle sera supprimée dans le futur, donc tant que vous y êtes, sautez le pas ;-)


  1. Les plugins de la version 2.23 ont déjà été modifiés en conséquence, vous pouvez un œil à leur code si nécessaire. ↩︎

Ajouter un commentaire

Les champs suivis d'un * sont obligatoires

Les commentaires peuvent être formatés en utilisant la syntaxe Markdown Extra.

Ajouter un rétrolien

URL de rétrolien : https://open-time.net/trackback/15507

Haut de page