WordPress禁止通过文章ID动态链接方式“?p=id”访问

 2019-12-6 12:02   评论  
摘要

虽然 WordPress 开启伪静态后会自动跳转到新的地址上面,但是如何从根源上禁止 WordPress 继续通过/?p=postid 这样的方式在访问文章页面呢?


如果你的 WordPress 网站已经开启伪静态,可能就不需要让 WordPress 继续通过/?p=postid 这样的方式在访问。

虽然 WordPress 开启伪静态后会自动跳转到新的地址上面,但是对于某些有强迫症的人来说比如我,这一点就绝对不能忍受,因为搜索引擎它始终有时候会调皮的收录这样的动态地址。

wordpress禁止ID访问

通过把以下代码添加到当前主题的 functions.php 中即可实现

//禁止 WordPress 动态文章 ID 访问
//sokuzy.com/wpnopid.html
add_action('parse_query', 'disable_permalink_isvars_p');
function disable_permalink_isvars_p( $wp_query, $error = true ) {
if(get_query_var('p') && !is_preview()){
$wp_query->query_vars['p'] = false;
$wp_query->query['p'] = false;
// to error
if ( $error == true ) $wp_query->is_404 = true;
}
}

上方代码效果就是将?p=id的链接直接指向404页面,效果如下图:

PID404

支付下载注意:
1.支付成功后不要关闭二维码,等待系统确认后自动关闭,支付按钮 变为 下载按钮。
2.游客购买请使用 Chrome 、Edge 或 FireFox浏览器 ,以免支付刷新失败(浏览器缓存7天有效)。
3.如支付成功后刷新无法显示下载按钮、链接失效等问题请联系客服处理或参考下载说明文档
免责声明:
1.本站资源售价仅为赞助网站,收费仅用于网站维护运营更新,感谢您的支持。
2.本站所发布资源仅限用于学习和研究测试使用,不得用于商业或非法用途。
3.如果购买下载测试后满意,请前往购买支持正版,得到更好的正版服务。
4.本站仅保证资源的正常下载和测试使用,售后不包含相关技术咨询服务,请知悉谅解。
5.本站所发布资源为非实物商品,不接受退款,请考虑好再购买。

Soku云宝库 » WordPress禁止通过文章ID动态链接方式“?p=id”访问

发表回复

本站Tips:超过6个月未登录及一人多号注册的账号,我们将定期删除或停封。

Don`t copy text!