特定页面的GET_TEMPLATE_PART

时间:2019-07-24 作者:Anake.me

我已尝试在header.php, 但无法正确加载。我收到以下错误:

致命错误:未捕获错误:调用未定义函数get\\u tempalte\\u part()

这是我的header.php:

<html class="m-0">
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
        <title>*TITLE*</title>
        <?php wp_head(); ?>
    </head>

    <body <?php body_class(); ?> >

            <section id="header" class="container-fluid no-gutters">

                <?php
                if( is_page( \'blog\' ) ) {
                    get_template_part( \'inc/fd-\', \'blog\' );
                } else {
                    get_tempalte_part( \'inc/fd-\', \'default\' );
                }
                ?>

                <?php if( is_search() ) {
                    fd_title_search();
                } else if( is_product() || is_account_page() || is_page( \'contact-us\' ) || is_page( \'shipping\' ) || is_page( \'privacy\' ) || is_page( \'terms\' ) || is_page( \'faq\' ) || is_page( \'about-us\' ) || is_page( \'home\' ) ) {
                    echo \'\';
                } else if( is_product_category() ) {
                    fd_title_product_category();
                } else if( is_shop() ) {
                    fd_title_shop();
                } else if( is_page( \'wishlist\' ) ) {
                    fd_title_wishlist();
                } else {
                    fd_title_default();
                } ?>

            </section>
我正在尝试加载fd-blog.php 如果是“博客”页面,则加载fd-default.php, 但不管我怎么努力,我总是会出错!我做错了什么?

2 个回复
最合适的回答,由SO网友:Sally CJ 整理而成

这只是对另一个答案的补充。

我正在尝试加载fd-blog.php 如果是“博客”页面,则加载fd-default.php

要实际加载模板文件,应删除破折号(-):

get_template_part( \'inc/fd\', \'blog\' );    // loads inc/fd-blog.php
get_template_part( \'inc/fd\', \'default\' ); // loads inc/fd-default.php
所以只要inc/fd, 下面是中的相关代码get_template_part:

// Example when you call get_template_part( \'inc/fd\', \'blog\' ), $name below is \'blog\'.
if ( \'\' !== $name ) {
    $templates[] = "{$slug}-{$name}.php";
}

SO网友:Jacob Peattie

你拼错了:get_tempalte_part, “tempalte”,需要get_template_part().