如何停止特定插件的固定链接重定向

时间:2014-12-15 作者:Eddie

我有大量的帖子,每个帖子都代表一种非常特定的数据类型。每个帖子标题都是数据的SKU;信息人们已经非常熟悉URL结构,他们的快捷方式(重定向)导致他们获取不正确的数据。在这种情况下,使用错误的数据不是一件好事。

For example, if my actual slug is example.com/esm/010HHHH

<示例。com/010HHHH重定向到示例。com/esm/010HHHH(良好)示例。com/010可以重定向到以010开头的任何项目,例如。com/esm/010AAAA(不太好)首选的行为是,只需为任何帖子获取404错误,而这对于任何有少量/esm的帖子来说都不准确。

通过删除规范过滤器,我成功地解决了这个问题。然而,我希望其他鼻涕虫的“正常”规范行为。

remove_filter(\'template_redirect\', \'redirect_canonical\');

2 个回复
最合适的回答,由SO网友:Eddie 整理而成

这似乎奏效了。如果WP想要重定向到的URL中有“esm”,它只会返回404。如果没有,它就可以继续它快乐的小径。

add_filter( \'redirect_canonical\',\'custom_disable_redirect_canonical\' );
function custom_disable_redirect_canonical( $redirect_url, $requested_url ) {
  if ( preg_match("/esm/",$redirect_url) ) {
    return FALSE;
  } else {
    return $redirect_url;
  }
}

SO网友:Céline Garel

也许这会有帮助:

add_filter( \'redirect_canonical\',\'custom_disable_redirect_canonical\' ); 
function custom_disable_redirect_canonical( $redirect_url, $requested_url ) {
    if ( /* your condition */ ) {
        return $redirect_url;
    } else {
        return $requested_url;
    }
}

结束

相关推荐

Custom permalinks structure

我希望有这样的结构:www.mysite.com/2013 (必须显示2013年的所有职位)www.mysite.com/my-category/2013 (必须显示2013年和“我的类别”类别的所有帖子)www.mysite.com/my-category/my-tag/ (必须显示所有类别为“我的类别”和标记为“我的标记”的帖子)www.mysite.com/my-category/ (必须显示“我的类别”类别的所有帖子)www.mysite.com/my-