翻译自:https://www.rarst.net/wordpress/front-page-logic/
开始折腾wordpress,版本WP5;
万万没想到弄个首页被模板层级结构搞得晕头转向!!
抛开wordpress,但就语义上 homepage和 frontpage他妈的不是一样的么!!!可到了WP这里,麻蛋真恶心……
首页设置项在后台可以选择 最近博文 或者 固定页面,
首页模板具体的继承规则有网友做了总结,这里记录一下,希望能帮助有需要的网友,当然啦,如果看WP codex文档会更好,但是也够够的了!
我觉得更牛逼的是这个主题层级网站:https://wphierarchy.com/
看的我一脸懵逼,好可怕的WP……
▼对于下面的表格,一个是body class,另外是is_home和is_page,好好体会咯,归纳一下home.php是会在循环输出博文内容时用到,font-page.php才是真正的homepage啊,它的优先级杠杠的!
Default 默认 | Static front page 当选择固定页面时 | ||
---|---|---|---|
Front page displays 首页显示方式 | Your latest posts 最近博文 | Front page: 首页样式 | Posts page: 博文样式 |
URL 域名样式 | example.com 网站域名 | example.com/posts 页面伪静态域名 | |
Template hierarchy 模板层级 |
|
| |
缺少front-page.php就会 去寻找home.php | 从上至下依次找,找到谁就用
| ||
| |||
Body classes 前台网页body标签的class样式名 |
|
| blog |
Loop and content 模板内容 | posts index | page | posts index |
| https://example.com | ||
get_post_type_archive_link('post') | https://example.com | https://example.com/posts | |
内置逻辑判断函数 | true | false | |
内置逻辑判断函数 | true | false | true |
内置逻辑判断函数 | false | true | false |
get_option( 'show_on_front' ) | 'posts' | 'page' | |
get_option( 'page_on_front' ) | 0 | Front page ID | |
get_option( 'page_for_posts' ) | 0 | Posts page ID |