当前位置: 首页>>代码示例>>PHP>>正文


PHP Walker_Comment::paged_walk方法代码示例

本文整理汇总了PHP中Walker_Comment::paged_walk方法的典型用法代码示例。如果您正苦于以下问题:PHP Walker_Comment::paged_walk方法的具体用法?PHP Walker_Comment::paged_walk怎么用?PHP Walker_Comment::paged_walk使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Walker_Comment的用法示例。


在下文中一共展示了Walker_Comment::paged_walk方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: wp_list_comments

/**
 * List comments
 *
 * Used in the comments.php template to list comments for a particular post
 *
 * @since 2.7.0
 * @uses Walker_Comment
 *
 * @param string|array $args Formatting options
 * @param array $comments Optional array of comment objects.  Defaults to $wp_query->comments
 */
function wp_list_comments($args = array(), $comments = null)
{
    global $wp_query, $comment_alt, $comment_depth, $comment_thread_alt, $overridden_cpage, $in_comment_loop;
    $in_comment_loop = true;
    $comment_alt = $comment_thread_alt = 0;
    $comment_depth = 1;
    $defaults = array('walker' => null, 'max_depth' => '', 'style' => 'ul', 'callback' => null, 'end-callback' => null, 'type' => 'all', 'page' => '', 'per_page' => '', 'avatar_size' => 32, 'reverse_top_level' => null, 'reverse_children' => '');
    $r = wp_parse_args($args, $defaults);
    // Figure out what comments we'll be looping through ($_comments)
    if (null !== $comments) {
        $comments = (array) $comments;
        if (empty($comments)) {
            return;
        }
        if ('all' != $r['type']) {
            $comments_by_type =& separate_comments($comments);
            if (empty($comments_by_type[$r['type']])) {
                return;
            }
            $_comments = $comments_by_type[$r['type']];
        } else {
            $_comments = $comments;
        }
    } else {
        if (empty($wp_query->comments)) {
            return;
        }
        if ('all' != $r['type']) {
            if (empty($wp_query->comments_by_type)) {
                $wp_query->comments_by_type =& separate_comments($wp_query->comments);
            }
            if (empty($wp_query->comments_by_type[$r['type']])) {
                return;
            }
            $_comments = $wp_query->comments_by_type[$r['type']];
        } else {
            $_comments = $wp_query->comments;
        }
    }
    if ('' === $r['per_page'] && get_option('page_comments')) {
        $r['per_page'] = get_query_var('comments_per_page');
    }
    if (empty($r['per_page'])) {
        $r['per_page'] = 0;
        $r['page'] = 0;
    }
    if ('' === $r['max_depth']) {
        if (get_option('thread_comments')) {
            $r['max_depth'] = get_option('thread_comments_depth');
        } else {
            $r['max_depth'] = -1;
        }
    }
    if ('' === $r['page']) {
        if (empty($overridden_cpage)) {
            $r['page'] = get_query_var('cpage');
        } else {
            $threaded = -1 == $r['max_depth'] ? false : true;
            $r['page'] = 'newest' == get_option('default_comments_page') ? get_comment_pages_count($_comments, $r['per_page'], $threaded) : 1;
            set_query_var('cpage', $r['page']);
        }
    }
    // Validation check
    $r['page'] = intval($r['page']);
    if (0 == $r['page'] && 0 != $r['per_page']) {
        $r['page'] = 1;
    }
    if (null === $r['reverse_top_level']) {
        $r['reverse_top_level'] = 'desc' == get_option('comment_order') ? TRUE : FALSE;
    }
    extract($r, EXTR_SKIP);
    if (empty($walker)) {
        $walker = new Walker_Comment();
    }
    $walker->paged_walk($_comments, $max_depth, $page, $per_page, $r);
    $wp_query->max_num_comment_pages = $walker->max_pages;
    $in_comment_loop = false;
}
开发者ID:klr2003,项目名称:sourceread,代码行数:89,代码来源:comment-template.php

示例2: my_theme_comments

function my_theme_comments()
{
    $id = get_the_ID();
    $avatar = get_avatar();
    $coms = wp_list_comments(array('echo' => false));
    $comments = get_comments(array('post_id' => $id));
    $walker = new Walker_Comment();
    $output = $walker->paged_walk($comments, -1, '', '');
    $in_comment_loop = false;
    echo $output;
}
开发者ID:rbelow,项目名称:doingitwrong,代码行数:11,代码来源:template-tags.php


注:本文中的Walker_Comment::paged_walk方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。