Clarté de code

En bossant sur les widgets ces jours-ci je me suis dit qu’on répétait tout de même pas mal de code, et ça a le don de m’agacer ; du coup je suis en train de revoir ça et pour l’instant, au lieu de ceci, pour initialiser un widget du type moteur de recherche :

$__widgets->create('search', __('Search engine'), ['defaultWidgets', 'search'], null, 'Search engine form');
$__widgets->search->setting('title', __('Title (optional)') . ' :', __('Search'));
$__widgets->search->setting('placeholder', __('Placeholder (HTML5 only, optional):'), '');
$__widgets->search->setting('homeonly', __('Display on:'), 0, 'combo',
    [__('All pages') => 0, __('Home page only') => 1, __('Except on home page') => 2]);
$__widgets->search->setting('content_only', __('Content only'), 0, 'check');
$__widgets->search->setting('class', __('CSS class:'), '');
$__widgets->search->setting('offline', __('Offline'), 0, 'check');

On fait ça :

$__widgets
    ->create('search', __('Search engine'), ['defaultWidgets', 'search'], null, 'Search engine form')
    ->addTitle(__('Search'))
    ->setting('placeholder', __('Placeholder (HTML5 only, optional):'), '')
    ->addHomeOnly()
    ->addContentOnly()
    ->addClass()
    ->addOffline();

C’est tout de même plus lisible, non ? Et puis ça milite pour une harmonisation des options, partout où elles sont utilisées, y compris par les plugins tiers qui se serviraient des nouvelles fonctions d’ajout d’options « standards » (titre, …) pour leurs widgets.

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/14486

Haut de page