我在WordPress代码中找不到任何重定向网址,但每次完成注册表单时,它都会重定向到主页。我需要在注册完成后更改重定向。我可以理解下面的代码起到了作用,但是任何人都可以帮助我如何从下面的代码设置重定向到URL以及要替换哪个部分?
由于
if ( 'publish' == $status ) {
wp_safe_redirect( add_query_arg( 'updated', 'true', get_permalink( $campaign ) ) );
exit();
} elseif ( 'submit' == $action ) {
$url = isset ( $edd_options[ 'submit_page' ] ) ? get_permalink( $edd_options[ 'submit_page' ] ) : get_permalink();
$redirect = apply_filters( 'atcf_submit_campaign_success_redirect', add_query_arg( array( 'success' => 'true' ), $url ) );
wp_safe_redirect( $redirect );
exit();
} else {
wp_safe_redirect( add_query_arg( 'preview', 'true', get_permalink( $campaign ) ) );
exit();
}
}
add_action( 'template_redirect', 'atcf_shortcode_submit_process' );
/**
* Redirect submit page if needed.
*
* @since Astoundify Crowdfunding 1.1
*
* @return void
*/
function atcf_shortcode_submit_redirect() {
global $edd_options, $post;
if ( ! is_a( $post, 'WP_Post' ) )
return;
if ( ! is_user_logged_in() && ( isset( $edd_options[ 'submit_page' ] ) && $post->ID == $edd_options[ 'submit_page' ] ) && isset ( $edd_options[ 'atcf_settings_require_account' ] ) ) {
$url = isset ( $edd_options[ 'login_page' ] ) ? get_permalink( $edd_options[ 'login_page' ] ) : home_url();
$url = add_query_arg( array( 'redirect_to' => get_permalink( $edd_options[ 'submit_page' ] ) ), $url );
$redirect = apply_filters( 'atcf_require_account_redirect', $url );
wp_safe_redirect( $redirect );
exit();
}
}
add_action( 'template_redirect', 'atcf_shortcode_submit_redirect', 1 );
答案 0 :(得分:0)
你有很多wp_safe_redirect
个功能。
atcf_shortcode_submit_redirect()
以外的一些内容。
但是我不确定基于您的代码,外面的那些与注册页面没有任何关系。所以你应该改变里面的那个。
这是第一个$url
变量:
$url = isset ( $edd_options[ 'login_page' ] ) ? get_permalink( $edd_options[ 'login_page' ] ) : home_url();
正如您所看到的,如果之前没有保存任何选项,则login_page
名称重定向网址将是home_url()
,这是您的主页链接。
如果你不想将用户重定向到登录页面,你最好去找这个选项(在相关的插件/模板设置页面的某个地方)和检查/填充那个选项,否则将home_url()
更改为您想要的任何本地网址(例如"http://mywebsite/successful-page"
)
答案 1 :(得分:0)
在看到整个代码之前,我不确定插件(或主题)是否在内部工作,但我有点理解。
wp_safe_redirect重定向到给定的url(字符串)。所以试着修补那个。保持复制并将wp_safe_redirect参数更改为“https://google.com”或其他内容。然后你会发现哪个条件语句正在触发并重定向到你的主页。
我认为atcf_shortcode_submit_redirect函数会重定向未登录到登录页面的人,因此它与您的问题无关。
答案 2 :(得分:0)
我想使用javascript document.location。 只需在函数内部编写一个带有单个参数的函数,就可以使用脚本标记提供javascript代码
function redirect($location)
{
//inside the function place the script code
}
<script language="javascript" type="text/javascript">
document.location = "here will be your local variable";
</script>
答案 3 :(得分:0)
我知道这是一个老帖子,但万一其他人在寻找答案,这就是我的所作所为。
通过更改$ redirect值,我能够成功将用户重定向到个人资料页面。但是,当用户注销时,它将保留在配置文件页面上并将登录/注册添加到该页面中
无论如何,我安装了彼得的登录重定向并只设置了2个选项: &#34;所有其他用户&#34;将注销URL设置为您想要的任何页面 &#34;注册后网址&#34;将此设置为成功注册后应出现的页面