Salut,
J'ai trouvé 2 solutions :
La première c'est avec l'extension CustomRequest avec lequel j'ai géré la pagination (getPage).
Après avoir ajouté le l'extension il suffit d'aller dans extensions => CustomRequest puis de créer une nouvelle configuration comme ceci :
Configuration name : Pagination
Alias Path : #.*?(page/)#
Resource : vide
URI Parameter : ["page"]
Regular expression : #(\d+)#
Il faut ensuite changer les TPL de getPage pour que les liens ressemblent a ça : monsite.fr/page/7/ (onglet propriétés du snippet getPage) exemple :
[[site_url]][[*uri]]page/[[+pageNo]]/
Et voilà de belle réécriture d'URL pour les pages.
La deuxième c'est encore plus simple. On créer une URL comme on le désire, exemple : mon-produits-id-unique.html et puis on lui dit quoi faire avec un plugin
// ici on test si le produit existe
// Et si le produit existe on le redirige vers la page qui affiche le produit simplement avec $modx->sendForward(14);
if(isset($product)){
$modx->sendForward(14);
} // Sinon il va tout seul renvoyer une vers la page d'erreur 404 par défaut.
}
Il faut s'assurer que le plugin s'execute sur l'évènement système : OnPageNotFound !!! (onglet évènements système du plugin)
J'espère que ça aidera certain ;-)