该模板内置哪种代码?

时间:2019-03-27 20:12:41

标签: php html wordpress wordpress-theming custom-wordpress-pages

我正在尝试创建自定义页面模板,但是我正在使用的主题中的page.php文件中的代码不是我以前所经历的。

TL; DR:这种代码/编码有名称吗?

我通常能够简单地在php文件的主体中添加HTML,但是这里的所有内容都是循环的(?),而且我不确定如何在其中添加任何HTML。

因为我不知道Google应该做什么,所以我不知道如何弄清楚这一点,甚至不知道从哪里开始。

这是page.php文件中的代码:

<?php /* Template Name: Custom Template Name */


get_header();


list($masters_layout) = theme_page_layout_scheme();


echo '<!--_____ Start Content ____ -->' . "\n";


if ($masters_layout == 'r_sidebar') {
    echo '<div class="content entry" >' . "\n\t";
} elseif ($masters_layout == 'l_sidebar') {
    echo '<div class="content entry fr" >' . "\n\t";
} else {
    echo '<div class="middle_content entry" >';
}


if (have_posts()) : the_post();
    $content_start = substr(get_post_field('post_content', get_the_ID()), 0, 15);


    if ($masters_layout == 'fullwidth' && $content_start === '[masters_row') {
        echo '</div>' . 
        '</div>';
    }


    the_content();

    echo '<div class="cl"></div>';


    if ($masters_layout == 'fullwidth' && $content_start === '[masters_row') {
        echo '<div class="content_wrap ' . $masters_layout . 
        ((is_singular('project')) ? ' project_page' : '') . 
        ((is_singular('profile')) ? ' profile_page' : '') . 
        '">' . "\n\n" . 
            '<div class="middle_content entry" >';
    }


    wp_link_pages(array( 
        'before' => '<div class="subpage_nav" >' . '<strong>' . esc_html__('Pages', 'themename') . ':</strong>', 
        'after' => '</div>' . "\n", 
        'link_before' => ' [ ', 
        'link_after' => ' ] ' 
    ));


    comments_template();
endif;


echo '</div>' . "\n" . 
'<!-- _____ Finish Content _____ -->' . "\n\n";


get_footer();

我曾经经常看到封闭的标记(?)和HTML扔在那里。例如:

<?php /* Template Name: Custom Template Name */ ?>
<?php get_header(); ?>

<!-- start content container -->
<div class="container">
<div class="row dmbs-content">

    <?php //left sidebar ?>

    <div class="main-content">

        <?php // theloop
        if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

            <h2 class="page-header"><?php the_title() ;?></h2>
            <?php the_content(); ?>
            <?php wp_link_pages(); ?>
            <?php comments_template(); ?>

        <?php endwhile; ?>
        <?php else: ?>

            <?php get_404_template(); ?>

        <?php endif; ?>

    </div>

    <?php //get the right sidebar ?>

</div>
</div>
<!-- end content container -->

<?php get_footer(); ?>

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

那只是PHP。当然可以使用另一种样式...模板只是使用echo函数来打印HTML字符串,而不是在HTML位附近打开和关闭php。

<div class="cool-markup-bro">
  <?php some_function(); ?>
</div>

...与...相同:

<?php echo '<div class="cool-markup-bro">'; 
some_function();
echo '</div>'; ?>