web-dev-qa-db-fra.com

Comment puis-je inclure une chaîne de requête avec get_permalink

Mon lien de connexion utilise wp_login_url( get_permalink() ) pour que l'utilisateur soit redirigé vers la page qu'il visualisait et non vers le tableau de bord.

Toutefois, cela n'inclut pas les chaînes de requête. Ainsi, si un utilisateur se trouvait à here.com/?page=4, il ne serait pas redirigé vers la page 4.

Comment puis-je inclure la chaîne de requête dans mon code?

$items .= "<li class='menu-item'> <a href=\"".wp_login_url( get_permalink() )."\">Login</a></li>";
3
osakagreg

Vous pouvez utiliser add_query_arg () pour ajouter les paramètres de requête de votre choix à un URI, par exemple,

$redirect_uri = add_query_arg ('page', '4', get_permalink ()) ;
$login_uri = wp_login_url ($redirect_uri) ;

Ou bien, vous pouvez simplement utiliser $_SERVER['REQUEST_URI'], qui contiendra déjà toute chaîne de requête présente dans l'URI de la page en cours, par exemple,

$login_uri = wp_login_url ($_SERVER['REQUEST_URI']) ;
3