Hello,

Quand j'avais créé le ticket 1645, je pestais pas mal contre toutes ces URL
en dur qu'on met au niveau de l'admin, et ces paramètres GET qu'on mettait
parfois avec des &, parfois avec des &

Je prévois dans la branche twig de faire gérer tout ça par un urlhandler
dédié dans l'admin, mais je me dis que ce n'est pas dépendant de twig, et
que ça peut aussi avoir sa place sur la branche default.

Dans le principe : définir un objet $core->admin->url, et y enregistrer
toutes les url de l'admin avec un mot-clef, du genre :
* admin.posts : liste des billets
* admin.post : édition d'un billet
* admin.categories
* admin.category
* plugin.antispam.filters
* plufin.antispam.filter
...
(c'est une proposition de convention de nommage, je suis ouvert à toute
suggestion).

Ensuite, dans l'admin, plutôt que de mettre :
'<a href="post.php?id='.$id.'">...'
On mettrait :
'<a href="'.$core->admin->url->get('admin.post',array('id'=>$id)).'">'

en twig ça donnerait
<a href="{{ url('admin.post',{'id':id}) }}">...

Avantages :
* fini les liens en dur dans le code
* on peut hooker tout ça via des behaviors (par exemple admin.post peut
pointer vers le getPostType() et aller vers la bonne page d'admin en
fonction du post_type)
* on gère toutes les url à un endroit unique
* on ne construit plus les listes de paramètres des url à la main

Des avis sur le sujet ?

--
Bruno
-- 
Dev mailing list - [email protected] - http://ml.dotclear.org/listinfo/dev

Répondre à