在wordpress中,尽管你把固定链接设置成 /%postname%.HTML 这种形式,也只能给文章的URL添加 .HTML 后缀,其余页面的URL都是没有 .HTML 后缀的。上次我们介绍了如何给标签页添加.HTML后缀,这次我们讲讲如何给wordpress博客的页面URL添加.HTML后缀。
使用插件
如果想给页面URL添加 .HTML 后缀,可以使用使用这款插件:.HTML on PAGES
如果想给页面URL添加 .PHP 后缀,可以使用使用这款插件:.PHP on PAGES
露兜亲测,两款插件均可以在wordpress 3.5下正常工作。
特定页面不添加后缀
.HTML on PAGES 插件会给所有页面都添加上.HTML后缀,但是问题又来了,如果我们不想给 sitemap 页面URL添加 .HTML 后缀,保持 /sitemap,而不是 /sitemap.HTML,那么怎么办呢?如果你有这个需求,可以用文本编辑器打开插件目录下的HTML-on-pages.PHP,查找:
add_filter('user_trailingslashit','no_page_slash',66,2);将其替换成:
add_filter('page_link','blog_permalinks_page_link',10,2);function blog_permalinks_page_link($permalink,$page) {
$pos = strpos($permalink,"/sitemap.HTML");
if ($pos !== false) {
$permalink = str_replace("/sitemap.HTML","/sitemap",$permalink);
}
return $permalink;
}
add_filter('user_trailingslashit',2);
接着查找:
function HTML_page_permalink() {将其替换成:
function HTML_page_permalink() {$string = $_SERVER['REQUEST_URI'];
$pos = strpos($string,"/sitemap.HTML");
if ($pos !== false) {
switch_to_blog(1); //We are using WPMU if you are not you won't need this line.
wp_redirect(get_option('home') . str_replace('/sitemap.HTML','/sitemap',$string),301);
exit();
}
else {
$pos = strpos($string,"/sitemap");
if ($pos !== false) {
$_SERVER['REQUEST_URI'] = str_replace("/sitemap","/sitemap.HTML",$string);
global $wp;
$wp->parse_request();
}
}
好了,修改就到此结束。你可以根据把代码中的 sitemap 改成你的页面别名.
总结以上是内存溢出为你收集整理的WordPress给页面URL添加.html后缀的方法全部内容,希望文章能够帮你解决WordPress给页面URL添加.html后缀的方法所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)