如果slug在wordpress中动态更改,如何重定向到另一个页面

时间:2017-07-13 10:52:43

标签: php wordpress redirect wordpress-theming custom-wordpress-pages

我有一个页面,其中有一个永久性的slu and和另一个页面,其中slug一直在变化。如果他没有登录,我想重定向用户。

我正在使用它: -

add_action( 'template_redirect', 'redirect_to_specific_page' );

function redirect_to_specific_page() {

   if ( (is_page( array( 'administration', 'documents', 'images' )) && ! is_user_logged_in()) ) {

      wp_redirect( get_site_url().'/log-in/', 301 ); 
      exit;
   }
}

如果它具有if条件下的永久性slug,那么这是有效的,但如果页面URL类似于http://siteurl/portfolio/this-is-image-5/ this-is-image-5,其中this-is-image-6将根据投资组合帖子不断更改,我该如何重定向用户。所以它可以是this-is-image-7fun(1,2,3)等等。所以请告诉我如何基于这个动态slug重定向非登录用户。

任何帮助都将受到高度赞赏

1 个答案:

答案 0 :(得分:1)

您可以查看当前的帖子类型,然后重定向。检查此代码:

add_action( 'template_redirect', 'redirect_to_specific_page' );
function redirect_to_specific_page() {
   global $post;
   if ( ($post->post_type == 'portfolio') && ! is_user_logged_in()) ) {
      wp_redirect( get_site_url().'/log-in/', 301 ); 
      exit;
   }
}