带有评论位置的奇怪行为

时间:2013-01-13 作者:domiSchenk

我创建了一个自定义content.php 并删除了content.php

然后我改变了sharing-service.php 来自jetpack并添加comments_popup_link 有:

// Wrapper
$sharing_content .= \'<div class="sharedaddy sd-sharing-enabled">\';
$sharing_content .= \'<div class="robots-nocontent sd-block sd-social sd-social-\' . $global[\'button_style\'] . \' sd-sharing">\';

if ( $global[\'sharing_label\'] != \'\' )
    $sharing_content .= \'<h3 class="sd-title">\'. comments_popup_link(  __( \'Leave a reply\', \'changed2012\' ) , __( \'1 Reply\', \'changed2012\' ), __( \'% Replies\', \'changed2012\' ) ) . $global[\'sharing_label\'] . \'</h3>\';
$sharing_content .= \'<div class="sd-content"><ul>\';
看起来是这样的:
comment positionenter image description here

有人知道为什么要搬到那里吗?我怎样才能把它移回它应该在的地方?

2 个回复
最合适的回答,由SO网友:windyjonas 整理而成

您可能只需在单独的函数中缓冲comments\\u popup\\u链接的输出。

function get_comments_popup_link( $zero = false, $one = false, $more = false, $css_class = \'\', $none = false ) {
    ob_start();
    comments_popup_link( $zero, $one, $more, $css_class, $none );
    return ob_get_clean();
}

SO网友:diggy

正如@迈克尔指出的那样,“comments_popup_link() 打印结果,因此在返回输出时不能用于字符串串联patch 可用,或者您可以使用以下变通方法,这些方法是我不久前编写的,适用于您的标记:

if ( $global[\'sharing_label\'] != \'\' ) {
    global $post;
    $comments_link_txt = ( get_comments_number( $post->ID ) != 0 ) ? sprintf( _n( \'1 Reply\', \'%1$s Replies\', get_comments_number( $post->ID ), \'changed2012\' ), number_format_i18n( get_comments_number( $post->ID ) ) ) : __( \'Leave a reply\', \'changed2012\' );
    $sharing_content .= \'<h3 class="sd-title"><a href="\' . get_comments_link( $post->ID ) . \'">\' . $comments_link_txt . \'</a>\' . $global[\'sharing_label\'] . \'</h3>\';
}

结束

相关推荐

如何正确使用Comments-template.php

我想修改已登录用户和未登录用户的评论表单。我通过更改注释修改了未登录用户的表单。php,但我不太确定如何为登录用户修改我的表单。我知道我必须使用comments\\u template(),但每当我尝试在页面中使用它时。php,我遇到这样的错误Notice: Undefined variable: args in {PATH}/twwr-theme/comments-template.php on line 13 这些是我评论的内容。php,有点乱<?php if (!empty