wordpress高级技巧大全 wp_list_categories函数用法详解

wp_list_categories函数用法详解
Posted in 基础使用, 辐射鱼
本以为写完新手教程之后,可以不写新手应用方面的文章了的,可今天又有朋友在群里问如何显示每个分类下文章数量这个基础性问题,看来Wordpress中文化还有很长的一段路要走,我们任重而道远啊!好,解决你的问题先:
正如标题所说,Wordpress是用wp_list_categories这个函数来显示分类的,其用法是:
<?php
< ?php wp_list_categories(‘arguments’); ?>
?>
arguments即参数,默认参数设置为:
1. $defaults = array(
2. ‘show_option_all’ => ”, 不列出分类链接
3. ‘orderby’ => ‘name’, 按照分类名排序
4. ‘order’ => ‘ASC’, 升序排列
5. ‘show_last_update’ => 0, 不显示分类中日志的最新时间戳
6. ‘style’ => ‘list’,列表显示分类
7. ‘show_count’ => 0, 不显示分类日志数量
8. ‘hide_empty’ => 1, 不显示没有日志的分类
9. ‘use_desc_for_title’ => 1, 显示分类描述
10. ‘child_of’ => 0, 不限制子分类
11. ‘feed’ => ”, 不显示feed
12. ‘feed_image’ => ”, 不显示feed图片
13. ‘exclude’ => ”, 不显示该分类
14. ‘hierarchical’ => true, 分层次显示父/子分类
15. ‘title_li’ => __(‘Categories’), 用“Categories”为当前分类列表的标题
16. ‘echo’ => 1, 显示(echos) 分类
17. ‘depth’ => 0 不限制列表深度
18. );
用法举例:
1. 按照分类名排序,并只显示 ID 为1、2、3和4的分类:
1. <ul>
2. < ?php
3. wp_list_categories(‘orderby=name&include=1,2,3,4’); ?>
4. </ul>
5. ?>
2. 按照分类名排序,并显示每个分类的日志数,但不显示 ID 为10的分类
1. <ul>
2. < ?php
3. wp_list_categories(‘orderby=name&show_count=1&exclude=10’); ?>
4. </ul>
5. ?>
3. 显示或隐藏列表标题
title_li 这个参数用于显示或者隐藏分类列表的标题,它的默认值为’(__(’Categories’)’,即显示分类列表的标题,如果不设置或设置为空,它将什么 也不显示。下面的例子将不显示id为4和7的分类,并不显示list_categories列表的标题:
1. <ul>
2. < ?php
3. wp_list_categories(‘exclude=4,7&title_li=’); ?>
4. </ul>
5. ?>
接下来的例子是仅仅只显示 ID为5、9和23的分类,并且列表标题显示为“Poetry”表:
1. <ul>
2. < ?php
3. wp_list_categories(‘include=5,9,23&title_li=<h2>’ . __(‘Poetry’) . ” ); ?>
4. </ul>
5. ?>
4. 仅显示某个分类下的子分类
下面的示例代码生成了 ID 为8的父分类下的子分类根据其 ID 进行排序的链接列表,它会显示每个分类下的文章数,并且隐藏链接的 title 标签中的分类描述,注意:如果父分类下没有任何文章,那么父分类将不会显示(读起来貌似很难理解,不过照着做就理解了)
1. <ul>
2. < ?php wp_list_categories(‘orderby=id&show_count=1
3. &use_desc_for_title=0&child_of=8’); ?>
4. </ul>
5. ?>
5. 显示带有 RSS Feed 链接的分类列表
面代码根据分类名对分类列表排序,并显示每个分类下的文章数和 RSS 的 Feed 链接:
1. <ul>
2. < ?php
3. wp_list_categories(‘orderby=name&show_count=1&feed=RSS’); ?>
4. </ul>
5. ?>
还可以使用 RSS 图标代替 RSS 链接
1. <ul>
2. < ?php
3. wp_list_categories(‘orderby=name&show_count=1
4. &feed_image=/images/rss.gif’); ?>
5. </ul>
6. ?>
好了,问题基本解决了,有什么不懂请提出来!
翻译这篇文章好累啊,老臭老长的,很多人还叫嚣看不懂,不能再简单啦!老规矩,贴下原文地址。
谁家有多的月饼,掷过来犒劳犒劳先?!嘿嘿,笑话了,今天是中秋节,本鱼代表Wopus团队全体成员在这里真诚的祝福大家“千好万好事事好、月圆情圆人团圆”!

————————————————————————————————————–

如何使用query_posts调用日志
Posted in 主题DIY, 辐射鱼
感谢 Yofox 同学的投稿
提示:使用 query_posts 来控制日志的调用。

它允许你控制日志显示的内容、显示的位置、显示的方式。这个强大的函数可以帮助你完成个性化设计。
调用最新日志列表:
下面的代码将显示最新的 5 篇日志:
1. < ?php query_posts(‘showposts=5’); ?>
2.    <ul>
3.    < ?php while (have_posts()) : the_post(); ?>
4.    <li><a href=”<?php the_permalink() ?>”>< ?php the_title(); ?></a></li>
5.    < ?php endwhile;?>
6.    </ul>
调用特定日志列表:
假设 ID 为 2 的目录是你的特别目录,你想在侧边栏中显示该目录下的 5 篇最新日志:
1. < ?php query_posts(‘cat=2&showposts=5’); ?>
2.    <ul>
3.    < ?php while (have_posts()) : the_post(); ?>
4.    <li><a href=”<?php the_permalink() ?>”>< ?php the_title(); ?></a></li>
5.    < ?php endwhile;?>
6.    </ul>
调用排除特定的目录:
你可以使用 query_posts 来排除显示特定目录的日志,下面的代码将排除 ID 为 2 的目录,请注意 ID 前面的负号:
1. < ?php query_posts(‘cat=-2’); ?>
2.     <ul>
3.       < ?php while (have_posts()) : the_post(); ?>
4.       <li><a href=”<?php the_permalink() ?>”>< ?php the_title(); ?></a></li>
5.       < ?php endwhile;?>
6.     </ul>
总结:如果要调用多个分类下的文章,使用例如”cat=2,3,4″。(不含引号),如果要排除多个分类下的文章,同样是使用例如”cat=-2,-3,-4″。(不含引号)

如何使用query_posts调用日志
Posted in 主题DIY, 辐射鱼
感谢 Yofox 同学的投稿
提示:使用 query_posts 来控制日志的调用。

它允许你控制日志显示的内容、显示的位置、显示的方式。这个强大的函数可以帮助你完成个性化设计。
调用最新日志列表:
下面的代码将显示最新的 5 篇日志:
1. < ?php query_posts(‘showposts=5’); ?>
2.    <ul>
3.    < ?php while (have_posts()) : the_post(); ?>
4.    <li><a href=”<?php the_permalink() ?>”>< ?php the_title(); ?></a></li>
5.    < ?php endwhile;?>
6.    </ul>
调用特定日志列表:
假设 ID 为 2 的目录是你的特别目录,你想在侧边栏中显示该目录下的 5 篇最新日志:
1. < ?php query_posts(‘cat=2&showposts=5’); ?>
2.    <ul>
3.    < ?php while (have_posts()) : the_post(); ?>
4.    <li><a href=”<?php the_permalink() ?>”>< ?php the_title(); ?></a></li>
5.    < ?php endwhile;?>
6.    </ul>
调用排除特定的目录:
你可以使用 query_posts 来排除显示特定目录的日志,下面的代码将排除 ID 为 2 的目录,请注意 ID 前面的负号:
1. < ?php query_posts(‘cat=-2’); ?>
2.     <ul>
3.       < ?php while (have_posts()) : the_post(); ?>
4.       <li><a href=”<?php the_permalink() ?>”>< ?php the_title(); ?></a></li>
5.       < ?php endwhile;?>
6.     </ul>
总结:如果要调用多个分类下的文章,使用例如”cat=2,3,4″。(不含引号),如果要排除多个分类下的文章,同样是使用例如”cat=-2,-3,-4″。(不含引号)
如何使用query_posts调用日志
Posted in 主题DIY, 辐射鱼
感谢 Yofox 同学的投稿
提示:使用 query_posts 来控制日志的调用。

它允许你控制日志显示的内容、显示的位置、显示的方式。这个强大的函数可以帮助你完成个性化设计。
调用最新日志列表:
下面的代码将显示最新的 5 篇日志:
1. < ?php query_posts(‘showposts=5’); ?>
2.    <ul>
3.    < ?php while (have_posts()) : the_post(); ?>
4.    <li><a href=”<?php the_permalink() ?>”>< ?php the_title(); ?></a></li>
5.    < ?php endwhile;?>
6.    </ul>
调用特定日志列表:
假设 ID 为 2 的目录是你的特别目录,你想在侧边栏中显示该目录下的 5 篇最新日志:
1. < ?php query_posts(‘cat=2&showposts=5’); ?>
2.    <ul>
3.    < ?php while (have_posts()) : the_post(); ?>
4.    <li><a href=”<?php the_permalink() ?>”>< ?php the_title(); ?></a></li>
5.    < ?php endwhile;?>
6.    </ul>
调用排除特定的目录:
你可以使用 query_posts 来排除显示特定目录的日志,下面的代码将排除 ID 为 2 的目录,请注意 ID 前面的负号:
1. < ?php query_posts(‘cat=-2’); ?>
2.     <ul>
3.       < ?php while (have_posts()) : the_post(); ?>
4.       <li><a href=”<?php the_permalink() ?>”>< ?php the_title(); ?></a></li>
5.       < ?php endwhile;?>
6.     </ul>
总结:如果要调用多个分类下的文章,使用例如”cat=2,3,4″。(不含引号),如果要排除多个分类下的文章,同样是使用例如”cat=-2,-3,-4″。(不含引号)

—————————————————————–
我在Wordpress 博客优化方法汇总中提到过 WordPress 的 object-cache 对象缓存功能。WordPress Object Cache 可以将一个耗时查询或者运算结果存储到一个缓存文件,这样就可以让我们不用老是重复到数据库中获取不变的数据,以缩短用户查看页面的速度。那么,我们如何 开启它呢?
1. PHP 需要安装上 Memcached 扩展
是否安装了 Memcached 扩展请咨询服务器管理员,庆幸的是,WopusIDC 的空间已经安装上了 Memcached 扩展,各位可以放心的使用这个功能。
2. 编辑 wp-config.php 文件,在 WP_LANG 后面添加如下代码:
// Enable the WordPress Object Cache:
define(ENABLE_CACHE, true);
3. 新建wp-content/cache目录,并确保可写
4. 下载 object-cache.php 文件并存放到wp-content 目录
下载地址:http://code.google.com/p/wopus/downloads/list
我在 Thirdinfo.com 中启用 WordPress Object Cache ,并结合 WordPress 终极优化手册进行优化后,首页数据库查询次数降到只有区区3次,不仅提高了 WordPress 的访问速度,同时还减低了数据库的负载,真是一举两得,快哉快哉!
————————————————————————

WordPress终极优化手册
Posted in wordpress基础, 安装详解, 技术分享, 推荐插件, 辐射鱼
Wordpress 是现今非常流行的Blog系统,功能非常强大,插件和模板众多,易于扩充功能。很多朋友都用它来搭建Blog、网上商城、CMS等等。但未经优化过 WordPress,是很占资源的,so,我们得尽量优化以加快响应速度。下面结合我自己的使用经验,综合讨论下各种优化方法,一点也不难,准备好了?那 跟我走吧!
1. 优化调用图片、视频、Flash等多媒体
这些多媒体是影响网页读取速度的关键。如非特别需要,尽量不要调用它们。对于必需的图片,上传之前,务必用photoshop等图片编辑工具,修改下图片并选择save for web(如Gif、Png格式)。
调用站外视频、Flash等多媒体,尽量选择速度更快的地址,否则速度会被拖得很慢。
2. 关闭不必要的插件
这点很多前辈都告诫过,在使用插件之前,首先问一下自己,这款插件是否必需?!Wordpress2.5以后,支持tag管理,像UTW、Simpletags这些插件,统统都扔了吧。
3. 剔除主题不必要的功能
以前我所使用的 Mozine theme for wordpress ,带有编辑页眉图片和搜索功能,编辑页眉图片我根本用不着,搜索可以用Google自定义搜索替代,so,del之(删除functions.php里相 应的调用语句和对应的php文件以及调用即可),不要忘了把相应的css定义也删掉,这样css又小了一点。
4. 优化css和js
每个css和js调用,大约耗时0.2s,so,合并它们。
我是手动合并,如果你不太熟悉,可以参照阅微堂的手动合并方法:
新建一个all.js.php文件,将header.php里面的那些js文件都include到all.js.php,内容是:
< ?php
require_once(‘目录/wp-blog-header.php’ ) ;
include (“/blog/a.js” ) ;
include (“/b.js” ) ;
?>
然后在header里面包含all.js.php文件即可:
<script xsrc=”all.js.php” type=”text/javascript” />
另外还要做的一件事情是需要把原来那些js文件从head里面去掉。通常这些js文件都是通过
add_action(‘wp_head’,’fun’ );
对于css文件,就得手动合并,合并后再用CSSTidy这个工具优化下,wopus的css用此工具优化后,去除了重复定义,代码行减少了一般,体积从27kb瘦身至21kb,效果非常明显。稍后为大家提供这个在线工具。
5. 用Gzip压缩代码
wordpress2.5以前的版本,在管理界面的 设置->阅读选项中,开启WP自带的压缩功能(WordPress should compress articles (gzip) if browsers ask for them)
wordpress2.5以后,gzip压缩交由服务器处理。
若服务器使用的是Apache2,则添加.htaccess规则:
<ifmodule mod_deflate.c>
AddOutputFilter DEFLATE html xml php js css
</ifmodule>
若服务器使用的是Apache1.3,则需手动在index.php中找到define(’WP_USE_THEMES’, true);这一行,在后面加上以下代码就可以启用gzip了:
1. if(ereg(‘gzip’,$_SERVER[‘HTTP_ACCEPT_ENCODING’])){//判断浏览器是否支持Gizp
2.        ob_start(‘ob_gzhandler’);//打开Gzip压缩
3.     }
6. 移除不必要的PHP动态调用
header.php,找到诸如以下代码:
<link rel=”shorcut icon” type=”image/x-ico” href=”<?php
bloginfo(’template_url’); ?>/favicon.jpg” />
</link><link rel=”stylesheet” type=”text/css” media=”screen” href=”<?php
bloginfo(’stylesheet_url’); ?>“/>
</link><link rel=”alternate” type=”application/rss+xml” title=”RSS .92?
href=”<?php bloginfo(’rss_url’); ?>” />
< ?php wp_list_pages(‘title_li=&sort_column=menu_order’ ); ?>
</link>
sidebar.php
wp_list_categories
get_links
footer.php
<a href=”<?php echo get_settings(‘home’); ?>/about/”>Copyright 2008-2010 @ Someus.cN</a>
等等动态调用,通通替换成静态输出地址。
7. 减少不必要的侧边栏调用
像订阅数、PR值等等,估计只有你自己感兴趣,别人是不会在乎的,del了吧!
在线统计请尽量用Google Analytics、Yahoo!,加入js会快很多,如果你在用51.la,载入速度最慢,趁早撤了吧!
还有很多此类优化方法,碍于篇幅,我就不一一赘述了,如果你有独特的优化方法,不妨贴出来和大家分享分享

 » 本站地址:http://www.gomoth.com
  • 您可能感兴趣的相关文章