رفتن به مطلب

درخواست کد برترین مطالب دسته ای خاص


پست های پیشنهاد شده

سلام به انجمن خوش آمدید

1. قوانین رو بخونید و قبل از ارسال پست جستجو کنید

این هم حلقه مطالب برتر وردپرس


<?php $result = $wpdb->get_results("SELECT comment_count,ID,post_title FROM $wpdb->posts ORDER BY comment_count DESC LIMIT 0 , 10");
foreach ($result as $post) {
setup_postdata($post);
$postid = $post->ID;
$title = $post->post_title;
$commentcount = $post->comment_count;
if ($commentcount != 0) { ?>

<li><a href="<?php echo get_permalink($postid); ?>" title="<?php echo $title ?>"><?php echo $title ?></a></li>


<?php } } ?>

لینک به ارسال

چون مربوط به دسته ای خاص میشه باید Category رو هم درش دخیل کنید

(با استفاده از comment)


<?php
$category = get_category( get_query_var( 'cat' ) );
$curCatId = $category->cat_ID;
$args = array(
'numberposts' => 10,
'cat' => $curCatId,
'orderby' => 'comment_count'
);
$popPosts = get_posts( $args );
echo '<ul>';
foreach ( $popPosts as $popPost ) {
setup_postdata( $popPost );
echo '<li><a href="'.get_permalink().'">'.get_the_title().'</a></li>';
}
echo '</ul>';
wp_reset_postdata();
?>

اگر میخواهید بر مبنای بیشترین بازدید انجام دهید

وردپرس قابلیت ذخیره تعداد بازدید هر پست را به صورت پیشفرض ندارد که با استفاده از اضافه نمودن تابع زیر در فایل functions.pgp قالب این قابلیت را اضافه میکنیم

کد زیر رو داخل function.php قالب بزارید


function getPostViews($postID){
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if($count==''){
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '0');
return "0 View";
}
return $count.' Views';
}
function setPostViews($postID) {
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if($count==''){
$count = 0;
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '0');
}else{
$count++;
update_post_meta($postID, $count_key, $count);
}
}

کد زیر رو در صفحه single.php تو حلقه پست بزارید


setPostViews(get_the_ID());

برای بدیت اوردن برترین ارسالهای یک دسته بر اساس بازدید


<?php
$category = get_category( get_query_var( 'cat' ) );
$curCatId = $category->cat_ID;
$args = array(
'numberposts' => 10,
'cat' => $curCatId,
'meta_key' => 'post_views_count',
'orderby' => 'meta_value_num',
'order' => 'DESC'
);
$popPosts = get_posts( $args );

echo '<ul>';
foreach ( $popPosts as $popPost ) {
setup_postdata( $popPost );
echo '<li><a href="'.get_permalink().'">'.get_the_title().'</a></li>';
}
echo '</ul>';
wp_reset_postdata();
?>

لینک به ارسال

تست کنید :

<?php
query_posts('meta_key=post_views_count&orderby=meta_value_num&order=DESC&showposts=10');
if (have_posts()) : while (have_posts()) : the_post(); ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a><small><?php echo getpostviews(get_the_ID()); ?></small></li>
<?php
endwhile; endif;
wp_reset_query();
?>

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...