我试图阻止WordPress允许访问者使用帖子ID访问某些特定页面。
例如:http://example.com/?p=2会在http://example.com/some-page/上显示这些内容,但如果他们更改http://example.com/?p=3上的数字,则会http://example.com/another-page/。
但我想停止并阻止任何带有帖子ID的网址。因此,如果他们使用http://example.com/?p=3,他们将什么都没有,没有页面,只有404错误。知道如何阻止这个吗?
答案 0 :(得分:0)
我不确定我是否理解您的问题,但如果是关于帖子,您可以更改settings -> permalinks
中的永久链接并使用帖子名称,然后文章的网址应更改为其标题而不是#&# 39; s ID。随后,如果有人试图访问类似http://example.com/?p=3的内容,则会将其重定向到主页面(主页)。此外,拥有标题而不仅仅是ID的网址更具SEO性。
答案 1 :(得分:0)
实际上仅仅更改固定链接是不够的,WordPress会将像?p =这样的链接重定向到相应的URL。
按步骤:
在header.php文件的开头添加此代码。
if( !empty( $_GET['p'] ) ){
wp_redirect( site_url() ); // redirect to the homepage
}