Dans Joomla! documentation, il est indiqué que:
Depuis Joomla 3.3, il est préférable d’implémenter l’interface JComponentRouterInterface et de gérer le routage et l’analyse similaires à ceux décrits ci-dessous, mais via les méthodes de cette interface.
Mais je ne trouve aucun exemple de mise en oeuvre de l'interface mentionnée ci-dessus. Quelqu'un peut-il donner un exemple?
https://docs.joomla.org/Supporting_SEF_URLs_in_your_component
Autrefois, le router.php
fichier contenant les fonctions: BuildRoute
et ParseRoute
. De nos jours, si vous regardez le router.php
de banners
extension, par exemple, vous verrez une classe appelée BannersRouter
qui s'étend de JComponentRouterBase
, et dans cette classe, vous verrez le build
et les fonctions parse
. De plus, juste après la classe, vous verrez également les fonctions bannersBuildRoute
et bannersParseRoute
(ces 2 fonctions sont nécessaires et invoqueront les build
et les parse
méthodes).
Donc, dans votre router.php
, une fois que vous utilisez une classe qui s'étend de JComponentRouterBase
(comme le composant banners), au lieu d’utiliser BuildRoute
et ParseRoute
, vous implémentez automatiquement le JComponentRouterInterface
dans votre composant.
J'espère que cela t'aides!