0

我无法创建有条件地显示某些内容的模板。这是一个以文章和教程为特色的博客。教程将以一个包含有关教程的附加信息的框开始。额外信息在自定义字段中输入。

在我的“single.php”文件中,我有以下代码:

<section class="entry-content group">
    <?php if ( in_category('tutorials') ) { echo '
        <div class="tutorial-info-box group">
            <h5>About This Tutorial</h5>
            <ul class="tutorial-stats">
                <li> <span> Difficulty: </span> </li>
                <li> <span> Prerequisites: </span> </li>
                <li> <span> Time required: </span> </li>
                <li> <span> Will improve your knowledge of: </span> </li>
            </ul>
        </div>
    '; } ?>
    <?php the_content(); ?>
</section>

以上仅适用于在“教程”类别中的帖子上呈现此框。当我尝试包含来自自定义字段的数据时,我遇到了麻烦,如下所示:

<section class="entry-content group">
    <?php if ( in_category('tutorials') ) { echo '
        <div class="tutorial-info-box group">
            <h5>About This Tutorial</h5>
            <ul class="tutorial-stats">
                <li> 
                    <span> Difficulty: </span>
                    <?php get_post_meta( $post->ID, 'difficulty', true ); ?> 
                </li>
                <li> 
                    <span> Prerequisites: </span>
                    <?php get_post_meta( $post->ID, 'prerequisites', true ); ?>  
                </li>
                <li> 
                    <span> Time required: </span> 
                    <?php get_post_meta( $post->ID, 'time', true ); ?>
                </li>
                <li> 
                    <span> Will improve your knowledge of: </span>
                    <?php get_post_meta( $post->ID, 'improve', true ); ?>
                </li>
            </ul>
        </div>
    '; } ?>
    <?php the_content(); ?>
</section>

我最终只有一个空白的白色屏幕。我假设这是某种语法错误,但我无法弄清楚它是什么。任何人都可以帮忙吗?提前致谢!!!

4

1 回答 1

0

<?php您在字符串中包含一个打开。更正为:

<section class="entry-content group">
    <?php if ( in_category('tutorials') ): ?>
        <div class="tutorial-info-box group">
            <h5>About This Tutorial</h5>
            <ul class="tutorial-stats">
                <li> 
                    <span> Difficulty: </span>
                    <?php echo  get_post_meta( $post->ID, 'difficulty', true ); ?> 
                </li>
                <li> 
                    <span> Prerequisites: </span>
                    <?php echo get_post_meta( $post->ID, 'prerequisites', true ); ?>  
                </li>
                <li> 
                    <span> Time required: </span> 
                    <?php echo get_post_meta( $post->ID, 'time', true ); ?>
                </li>
                <li> 
                    <span> Will improve your knowledge of: </span>
                    <?php echo get_post_meta( $post->ID, 'improve', true ); ?>
                </li>
            </ul>
        </div>
    <?php endif; ?>
    <?php the_content(); ?>
</section>
于 2012-06-17T15:57:30.770 回答