我不确定这是否是一个已知问题或应该像这样的表现,
任何 WordPress 网站,如果您在 URL 末尾添加数字,例如,
http://perishablepress.com/wordpress-multisite-mamp/
我们在末尾添加 1 或任意数字
http://perishablepress.com/wordpress-multisite-mamp/123
我们不会得到NOT FOUND
页面,我们仍然会停留在同一页面,即
http://perishablepress.com/wordpress-multisite-mamp/
这是错误还是正常现象?我们如何重定向到“未找到页面”?
这不是一个错误,123
被解释为分页参数:
Request: wordpress-multisite-mamp/123
Query String: page=%2F123&name=wordpress-multisite-mamp
Matched Rewrite Rule: ([^/]+)(/[0-9]+)?/?$
Matched Rewrite Query: name=wordpress-multisite-mamp&page=%2F123
帖子可以分页<!--nextpage-->
。如果没有找到更多内容,WordPress 将显示最后一页的内容(如果帖子未分页,则显示完整帖子)。
要在分页参数超过页数时重定向到 404 页面,请将以下内容放入functions.php
file:
add_action( 'template_redirect', 'so16179138_template_redirect', 0 );
function so16179138_template_redirect()
{
if( is_singular() )
{
global $post, $page;
$num_pages = substr_count( $post->post_content, '<!--nextpage-->' ) + 1;
if( $page > $num_pages ){
include( get_template_directory() . '/404.php' );
exit;
}
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)