পোস্টের মত কমেন্ট শো করাবো
আমি author.php পেজে author এর সকল পোষ্ট শো করিয়েছি, এখন চাচ্ছি ঐ লেখকের সকল কমেন্টও শো করাবো, এর জন্য গুগল করে কোডটা পেলাম, এটা আমার কাছে সহজ মনে হলো, এবং বুঝতেও সুবিধা হলো, এবং সাথে কয়টা শো করবো, ইত্যাদি আছে। কিন্তু এটা ব্যবহার করার পরে user ভেরিএবলটি খুজে পায় না।
<?php $args = array( 'user_id' => $user->ID, 'number' => 10, // how many comments to retrieve 'status' => 'approve' ); $comments = get_comments( $args ); if ( $comments ) { $output.= "<ul>\n"; foreach ( $comments as $c ) { $output.= '<li>'; $output.= '<a href="'.get_comment_link( $c->comment_ID ).'">'; $output.= get_the_title($c->comment_post_ID); $output.= '</a>, Posted on: '. mysql2date('m/d/Y', $c->comment_date); $output.= "</li>\n"; } $output.= '</ul>'; echo $output; } else { echo "No comments made";} ?>
পরবর্তীতে বুঝলাম global ব্যবহার করে দেখি
তার দিলাম এই রকম
<?php global $user; $args = array( 'user_id' => $user->ID, 'number' => 10, // how many comments to retrieve 'status' => 'approve' ); $comments = get_comments( $args ); if ( $comments ) { $output.= "<ul>\n"; foreach ( $comments as $c ) { $output.= '<li>'; $output.= '<a href="'.get_comment_link( $c->comment_ID ).'">'; $output.= get_the_title($c->comment_post_ID); $output.= '</a>, Posted on: '. mysql2date('m/d/Y', $c->comment_date); $output.= "</li>\n"; } $output.= '</ul>'; echo $output; } else { echo "No comments made";} ?>
তারপর আসে কিন্তু তারপরও এই রকম ইরোর শো করে, কি করতে পারি?
৩ টি উত্তর
সেরা উত্তর
উপরের কোডটা ইউজ করলে সকল লেখকের মন্তব্য দেখাবে। আপনি যদি শুধু নির্দিষ্ট লেখকের পাতাতে ঐ লেখকের মন্তব্য দেখাতে চান তাহলে নিচের কোডটি ইউজ করেন:
if(isset($_GET['author_name'])) : $curauth = get_userdatabylogin($author_name); else : $curauth = get_userdata(intval($author)); endif; $user_id = $curauth->ID; $args = array( 'user_id' => $user_id, 'number' => 10, // how many comments to retrieve 'status' => 'approve' ); // পরেরটুক একি থাকবে
শুরুর output থেকে ডট উঠায়ে দিন।
$output.= "<ul>\n";
এরকম না লিখে
$output = "<ul>\n";
এরকম লিখেন।