这篇课程将讨论其他3个可以增加到日志中的元素。Else,post ID, 和 链接的 title 值。尽管它们是可选的,但是你几乎可以在我每一个免费的主题中都能找到。
开始之前,不要忘记启动 Xampp。
第1步
在 <?php endwhile; ?> 的下面输入以下代码:
<?php else : ?>
<div class=”post”>
<h2><?php _e(’Not Found’); ?></h2>
</div>
大致如下:
保存,但是你应该注意不到任何变化。我们应该返回教程 #5,主循环,去解释你刚才上面输入的是什么?
这里就是主循环的部分代码:
<?php if(have_posts()) : ?><?php while(have_posts()) : the_post(); ?>
<?php endwhile; ?>
<?php endif; ?>
第一,if(have_posts()) 检查你的博客是否有日志,第二,while(have_posts()) 执行 the_post() 去调用你的日志。而 Else 是当你的博客完全没有日志的时候执行的。 想一下 while() 和 endwhile; 应该嵌套在 if() 和 else :之间。 这就是为什么 <?php else : ?> 应该在 <?php endwhile; ?> 之后。
现在你知道什么是 else,当你没有任何日志或者当它找不到任何日志的时候,你想告诉 WordPress 怎么处理呢?让 WordPress 显示错误信息 Not Found,或者其他任何你想要的东西。你可以下载我的任一款主题,看一下它的 index.php文件怎么写的。
在上面的例子中,Not Found 错误信息是在 <?php _e(’ ‘); ?> 之中。如我上一篇所说,这不是必需的。
整个信息和代码 Not Found 外面有 <h2> 和 </h2>。这个同样也不是必需的。你可以简单使用:
<div class=”post”>
Not Found
</div>
但是,给这个错误信息使用上 <h2> (子标题)标签能够使它更明显,让你访问者注意到这个页面上没有任何东西。
那么 <div class=”post”> 和 </div> 用来做什么的呢?恩,你肯定不想你的错误信息在“茫茫蛮荒之地”之间滞留,对不?你用 <div class=”post”> 和 </div> 标签围住每篇日志。所以同样,尽管是错误信息不是真正的内容,但是它其实是像日志的文本。
第2步
增加 id=”post-<?php the_ID(); ?>” 到 <div class=”post”>
保存,然后刷新你的浏览器。然后 查看 > 页面源代码。你现在会发现现在每篇日志都附加上了一个数字或者说是日志 ID。the_ID() 只是调用每篇日志的 ID;仅此而已。
为什么使用它呢?这是用来定制个别的日志的面貌。后面,当你使用 style.css 文件去告诉你的主题日志将看起像怎么样。如果通过给每篇日志附加唯一的 ID,你就可以针对单独的一篇日志,使得它和其他日志看起来不一样。如果没有 ID,你将没有办法通过 style.css 文件使它和其他日志不一样。
你如何同时把 class 和 id 赋给同一个 DIV 标签呢?DIV 是标签,class 是一个属性,id 也是是一个属性。每个标签能拥有多个属性,如 DIV 就可以同时有 class 和 id这两个属性。(注释:id 是一个 XHTML 属性。the_ID() 是 PHP 函数。他们是不同的,)
第3步
增加 title=”<?php the_title(); ?>” 到日志的标题链接。
保存并刷新浏览器。然后再去查看你的源代码。 当查看它的源代码,查找任何日志的标题链接。如果日志的标题链接是 Hello World,那么他的左边应该有 title=”Hello World”。
title=”” 是 <a>(链接)标签的另一个属性。在双引号中的是链接的描述。在这里,每篇日志的标题也是链接的描述。这就是为什么要再次使用 the_title() 这个 PHP 函数。
如果你不使用 the_title() 作为 title=””的值,那么每篇日志标题链接将会有同样的描述。举个例子,如果用 title=”Click me” 取代 the_title(),每篇日志标题链接都将会用 Click me 作为描述。
现在,返回你的网页。把你光标移到任一一篇日志标题连接,描述信息将会弹出,那就是刚刚增加的。增加描述到你的链接是非常有用的,当你其他站点需要扫描你的博客的时候。如 Technorati.com,每次你发表日志的时候,WordPress 通知 Technorati 和其他网站你的博客已经更新了。Technorati 然后就会来到你的博客,扫描它,并索引得到一个你日志的摘要,这其中会包括你链接标题的描述。
下一篇将会涉及到后一页和前一页的导航链接。
本文转自“我爱水煮鱼”
原文地址:http://fairyfish.net/2007/06/08/wp-theme-lesson-5d-else-post-id-link-title/
暂无评论