繁体   English   中英

如果引荐来源网址不是 wordpress 中的特定网址,如何重定向到另一个页面?

[英]How to redirect to another page if referrer url is not a specific url in wordpress?

我将 WordPress 与 Elementor 一起使用,我希望某个页面只有来自某个 url 时才能访问。 我从类似问题的其他答案中看到我可以使用它:

add_action( 'template_redirect', 'wpse15677455_redirect' );

function wpse15677455_redirect() {

  $value = ('https://mywebsite.com/quotaton/') ;
    if (!is_page(555) & wp_get_referer() !== $value ) {

       wp_safe_redirect( get_home_url() );

    }
 };

我尝试在主题的 function.php 中使用它,但它返回错误“无法与服务器通信以检查致命错误”。 我尝试停用除 elementor 之外的所有插件,但结果相同。 我尝试不使用 add_action 调用,但尽管没有给出错误,它也什么都不做。 我似乎找不到使用此功能的正确位置/方式。

function custom_redirects() {
 
    if ( is_front_page() ) {
        wp_redirect( home_url( '/dashboard/' ) );
        die;
    }
 
    if ( is_page('contact') ) {
        wp_redirect( home_url( '/new-contact/' ) );
        die;
    }
 
}
add_action( 'template_redirect', 'custom_redirects' );

is_page('contact') => 'contact' 是页面 slug。 is_page(150) => '150' 是页面 ID。

尝试代码,我认为问题在于您缺少And运算符的单个 & 符号。 此外,如果is_page用于检查“特定页面”,则可能not (!) 运算符...

if (is_page(555) && wp_get_referer() !== $value ) {

如果必须重定向的链接来自页面,您可以使用像这样的重定向插件: https ://it.wordpress.org/plugins/page-links-to/

激活后,您只需编辑要重定向的页面,在页面链接到字段中插入正确的链接。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM