我正在寻找关于wp\\U重定向的一些建议成功注册后,该计划是一个新用户注册,然后在成功后重新定向到自定义帖子类型页面“代理”wp stackexchange问题asked here 两年前。代理页面是一个配置文件页面,包含注册时输入的信息,注册后用户将使用更多信息进行更新。
1) WP\\U DEBUG已启用,WP\\U DEBUG\\U LOG也已启用。2) 我的注册底部有如下重定向:
wp_redirect (agent_permalink($user_id)); exit;
同时尝试以下操作:
wp_redirect (\'agent-profile/\' . $agent_permalink($user_id)); exit;
这两个(以及我尝试过的其他)都失败了,屏幕为白色,屏幕上没有WP\\U调试错误,也没有写入日志。刷新屏幕时,会显示已注册的用户,但会停留在注册页面上。
使用此选项:
wp_redirect (\'agent-profile\'); exit;
成功重定向到自定义post类型概要文件页面(我可以看到页面源正文标记中写入的“single”CPT类,编号404)。
要将WPSE成员从该页面切换到提供的链接,这是覆盖成员永久链接的函数:
function agent_permalink ( $user = \'\' ) {
if ( ! empty($user) ) {
if ( is_numeric($user) ) { // user id
$userObj = get_user($user);
} else { // user nicename
$userObj = -1;
}
} else {
$userObj = wp_get_current_user();
$name = isset($userObj->user_nicename) ? $userObj->user_nicename : \'\';
}
if ( ! isset($name) ) $name = $userObj == -1 ? $user : $userObj->user_nicename;
global $wpdb;
$id = $wpdb->get_var( $wpdb->prepare(
"SELECT ID FROM $wpdb->posts WHERE post_name = %s AND post_type = \'agent\' AND post_status = \'publish\'",
$name
) );
return $id ? get_permalink($id) : \'\';
}
Qoute from gmazzap 这个函数很灵活,可以像agent\\u permalink($user\\u id)那样使用,也可以像agent\\u permalink($user\\u nicename)那样使用。
如果当前登录用户是成员,则可以使用agent\\u permalink()之类的函数来检索当前登录成员的url
我试图实现的最终结果是url结构如下:
任何网站。com/代理/代理配置文件/用户名
如果您能帮我指出正确的方向,我们将不胜感激