- 2008-03-05 (Wed) 12:57
- • WordPress •
经过一段时间的研究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,比如
- 最后,将上述URL加入到你所要定义的链接中,我的具体情况如下
/index.php/archives/category/english
或用ID来调用分类,像这样:/?cat=45
<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
-
2. YoungCheon
09-04-27 (Mon) 11:26呵呵 对吧 你看完就知道页面如何建立了 其实很简单
-
4. YoungCheon
09-09-17 (Thu) 12:00把你的QQ号留下来,我上去之后找你,不是每天都在,所以才看到
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 [...]

