在本章节中,我们将学习到WordPress的一些主题基础

主题基础主要有:

1.WordPress的模块文件知识

2.模板文件工作流程以及优先级

3.主题里的基本循环

 

主题基础

WordPress主题包含了许多文件,其中有模板页面。模板页面是层级结构,这意味着如果一个页面不存在,wordpress可以调用下一个页面。

WordPress主题也包括了图像文件,css样式表,和php代码以及模板页面,你可在主题中使用不同的模板。

Include是一个模板页面,可以包含多个页面,例如头部页面,脚部页面,侧边栏页面等。

WordPress主题有许多分开的php代码文件,将一个主题分解为不同的模块,这样使得主题没那么混乱。

WordPress主题主要文件模块

模板工作流程,判断使用哪个模块

WordPress主题文件模块优先级

当访问默认页面时

  • page.php胜过index.php
  • Home.php胜过index.php
  • front-page.php 胜过index.php

当访问个人文章和其他

  • single.php 胜过 index.php
  • single-post_type.php 胜过single.php
  • single-attachment.php 胜过 single.php

当访问文章列表和搜索结果

  • archive.php 胜过 index.php
  • search.php 胜过 index.php
  • category.php 胜过 archive.php
  • taxonomy.php 胜过 archive.php
  • tag.php 胜过 archive.php
  • author.php 胜过 archive.php

当访问页面无法找到

  • 404.php胜过所有其他页面

WordPress这样做是为了灵活性,php文件包含了头部,脚部,侧边栏等所有代码,将主题分解成不同的模块,可以让你更容易设计出不同类型的内容,布局和插件。让我们先创建一个简单的主题,然后继续创建更多的模板文件。

主题里的基本循环

循环在wordpress主题中是非常重要的,它能够按顺序显示你的帖子,并让你自定义显示各式各样的标签和标记

了解循环在wordpress中是非常有用的,可以让你定制出任何特殊的要求或效果。

下面我们来创建一个基本的循环。

1.找到代码

<article class="post">
 <h2><a href="#">Really Long Article Title Name The More Text 
The Better Cause You Never Know</a></h2>
 <p class="entry-meta">by Author Name for <a href="#">Column 
Type</a></p>
 <div class="entry-content"><!--//post-->
 <p>Lorem ipsum dolor sit amet, consectetuer adipiscing 
elit. Sed a eros nec orci volutpat vestibulum. Ut pellentesque 
sagittis metus. In euismod tellus id ante.</p> 
 <blockquote class="left margin-right third bg-dark2 imgquote-dark bdr rnd rnd-right shdw-centered">Lorem ipsum dolor 
sit amet, consectetuer adipiscing elit.</blockquote>
 <p>Lorem ipsum dolor sit amet, consectetuer adipiscing 
elit. Sed a eros nec orci volutpat vestibulum. Ut pellentesque 
sagittis metus. In euismod tellus id ante.</p>
 </div><!--//.entry-content-->
 <p class="left"><a class="more" href="#">Read more 
&raquo;</a></p>
 <p class="right"><a class="comments-count" 
href="#">150</a></p>
 <div class="push"></div>
</article>

我们发现有的代码不知出现一次,于是我们需要循环输出。

2.在<article>标签之前添加代码,开始我们的循环。

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

接下来用代码显示帖子标题,替换掉原来的伪静态标题。

<h2 class=""><a href="<?php the_permalink() ?>" rel="bookmark" 
title="Permanent Link to <?php the_title_attribute(); ?>"><?php 
the_title();?></a></h2>

the_title();(获取文章标题函数)

3.接下来,添加显示文章内容的代码

<div class="entry-content">
<?php the_content();?></div>

the_content();(显示文章内容函数)

4.在文章内容中替换掉链接的代码

<p class="left"><a class="more" href="<?php the_permalink() 
?>">Read more &raquo;</a></p>

5.关闭循环,否则循环将没有作用。

在</article>标签后添加代码如下

<?php endwhile; ?>
<?php else : ?>
 <h2 class="center">Not Found</h2>
 <p class="center">Sorry, but you are looking for 
something that isn't here.</p>
 <?php get_search_form(); ?>
<?php endif; ?>

6.保存所有页面,然后在浏览器中刷新显示。

总的页面代码如下:

<?php if (have_posts()) :?>
 <?php while (have_posts()) : the_post();?> 
 <article class="post">
 <h2>a href="<?php the_permalink() ?>" rel="bookmark" 
title="Permanent Link to <?php the_title_attribute(); ?>"><?php 
the_title();?></a></h2>
 <p class="entry-meta">by Author Name for <a href="#">Column 
Type</a></p>
 <div class="entry-content"><!--//post-->
 <?php the_content();?>
 </div><!--//.entry-content-->
 <p class="left"><a class="more" href="<?php the_permalink() 
?>">Read more &raquo;</a></p>
 <p class="right"><a class="comments-count" href="#">150</a></p>
 <div class="push"></div>
 </article>
<?php endwhile; ?>
<?php else : ?>
 <h2 class="center">Not Found</h2>
 <p class="center">Sorry, but you are looking for something 
that isn't here.</p>
 <?php get_search_form(); ?>
<?php endif; ?>

跟原来的代码相比,新的循环体系能够循环输出所有标题,文章和所有链接,更加灵活。

专业网站开发网页设计公司

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

wechat logo