WordPress得到所有的分类

WordPress得到所有的分类已经是一个很简单的事件了,我们用”wp_list_categories()”函数就可以实现,但是如果我们要对每个分类进行操作就是一件很难的事件了。
查询了很多资料,终于找到了一个函数可以用来解决这个问题,”get_categories()”函数,它返回与查询参数匹配的类别objects的数组,和”wp_list_categories()”函数非常相像。
好了,下面我们就用个例子来讲解一下这个函数。
下面的代码就是得到所有的分类,并显示出每个分类下最新的10篇文章:

  // 得到所有分类列表
  $categories = get_categories();
 
  // 循环所有分类
  foreach ($categories as $cat) {
 
    // 得到分类ID
    $catid = $cat->cat_ID;
 
    // 得到分类下10篇最新文章
    query_posts("showposts=10&cat=$catid"); ?>
 
    
    

title="">

转自http://www.yyjjssnn.cn/articles/491.html

只在WP主评论加上楼层号(支持评论分页)

前提:
1. 当然是要在 WordPress 后台开启嵌套评论啦
2. 所用主题支持嵌套(目前的主题基本都支持吧)
3. 主题有使用 mytheme_comment 回调函数(http://codex.wordpress.org/Template_Tags/wp_list_comments
下面拿默认的评论函数来说明

function mytheme_comment($comment, $args, $depth){
$GLOBALS['comment'] = $comment;
?>
  • id="li-comment-"> ' ); ?> %s says:'), get_comment_author_link()) ?> comment_approved == '0') : ?> $depth, 'max_depth' => $args['max_depth']))) ?>
  • 2. 那么现在开始添加楼层计数参数 $commentcount 等代码,具体看代码中的注释
    (2010.10.28 Update:优化了查询数)

    function mytheme_comment($comment, $args, $depth){
    $GLOBALS['comment'] = $comment;
    //主评论计数器初始化 begin - by zwwooooo
    	global $commentcount;
    	if(!$commentcount) { //初始化楼层计数器
    		$page = get_query_var('cpage')-1;
    		$cpp=get_option('comments_per_page');//获取每页评论数
    		$commentcount = $cpp * $page;
    	}
    //主评论计数器初始化 end - by zwwooooo
    ?>
    
  • id="li-comment-"> ' ); ?> %s says:'), get_comment_author_link()) ?> comment_approved == '0') : ?> $depth, 'max_depth' => $args['max_depth']))) ?> comment_parent) {printf('#%1$s', ++$commentcount);} ?>
  • 3. 添加CSS样式,自己看着办吧。
    转自http://zww.me/archives/25161
    1. 先看看WP官方的默认 mytheme_comment 回调函数

    comment_form() 实现Ctrl+Enter提交评论+评论表情插入

    comment_form() 函数说明地址(英文):传送门
    先看看原来的 Ctrl + Enter 提交评论代码(注意红色部分):

    
    

    其中的&&是&&运算符,在设置 comment_form() 函数的参数时这个运算符出错,怎么折腾也不行,后来脑筋一转,if语句有2个条件,拆分为2个if不就行了,哈,问题解决。
    下面是解决代码:

    '); ?>

    评论表情插入
    继续折腾 WordPress3.0 表单生成函数 comment_form(),这次折腾的是评论表情,用了 comment_form() 后,对于一般评论表单的代码插入非常麻烦,得再折腾才能实现之。
    willin 写的评论表情插入代码是很方便的,就一个 smiley.php 文件,但现在用 comment_form() 生成表单应该怎样插入调用代码呢?
    一、改造 smiley.php,改造后的代码如下:

    
    '
    ?>
    

    二、(comments.php)在上面加入调用 smiley.php

    
    

    三、修改上面说的加入 Ctrl + Enter 的 comment_form() 函数参数,变成如下:

    '.$smilies.'

    '); ?>

    O了…
    转自http://zww.me/archives/25313

    让 WordPress 回复评论自动加上@符号(代码版)

    通用版是这个Zww的:

    /* @reply js by zwwooooo */
    jQuery(document).ready(function($){ //Begin jQuery
        $('.reply').click(function() {
        var atid = '"#' + $(this).parent().attr("id") + '"';
        var atname = $(this).prevAll().find('cite:first').text();
        $("#comment").attr("value","@" + atname + " ").focus();
    });
        $('.cancel-comment-reply a').click(function() { //点击取消回复评论清空评论框的内容
        $("#comment").attr("value",'');
    });
    })  //End jQuery
    

    至于Jquery的用法就不多讲了。可以放在JS里,也可以放在 Header.php 里,前提是必须调用 Jquery 库。在 Header.php 里边加这样一句话。
    然后把上边代码保存成 reply.js 文件。上传到根目录中,再 header.php 里边再加上一条。
    另外可能我的模板和别人的不太一样。大家可以参考一下这里。

    /* @reply js by zwwooooo */
    jQuery(document).ready(function($){ //Begin jQuery
        $('.reply').click(function() {
            var atid = '"#' + $(this).parent().parent().attr("id") + '"';
            var atname = $(this).parent().parent().find("cite:first").text();
            $("#comment").attr("value", "@" + atname + " ").focus()
        });
        $('#cancel-comment-reply-link').click(function() {
            $("#comment").attr("value", '')
        });
    })  //End jQuery
    

    转自http://www.forece.net/post/2653.htm