web-dev-qa-db-fra.com

Utilisation de variables $ _GET dans l’URL?

J'ai besoin de générer un simple message d'erreur sur une page en transmettant une variable via l'URL.

L'URL est structuré comme suit:

http://site.com/parent-category/category/?error=pause

Je suis sûr que ce sont les permaliens réécrivant qui interfèrent, mais je ne sais pas comment le résoudre.

6
Kyle

Essayez d'ajouter la variable au "tableau de 'variables de requête reconnues' de WordPress ...

add_filter('query_vars', 'my_register_query_vars' );
function my_register_query_vars( $qvars ){
    //Add query variable to $qvars array
    $qvars[] = 'my_error';
    return $qvars;
}

Ensuite, la valeur de 'my_error' peut être trouvée via get_query_var('my_error'). (Voir Codex )

EDIT

D'après le commentaire d'Otto, il vaut mieux faire:

add_action('init','add_my_error');
function add_my_error() { 
    global $wp; 
    $wp->add_query_var('my_error'); 
}
12
Stephen Harris

C'était la seule façon pour moi de faire en sorte que cela fonctionne

add_action('init','add_query_args');
function add_query_args()
{ 
    add_query_arg( 'error', 'pause' );
}

http://codex.wordpress.org/Function_Reference/add_query_arg

0
brenjt