搬码资源网广告位搬码资源网广告位

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

上面是搬码源码网 abnma.com 经由过程收集网络收拾整顿的代码片断。搬码源码网小编此刻分享给各人,也给各人做个参考。

信赖许多主题开发者都晓得,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 网站创立更出色的主题。

以上是搬码源码网(abnma.com)为你网络收拾整顿的全数代码内容,但愿文章可以或许帮你解决所碰到的步伐开提问题。假如感觉搬码源码网网站内容还不错,接待将搬码源码网网站保举给步伐员挚友。

总结

以上是搬码源码网为你网络收拾整顿的WordPress为文章和自界说文章类型添加自界说模板全数内容,但愿文章可以或许帮你解决WordPress为文章和自界说文章类型添加自界说模板所碰到的步伐开提问题。

假如感觉搬码源码网网站内容还不错,接待将搬码源码网网站保举给步伐员挚友。

0
分享到:
搬码资源网广告位

评论0

请先

为了配合净网行动 , 本站下架所有娱乐源码 , 如有疑问 , 请联系站长qq 43233524
没有账号? 忘记密码?