前提・実現したいこと
Comment ImageというWordpressプラグインを使用して画像のあるコメントのみループさせたいです。
データベースにmeta_keyが追加されるような使用ではないため、プラグインの構造をのぞいたらなにやらアクションフックでいろいろやっているようです。
プラグインの中身を直接編集するのは避けたい、やむを得ない場合は直接編集するけどそもそもどこに追加してよいかわかりません。
躓いてる部分
一番簡単なのはadd_comment_metaで画像がコメントに投げ込まれた際に(アクションフック)、コメントをループさせるのが良いかなと思ったんですが、どう書けばいいのか、そもそもできるのか…
add_comment_metaで画像があるコメントにだけコメントメタを追加できれば一番よさそうなんですが、これはプラグインの中身ですので、functions.phpに書き込む方法で対処できないかな、と思っています。
それか、このプラグインはファイルを自動生成してその中に画像が[コメントid].拡張子の形式で保存されているようなので、ファイルの中身(画像)をループさせて、get_comment(画像の名前)でコメント情報を持ってこれないかな、と考えています。
私ではこれ以上の方法が浮かばないし、プラグインの中身を触るのも初めてなのでどうかけばいいかわかりません。
つたない質問で申し訳ありませんが、回答いただけますと幸いです。
どうか、よろしくお願いいたします。
進展
これの
PHP
1<?php 2 $comments = get_comments(array('status' => 'approve' ,'number' => 5)); 3 foreach($comments as $comment): 4 $post = get_post($comment->comment_post_ID); 5 $posturl = get_permalink( $comment->comment_post_ID ); 6 7 $image_url = ""; 8 if (file_exists(ABSPATH . 'wp-content/comment-image/' . $comment->comment_ID . '-tn.jpg')) { 9 $image_url = home_url() . '/wp-content/comment-image/' . $comment->comment_ID . '-tn.jpg'; 10 }else{ 11 $image_url = get_bloginfo('template_url') . '/images/noimage.png'; 12 } 13 echo '<img scr="' . $image_url . '" alt="' . $post . '">'; 14 endforeach; 15?>
これをadd_comment_metaできればいけるかもしれないので、アクションフックと組み合わせてやってみます。
できたら自己解決したいです。
あなたの回答
tips
プレビュー