web-dev-qa-db-ja.com

Get_permalinkでクエリ文字列を含める方法

私のログインリンクはwp_login_url( get_permalink() )を使用しているので、ユーザーはダッシュボードではなく自分が見ていたページにリダイレクトされます。

ただし、これにはクエリ文字列は含まれません。そのため、ユーザーがhere.com/?page=4にいた場合は、4ページにリダイレクトされません。

コードにクエリ文字列を含めるにはどうすればよいですか。

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

add_query_arg() を使用して、URIに必要なクエリパラメータを追加できます。

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

あるいは、単に$_SERVER['REQUEST_URI']を使用することもできます。これには、現在のページのURIに存在するクエリ文字列が既に含まれています。

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