WordPress.org

Make WordPress Core

Ticket #7635: 7635.5.diff

File 7635.5.diff, 2.4 KB (added by DD32, 6 years ago)
  • wp-includes/comment-template.php

     
    878883        var $db_fields = array ('parent' => 'comment_parent', 'id' => 'comment_ID'); 
    879884 
    880885        function start_lvl(&$output, $depth, $args) { 
    881                 if ( 'div' == $args['style'] ) 
    882                         return; 
    883  
    884                 echo "<ul class='children'>\n"; 
     886                switch ( $args['style'] ) { 
     887                        case 'div': 
     888                                break; 
     889                        case 'ol': 
     890                                echo "<ol class='children'>\n"; 
     891                                break; 
     892                        default: 
     893                        case 'ul': 
     894                                echo "<ul class='children'>\n"; 
     895                                break; 
     896                } 
    885897        } 
    886898 
    887899        function end_lvl(&$output, $depth, $args) { 
    888                 if ( 'div' == $args['style'] ) 
    889                         return; 
    890  
    891                 echo "</ul>\n"; 
     900                switch ( $args['style'] ) { 
     901                        case 'div': 
     902                                break; 
     903                        case 'ol': 
     904                                echo "</ol>\n"; 
     905                                break; 
     906                        default: 
     907                        case 'ul': 
     908                                echo "</ul>\n"; 
     909                                break; 
     910                } 
    892911        } 
    893912 
    894913        function start_el(&$output, $comment, $depth, $args) { 
     
    907926                else 
    908927                        $tag = 'li'; 
    909928?> 
    910                 <<?php echo $tag ?> "<?php comment_class() ?>" id="comment-<?php comment_ID() ?>"> 
     929                <<?php echo $tag ?> <?php comment_class() ?> id="comment-<?php comment_ID() ?>"> 
    911930                <?php if ( 'list' == $args['style'] ) : ?> 
    912931                <div id="div-comment-<?php comment_ID() ?>"> 
    913932                <?php endif; ?> 
     
    925944                <?php echo apply_filters('comment_text', get_comment_text()) ?> 
    926945 
    927946                <div class='reply'> 
    928                 <?php if ( $depth < $args['depth'] ) echo comment_reply_link(array('add_below' => 'div-comment')) ?> 
     947                <?php if ( 0 == $args['depth'] || $depth < $args['depth'] ) echo comment_reply_link(array('add_below' => 'div-comment')) ?> 
    929948                <?php if ( 'list' == $args['style'] ) : ?> 
    930949                </div> 
    931950                <?php endif; ?> 
     
    934953        } 
    935954 
    936955        function end_el(&$output, $comment, $depth, $args) { 
     956                if ( !empty($args['end-callback']) ) { 
     957                        call_user_func($args['end-callback'], $comment, $args, $depth); 
     958                        return; 
     959                } 
    937960                if ( 'div' == $args['style'] ) 
    938961                        echo "</div>\n"; 
    939962                else 
     
    954977 * @param $args string|array Additional arguments 
    955978 */ 
    956979function wp_list_comments(&$comments, $args = array() ) { 
    957         $defaults = array('walker' => null, 'depth' => 3, 'style' => 'list', 'callback' => null); 
     980        $defaults = array('walker' => null, 'depth' => 3, 'style' => 'ul', 'callback' => null, 'end-callback' => null); 
    958981 
    959982        $r = wp_parse_args( $args, $defaults ); 
    960983