上周五接了个主题,其中有一个要求在侧边显示默认分类名称和分类下文章标题,搜索了一下马上就找到显示单一分类下文章的写法,于是我自以为是的在循环外加了the_category(', ') ,后来发现这函数在首页时显示正常,可是在其他分类页面下时显示的是该分类的名字,难道是要放循环内?可是放了循环内后发现侧边的排列变成一个标题对应一次分类名,将默认分类下的文章分N次显示了出来。。。
这时候我知道靠猜是解决不了问题了,只能再搜索了。
wordpress的函数真的是n多,就一个分类的函数就不知道有多少种写法,尤其是list_cats(),也写成list_categories()更是随着括号内的参数变化而千变万化,最后才发现原来还有一个叫single_cat_title()的函数,其实我也用过,可是以前根本没有区分的概念,用上它好腰不酸腿不疼了。
具体代码如下:
<?php $posts = query_posts($query_string . "&cat=1&orderby=date&showposts=10" ); ?> <h3><?php single_cat_title() ?></h3> <?php while(have_posts()) : the_post(); ?> <ul> <li><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></li> </ul> <?php endwhile; ?>
搞定!另外还有一个和分类有关的,就是分类说明的函数是:echo(category_description()),也写成echo(category_description(the_category_ID(false)/$category)),括号里的“/”是或者的意思,不是共存的。我不知道加括号里的东西和不加有什么区别,不过这个函数默认输出时带p的,为了便于管理得在function.php文件里加:remove_filter('term_description','wpautop');
2010.06.18编辑:
上面提到的方法不知道是不是php代码没有闭合,对其他php代码会有影响,会导致一些php判断和某些函数无效,因为本人不懂php,所以无法修改。另外在marslau.com看到另外一种方法,因为没有测试,不知道会不会有同样的问题,代码如下:
<?php $posts = get_posts( “category=4&numberposts=10″ ); ?> <?php if( $posts ) : ?> <ul><?php foreach( $posts as $post ) : setup_postdata( $post ); ?> <li> <a href=”<?php the_permalink() ?>” rel=”bookmark” title=”<?php the_title(); ?>”><?php the_title(); ?></a> </li> <?php endforeach; ?> </ul> <?php endif; ?>
等用的时候翻出来
從 RSS 閱讀器裏讀到的博文訊息排版錯亂,不知博主是否可檢查一下你的 Feed 設定呢?
谢谢您默默无闻的订阅敝人的小博客!
你说的问题我自己也有发现,曾试图更正过最后不了了之,看来是得好好处理一下了。
呵,其實已經訂閱好一陣子了,不過還有一點,就是評掄區塊輸入的字體相當小,不曉得你有無時間做修正呢?
我一直在用谷歌浏览器,这个浏览器最小只显示10px的,我一直不知道输入宽里定义的居然是0.9em的字体大小,刚才用ie看了下,还真的是小的可怜,马上改回来.
非常非常感谢你的热心肠!!!
別客氣,只是舉手之勞
WP的函数还是很折腾人的……
如果真如你楼上的万戈说的那样,那就更折腾了,随着版本的升级一不小心主题有的地方就不显示内容了。。。
兼容的,只是有更方便的函数来调用了~
随着WP版本的更新,很多函数都已经被淘汰了
来访且收藏
做个记号,留待备用