Question

Disons que vous avez une URL comme celui-ci est entré dans modx Evo

www.zipit.com.org/reference/toamovie/

si j'ai une page appelée toamovie dont le parent est appelé reference

mais quand quelqu'un entre dans cette URL, je veux faire l'équivalent de ce

www.zipit.com.org/reference.html?myvar=toamovie

en outre, ou plus important, Je voudrais que le résultat soit plus comme celui-ci, où wouls de 12 être l'identifiant d'un document

`www.zipit.com.org/reference.html?myid=12'

Je me demande si cela est possible avec tout modx Evolution.I'm penser que cela devrait être possible de faire avec un peu de magie htaccess, bien la première partie de toute façon. Comment pourrais-je obtenir une valeur que le document? Ce serait tout à fait inaccessible avec htaccess, donc il faudrait être une autre partie à ce qui pourrait se brancher sur la base de données et obtenir cette valeur.

Était-ce utile?

La solution

Il devrait être possible avec une coutume plugin appelé l'événement "OnPageNotFound".

<?php
$url = $_SERVER['REQUEST_URI']; //get the url        
//split the url into pieces and remove empty values
$pieces = array_filter(explode('/', $url));

//reset the array keys
$temp = array();
foreach ($pieces as $piece) {
    $temp[] = $piece;
}
$pieces = $temp;

//basic checking of the url
if (count($pieces) == 2) {
    $modx->sendRedirect('http://www.zipit.org/' . $pieces[0]  .".html?myid=" . $pieces[1]);
}
?>

rappelez-vous que les plugins ne sont pas enveloppés dans des balises php. que ce script passera des urls incorrectes zipit.org. Certains gestion des erreurs est probablement souhaitable.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top