web-dev-qa-db-fra.com

règle de réécriture des permaliens personnalisés pour l'identifiant de page

J'utilise WP 3.2.1.

J'essaie de faire un lien permanent comme:/en/1/une-chaîne. La structure est la suivante:% lang% /% pageID% /% une chaîne aléatoire%

J'ajoute donc une règle de réécriture:

function  nw_lang_addRewrite($aRules) {
    $_aRules["(en|lt|ru)/(\d+)(/.*)?$"] = 'index.php?p=$matches[2]&lang=$matches[1]';

    $aRules = $_aRules + $aRules;
    return $aRules;
}

ajouter une balise lang:

function nw_lang_addQuery($vars) {
    $aVars[] = "lang";
    return $aVars;
}

Buf si l'utilisateur va à http://www.somesite.com/fr/17/2-Pork.html il ne voit pas la page avec l'ID = 17 .

$ wp_query est:

WP_Query Object (
    [query_vars] => Array
        (
            [lang] => en
            [error] => 
            [m] => 0
            [p] => 0

            .....

            [static] => 
            [pagename] => 
            [page_id] => 0
            [paged] => 0

       ....

    [is_single] => 
    [is_preview] => 
    [is_page] => 
    [is_paged] => 

    ...

    [queried_object] => 
    [queried_object_id] => 0
)
1
neworld

J'ai trouvé un problème. J'avais besoin de changer le nom du paramètre de la fonction en "$ aVars".

function nw_lang_addQuery($avars)
0
neworld