當(dāng)前位置:首頁>WordPress建站>WordPress開發(fā)>WordPress 5.5+ 可將參數(shù)傳遞給模板文件

WordPress 5.5+ 可將參數(shù)傳遞給模板文件

多年來,希望將數(shù)據(jù)傳遞到模板文件的主題開發(fā)人員不得不使用不太理想的解決方法。這包括使用全局變量、?set_query_var()include( locate_template() )?模型或自己版本的??get_template_part()等等。

WordPress 5.5開始??,模板加載功能將允許使用$args?參數(shù)將其他參數(shù)傳遞給匹配的模板文件。

受影響的函數(shù)

  1. get_header()
  2. get_footer()
  3. get_sidebar()
  4. get_template_part()
  5. locate_template()
  6. load_template()

為了提供適當(dāng)?shù)纳舷挛模嚓P(guān)的動(dòng)作掛鉤也已更新為傳遞此新$args參數(shù)。

  • get_header
  • get_footer
  • get_sidebar
  • get_template_part_{$slug}
  • get_template_part

注意:?get_search_form()??從[44956]開始,已經(jīng)接受并將其他參數(shù)傳遞給搜索表單模板。但是,該$args參數(shù)是在與上述掛鉤同時(shí)添加的。它們是:

  • pre_get_search_form?(行動(dòng))
  • search_form_format(過濾)
  • get_search_form?(過濾)

示例

<?php
get_template_part( 
    'foo', 
    null, 
    array( 
        'class'          => 'user',
        'arbitrary_data' => array(
            'foo' => 'baz',
            'bar' => true,
        ),
        ...
    )
);

在上面的示例中,可以通過本地范圍的?$args 變量在模板?foo.php?內(nèi)訪問get_template_part()通過$args變量傳遞的其他數(shù)據(jù)。

<?php
// Example foo.php template.
 
// Set defaults.
$args = wp_parse_args(
    $args,
    array(
        'class'          => '',
        'arbitrary_data' => array(
            'foo' => 'fooval',
            'bar' => false,
        ),
        ...
    )
);
?>
 
<div class="widget <?php echo esc_html_class( $args['class'] ); ?>">
    <?php echo esc_html( $args['arbitrary_data']['foo'] ); ?>
</div>

注意:使用此新功能時(shí),任何當(dāng)前包含$args變量的模板文件都應(yīng)注意。對(duì)已加載的模板文件的$args任何修改將覆蓋使用上述函數(shù)傳遞的所有值。

該功能請(qǐng)求是8年前提交的,大家都久等了,感謝開發(fā)人員的努力!

要了解更多信息,請(qǐng)查看#21676

聲明:本站所有文章,如無特殊說明或標(biāo)注,均為本站原創(chuàng)發(fā)布。任何個(gè)人或組織,在未征得本站同意時(shí),禁止復(fù)制、盜用、采集、發(fā)布本站內(nèi)容到任何網(wǎng)站、書籍等各類媒體平臺(tái)。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。

給TA打賞
共{{data.count}}人
人已打賞
歡迎關(guān)注WordPress大學(xué)公眾號(hào) WPDAXUE
WordPress開發(fā)

WordPress 5.5+ 注冊(cè)和注銷古騰堡塊模型

2020-7-17 9:21:10

WordPress開發(fā)

WordPress 5.5+ 如何自定義XML 站點(diǎn)地圖功能【開發(fā)者】

2020-7-23 8:14:38

0 條回復(fù) A文章作者 M管理員
    暫無討論,說說你的看法吧
?
個(gè)人中心
購物車
優(yōu)惠劵
今日簽到
有新私信 私信列表
搜索

修文县| 内江市| 襄垣县| 襄城县| 江山市| 嘉定区| 岗巴县| 张北县| 锡林浩特市| 紫云| 安陆市| 乐至县| 原平市| 五大连池市| 泸定县| 酒泉市| 根河市| 金乡县| 新丰县| 平山县| 外汇| 克什克腾旗| 苍南县| 唐山市| 喜德县| 天全县| 泗洪县| 南雄市| 乌兰浩特市| 翁牛特旗| 寻甸| 思南县| 大连市| 阿拉善盟| 织金县| 全椒县| 巴林左旗| 丰都县| 延津县| 镇雄县| 邢台市|