single.php 和 page.php 有什么区别?今天我们来讲一下他们的区别和制作方法。
single.php 和 page.php 的主要区别
single.php : 发布帖子页面的模板
page.php:制作静态页面的模板
发布帖子页面
通常主要用于博客和新信息的发布,以及分类的划分等。
固定页面
经常主要用于“联系我们”、“隐私政策”、“简介”等页面,可以理解为单页,不能划分类别。
我们一般将要分类管理的页面创建为“发布页面”,将它们分类等,而为不需要分类的页面创建“固定页面”。
下面,我们将实际编写代码并创建 single.php 和 page.php。
如何制作single.php
首先介绍一下我正在使用的模板代码,然后再解释详细的代码。您可以按原样使用模板代码。
模板代码如下。
<!-- 发布帖子页面 -->
<section class="main_post">
<div class="main_post_wrap">
<div class="single_post_container">
<?php if (have_posts()) : ?> <
?php while ( have_posts()) : the_post(); ?>
<div class="post_meta">
<!-- 日期 -->
<p class="post_time"><?php the_time( get_option( 'date_format' ) ); </ p>
<!-- 类别 -->
<p class="post_cat"><?php $cat = get_the_category(); echo $cat[0]->cat_name; ?></p> </div>
<
!— 文章标题 —>
<h1 class="single_ttl"><?php the_title(); ?></h1>
<article class="detail_text">
<!-- 特色图片 -->
<p class="single_thumb"><?php if(has_post_thumbnail()) { the_post_thumbnail(); } ?></p> <!
-- 帖子正文 -->
< div 类="post_body"><?php the_content();?></div>
</article>
<?php endwhile; ?>
<?php else : ?>
<div>文章不存在。</div>
<?php endif; ?>
</div>
<!-- 边栏 -->
<?php get_sidebar(); ?>
</div>
</section>
如果将上面的代码复制粘贴到single.php文件中,就可以立即使用了。
给大家讲解一下重要的代码。
获取帖子的内容
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?> <
!-- post design -->
<?php endwhile; ?>
<?php else : ? >
<div> 文章不存在。</div>
<?php endif;
if语句和endif代码之间是显示文章的代码。就是一个“如果有文章,用while语句循环文章”的过程。我们在自定义 WordPress 时会经常看到它,所以让我们记住它。
模板标签
它是可以在 WordPress 中使用的专用代码。下面是我们的:
<!-- 日期 -->
<?php the_time( get_option( 'date_format' ) ); ?>
<!-- 类别 -->
<?php $cat = get_the_category(); echo $cat[0]->cat_name ; ?>
<!-- 帖子标题 -->
<?php the_title(); ?>
<!-- 特色图片 -->
<?php if(has_post_thumbnail()) { the_post_thumbnail()
; !-- 文章正文 - >
<?php the_content();?>
以上就是我这次使用的模板标签。您只需将它写在您希望它出现的地方即可使用它。还有其他有用的模板标签,将在下面的文章中详细说明。
如何制作page.php
在我的例子中,帖子页面和固定页面的设计是一样的,所以代码几乎是一样的。
<!-- 文章页面 -->
<section class="main_post">
<div class="main_post_wrap">
<div class="single_post_container">
<?php if (have_posts()) : ?> <
?php while ( have_posts()) : the_post(); ?>
<div class="post_meta">
<!-- 日期 -->
<p class="post_time"><?php the_time( get_option( 'date_format' ) ); </ p>
</div>
<!—文章标题—>
<h1 class="single_ttl"><?php the_title(); ?></h1>
<article class="detail_text">
<!-- 精选图片 -->
<p class="single_thumb"><?php if(has_post_thumbnail()) { the_post_thumbnail(); } ?></p>
<!-- 文章正文 -->
<div class="post_body"><?php the_content();?></div>
</article>
<?php endwhile; ?>
<?php else : ?>
< div > 文章不存在。</div>
<?php endif; ?>
</div>
<!-- 边栏 -->
<?php get_sidebar(); ?>
</div>
</section>
以上是静态页面模板的代码。
固定页面没有分类,所以结构和single.php一样,只是去掉了显示分类的代码。
如果您想对固定页面使用不同的设计,请自行定制 HTML 结构。如果您了解如何使用模板标签,您可以自由定制它。