1

私はこのチュートリアルwp_enqueue_script( 'comment-reply' );に従っていますが、 php関数 で返信を意図したとおりに機能させることができません。

達成したいこととは無関係だと思うコードを削除しました。

期待される出力(21の1.3マイナススタイルシートから取得)

期待される出力
(出典:iforce.co.nz

実際の出力(私のテーマのマイナススタイルシートから取得)

実際の出力
(出典:iforce.co.nz

高度なコメントのこのチュートリアルに基づいて、期待される出力をどのように達成できますか?そしてそれを達成するためにfunctions.phpとsingle.phpで何をすべきですか?

4

1 に答える 1

2

解決策は実際には非常に単純です...javascriptのワードプレスコードを少し読んだ後。問題は、各コメントブロックの作成方法にあることがわかりました。

function.phpのこの関数に基づいています

//this function will be called in the next section
function advanced_comment($comment, $args, $depth) {
$GLOBALS['comment'] = $comment; 
$PostAuthor = false;
if($comment->comment_author_email == get_the_author_email()) {
$PostAuthor = true;}
elseif($comment->comment_author_email == 'mordauk@gmail.com') {
$PostAuthor = true;} ?>
<li <?php if($PostAuthor) {echo "class='authorcomment' ";} ?>
<?php comment_class(); ?> id="li-comment-<?php comment_ID() ?>">
<div class="comment-author vcard">
<?php echo get_avatar($comment, $size='48',$default='<path_to_url>' ); ?>
<div class="comment-meta"<a href="<?php the_author_meta( 'user_url'); ?>"><?php printf(__('%s'), get_comment_author_link()) ?></a></div>
<small><?php printf(__('%1$s at %2$s'), get_comment_date(),  get_comment_time()) ?><?php edit_comment_link(__('(Edit)'),'  ','') ?></small>
</div>
<?php if ($comment->comment_approved == '0') : ?>
<div id="moderation"><?php _e('Your comment is awaiting moderation.') ?></div>
          <?php endif; ?><br />
        <div class="comment-text">  
          <?php comment_text() ?>
        </div>
          <div class="reply">
             <?php comment_reply_link(array_merge($args, array('depth' => $depth, 'max_depth' => $args['max_depth'])), $comment->comment_ID) ?>
             <?php delete_comment_link(get_comment_ID()); ?>
          </div>
  <div class="clear"></div>
      <?php } ?>

エラーが発生したことがわかりました

<?php comment_class(); ?> id="li-comment-<?php comment_ID() ?>">

idの「li-」を削除するだけで、id="comment-"が形成されます。

返信フォームが返信時に移動するようになりました。

于 2012-06-13T06:39:57.903 に答える