海豚的WordPress Theme教程 part5

这次讲sidebar.php和footer.php,这两个其实能讲的不多,一般来说各位拿到一个模版最可能改的就是这两个文件了。

sidebar.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
  <div id="menu">
  <div id="nav">
  <ul>
  <li><a href="<?php bloginfo('url'); ?>">首页</a></li>
  <li><a href="1" title="1">留言</a></li>
  <li><a href="2" title="2">链接</a></li>
  <li><a href="3" title="3">存档</a></li>
  </ul>
  </div>
  <!-- nav -->
  <div id="about">
  <h2>About Me</h2>
  <p>关于我</p>
  </div>
  <div id="search">
  <?php _e('Search'); ?>
  <?php include (TEMPLATEPATH . '/searchform.php'); ?>
  </div>
  <div id="rss">
  <ul>
  <li><a href="<?php bloginfo('rss2_url'); ?>">RSS Feed</a></li>
  <li><a href="<?php bloginfo('comments_rss2_url'); ?>">RSS Comments</a></li>
  </ul>
  </div>
  </div>
  <!-- menu -->
  <div id="sub-menu">
  <div class="subleft">
  <h2>存档</h2>
  <ul>
  <?php wp_get_archives('type=monthly'); ?>
  </ul>
  </div>
  <div class="subcenter">
  <ul>
  <?php get_links_list(); ?>
  </ul>
  </div>
  <div class="subright">
  <h2>文章分类</h2>
  <ul>
  <?php wp_list_cats('optioncount=1'); ?>
  </ul>
  </div>
  </div>

KD02模版的sidebar被分成了两个部分:位于右边的部分提供导航菜单、“关于我”、搜索和Feed订阅地址,位于footer上方的分成了三栏来显示一些信息。
line1-line24: 是右侧的sidebar。
line2-line9: 这是导航菜单的部分,用css控制一下li的表现就很容易实现,如果菜单比较多或者少可以调整一下宽度。
line11-line13: “关于我”的部分,没什么说的。
line14-line17: 搜索部分。
line18-line23: Feed订阅地址。
line26-line48: 这是footer上方的三栏内容,用三个div来分隔,内容不是很重要,各位都会有自己的习惯。
这里提一下sidebar的阴影制作:先决定需要的栏宽;然后做一个1px高度、栏宽宽度40px的jpg文件;左右作20px适当的灰色;相应css如下。很简单吧,不用作大图片,会根据div的高度自适应。

1
2
3
4
5
6
7
8
9
10
   #menu {
   float:right;
   overflow:hidden;
   display:inline-block;
   font-size:0.8em;
   width:213px;
   margin: 220px 0 0 0;
   background: url(images/fade.jpg) repeat-y;
   padding: 0 20px 10px 20px ;
   }

footer.php

1
2
3
4
5
6
7
8
   <div id="footer">
   <?php bloginfo('name'); ?> is proudly powered by <a href="http://wordpress.org">WordPress</a>
   </div>
   </div>
   <!-- page -->
   <?php do_action('wp_footer'); ?>
   </body>
   </html>

footer没什么内容,主要就是一些站点的相关信息。计数器之类的非本地站点代码我也建议放在footer里,因为放在header里很可能因为网络原因拖慢整个页面的读入速度。