加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > CMS系统 > wordpress > 正文

WordPress为文章和自定义文章类型添加自定义模板

发布时间:2020-12-14 14:21:38 所属栏目:wordpress 来源:网络整理
导读:由站长 通过网络收集整理的代码片段。编程之家小编现在分享给大家,也给大家做个参考。 相信很多主题开发者都知道,wordpress 支持为页面(page)这种文章类型添加自定义模板,但是如何为文章和自定义文章类型添加自定义模板呢?其实, Word

以下代码由PHP站长网 52php.cn收集自互联网现在PHP站长网小编把它分享给大家,仅供参考

相信很多主题开发者都知道,wordpress 支持为页面(page)这种文章类型添加自定义模板,但是如何为文章和自定义文章类型添加自定义模板呢?其实, WordPress 4.7 开始就支持了,但可能不少主题开发者还不知道。

WordPress 主题的模板

默认情况下,WordPress 支持大量主题模板文件,但是这些文件对多种变体的支持有限。对于文章,基本上只限于 single.php 文件,而对于自定义文章类型,则只有 single-{post-type}.php。

WordPress 页面的自定义模板

长期以来,通过将下面的模板标题添加到页面模板文件中,可以向 WordPress 页面添加多个自定义模板。但这仅支持页面,不适用于默认文章或自定义文章类型。

<?php

/*

Template Name: Contact

*/

文章和自定义文章类型的自定义模板

从 WordPress 4.7 开始,有一个新的鲜为人知的功能,可以让你为文章、页面和自定义文章类型添加多个模板。要测试此新功能,我们首先必须注册一个自定义文章类型。将以下代码复制到你主题的 functions.php 文件中,来创建一个新的自定义文章类型,称为“Product”

<?php

function create_product_post_type() {

register_post_type( 'product',

array(

'labels' => array(

'name' => __( 'Products' ),

'singular_name' => __( 'Product' )

),

'public' => true,

'has_archive' => true,

'show_in_rest' => true // 启用古腾堡编辑器

)

);

}

add_action( 'init','create_product_post_type' );

创建自定义文章类型时,有很多选项可以使用,但出于我们的目的,我们将尽可以简单。记下第 12 行。在这里您可以在 Gutenberg 和经典编辑器之间切换。在编写本文时,默认情况下,自定义文章类型将启用经典编辑器,可以通过添加第 12 行的代码,来启用 Gutenberg 编辑器。上面的代码将注册新的自定义文章类型,该类型将在 WordPress 管理员中显示,如下所示。


创建文章和自定义文章类型的模板

要为我们的新的文章类型 Product 创建模板,我们可以创建一个 product.php 文件并为其添加布局。很好,但是如果我们需要特定产品的不同布局怎么办?好吧……就像我说的那样……从 WordPress 4.7 开始,你可以在模板文件中使用新的特殊注释标题。在主题目录中创建一个名为 full-width-page-layout.php 的新文件,并在顶部添加以下代码片段。

<?php

/*

Template Name: Full-width page layout

Template Post Type: post,page,product

*/

这样就注册了新模板,用于文章、页面和自定义文章类型 Product。它将在经典和古腾堡编辑器的编辑页面右侧显示“发布属性”框,如下所示。



请注意,你可以将“Template Post Type:”的值更改为任何已注册的文章类型。因此,如果只希望将模板应用于 Product 文章类型,请更改标题,如下所示:

<?php

/*

Template Name: Full-width page layout

Template Post Type: product

*/

看起来很简单,却是功能非常强大的功能,希望这篇小文章能帮助你为 WordPress 网站创建更精彩的主题。

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读