三种方式打造WP页面

经过一段时间的研究WordPress,找到可行的三种打造WP页面的方式,首先是建立页面模板的方式,其次是相应页面上调用相应分类的方式,最后一个是调用最高层次的所有Page,也即写页面的时候指定父级别。

上次讲到:页面内容与你的日志无关!你的页面仅仅是独立的一个页面而已,你的日志也只是一篇一篇的日志和评论外再没有其它东西。的确Page和Post是平级的,两者谁也不属于谁。在里引用一下Hi Magic!的部分内容,个人认为说的有点道理。

对Wordpress有所研究后发现Page是与Post平级的,所以无法将Post归属于一个Page,Page和Post的区别在于 Page不接受Comment,当然你可以修改源码加入此功能,再有就是有的Theme导航条中列出Home以及所有的Page。似乎仍没有解决的办法,但Wordpress中在Post之上有个对象,那就是Category,可以利用其实现我想要的功能,即在不同的页面显示不同Category的文章。

此次重点讲第二种方式。

第一种方式:建立页面模板,写页面时调用其模板来建立Page。
代码如下:


<?php /*
     Template Name: Template Page
*/ ?>

详细内容还是请看如何定制WP页面模板。效果请看导航栏上的留言,留言页面就是这种模板方式建立的。

第二种方式:相应页面调用相应的单独分类。个人认为这种方式最简单。(准确讲不能说建立了页面,只能说某个页面上调用了相关分类而已。即点击分类查看是一个道理。)

上篇文章中留下疑问。即建立一个English页面和分类,如何让其仅仅调用Enlish的分类,却不调用其它分类。这样所有英文写的English的分类全部显示在English页面。

如何实现呢?

  • 首先,在你使用的Theme里面定位出页面导航栏的具体位置。
  • 然后,找到你想显示在页面里Category的具体URL,比如
  • /index.php/archives/category/english
    或用ID来调用分类,像这样:/?cat=45

  • 最后,将上述URL加入到你所要定义的链接中,我的具体情况如下

<div id="header">
<ul class="flag">
<li><a href="/index.php">cn</a></li>
<li><a href="/?cat=51">jp</a></li>
<li><a href="/?cat=45">en</a></li>
</ul>
</div>

:51是JP的分类ID;45就是EN的分类ID。)

我用cn,jp,en来代表三国国旗并建立相应分类,其实我建立的只是两个分类,Jananese分类和English分类。CN直接调用首页,你也完全可以建立分类。

如此调用就能把相应语言写的文章显示在相应页面上,即英文写的显示在英文页面上,而且显示与index一模一样,你可以阅读全文,也可以显示摘要。因为显示的完全是日志页,更不用修改模板来统一。

请点击HEAD右上角部分的各国国旗来查看其显示效果。

唯一的问题是CN既然是直接调用Index,他会显示所有你写的文章,包括英文文章。
那么怎么让其既调用Index,又仅仅显示中文呢 ?

找到Index.php文件把下面第2段代码放在主循环(loop)后面。我的具体情况如下


1.<?php  if (have_posts()) :  while (have_posts()) : the_post(); ?>
2.<?php if (in_category('45') && is_home()) continue; ?>

而这段代码是说明:如果在Main Page中有文章,请Pass掉来自ID号45的分类(即我的English分类)的文章,其它语言分类采用同样方式,这样他就不会显示英文,达到全部显示中文的效果。

还有一种就是


<?php if (is_home()) {query_posts("cat=-45");} ?>

即显示所有分类下的内容,除了45之外。
:这种方式至少在我的主题上显示错误,有待确认。)

第三种方式:调用最高层次的所有Page。
如果所有的页面都采用这种方式是很麻烦的,而且你必须每次写的时候都要指定父级别。


<?php wp_list_pages('title_li=&depth=1′); ?>

这段代码意思是:最后显示所有最高层次的Page。depth就是指Page中的层次。

在WordPress中写页面的时候可以指定父Page是谁,所以Page之间是有层次的,当然你也可以像Hi Magic!一样,先显示Home,再显示所列的Category,最后显示所有最高层次的Page。因为他的站点上只有About这一个Page,所以他被显示在最后了,而且也不需另外指定父Page。

我的收藏页面和关于页面就是,只不过不用特别指定,本身就是父级别。

OK, 先写到这里,可喜可贺的是本博客模板更加趋于完美、功能强大;希望不是很杂乱,如有错误或不太明白请留言。

Comments : 7Add Your Own

Reply  1. sun 
09-04-26 (Sun) 20:36

太好了,真是我需要的,应该多出些教程

    Reply  2. YoungCheon 
    09-04-27 (Mon) 11:26

    呵呵 对吧 你看完就知道页面如何建立了 其实很简单

Reply  3. Alex 
09-09-15 (Tue) 1:06

Hi

我想实现你的第二种,却怎么也实现不了,能不能指点指点,谢谢!

    Reply  4. YoungCheon 
    09-09-17 (Thu) 12:00

    把你的QQ号留下来,我上去之后找你,不是每天都在,所以才看到

        5. Alex 
      09-09-17 (Thu) 23:42

      QQ:286381630…

Reply  6. Alex 
09-09-15 (Tue) 1:18

如何能准确定位页面导航栏的位置?
谢谢!

Reply  7. LICB 博客 
11-05-27 (Fri) 21:07

很有用,学习了!

Comment Form
E_mail (*)(Will not be published)
Remember Personal Info

TrackPings : 4

Trackback URL for this entry
http://www.teikinka.com/wppage.html/trackback
Listed below are links to weblogs that reference
三种方式打造WP页面 From 腾信家
pingback From 在Wordpress的单独页面中实现post | 黑梦 08-10-01 (Wed) 22:16

[...] 这里还有另一种方法,也可以实现 [...]

pingback From 在Wordpress的单独页面中实现post 08-10-02 (Thu) 22:05

[...] 这里还有另一种方法,也可以实现 This entry was posted on 星期四, 10月 2nd, 2008 at 6:55 上午 and is filed under 时尚资源. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or TrackBack URI from your own site. [...]

pingback From 搞定单独页面显示分类文章 at Littlest Things 10-03-29 (Mon) 8:31

[...] 用到的参考文章有: WordPress首页不显示指定分类文章 三种方式打造WP页面 [...]

pingback From 搞定单独页面显示分类文章 | Littlest Things 10-09-26 (Sun) 13:36

[...] WordPress首页不显示指定分类文章 三种方式打造WP页面 Filed under [...]

HOME > WordPress > 三种方式打造WP页面

Most Viewed
Recent Entries
Feeds
Meta
    Creative Commons License

    本站全部作品采用
    知识共享署名 - 非商业性使用 - 相同方式共享
    3.0 Unported许可协议进行许可。



Return to page top