wordpress设置首页为特定页

场景描述

网站首页本是默认显示最近文章的列表,后来做了个页面,并希望将其设置为主页。

解决方案

这个问题在网上的答案大多是在后台“设置-阅读”中设置“一个静态页面”,再选择主页之类的,我甚至跑去安装了个Custom Front Page插件,但是你可能和我一样,发现这么设置并没有用!

探索了一个多礼拜,终于意识到很有可能是主题的问题,我大致梳理下逻辑与大家共享,有不足之处欢迎补充。

1、页面调用

首先,wordpress自带的设置主页功能依赖于主题中的几个文档,我当时无论如何修改wordpress配置,永远都只会调index.php中的内容。front-page.php, home.php, page.php, index.php文件的关系可参考如下:

  • 如果,front-page.php 存在,无论选择 "您的最新文章" 还是 "一个静态页面" 作为首页展示,都是采用 front-page.php 作为模板,没有其他三个文件啥事情。
  • 如果,front-page.php 不存在,并且选择了 "您的最新文章" 作为首页展示,则会以 home.php 作为模板。另外,如果 posts page 也设定了页面,也会用到 home.php.
  • 如果,front-page.php 不存在,并且选择了 "一个静态页面" 作为首页展示,则会使用 page.php 模板。模板的优先级为 page-{id}.php, page-{slug}.php, page.php, index.php
  • 如果,选择了 "您的最新文章" 作为首页展示,并且 home.php 不存在,则会以 index.php 为模板。或者,front page 设置了页面,但是 page.php 不存在,也会使用 index.php 作为模板。

——摘自地址

 看来front-page.php优先级最高,而index.php就是个最可靠的备胎。

 

2、修改.php

我们可以在主题下新建一个front-page.php文件——当然你也可以选择其他策略新建home.php, page.php等。为了全站风格统一,我这边是将index.php的内容直接拷贝到front-page.php,稍作修改并加上以下两行代码:

$page_id =页面的ID;
include('article-normal.php');
//article-normal.php是我的文章格式

——参考来源

注意不要直接修改index.php,改之前可以做下备份。

最后放上我的网站

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值