H @ M e D

مشکل جدی در پربازدیدترین مطالب

6 پست در این موضوع قرار دارد

ارسال شده در (ویرایش شده)

سلام من کل نت رو زیر و رو کردم در مورد اینکه چطور میشه در سایدباز یا ابزارک 10 پستی که بیشترین بازدید دارن رو وارد کنیم موفق نشدم

و همچنین یه مشکل دیگه

====================================================================================

البته میدونیم که یه کدی هست محبوب ترین مطالب رو نشون میده یعنی چه قدر نظر دادن تو اون پست و اونا محبوب شدن که نباید اشتباه گرفته شه با نوشته بالا که کدش اینه


<?php echo popularPosts(10); ?>

خوب این کد بالا محبوب ترین مطالب رو نشون میده که کدشو تو سایدبار و فانکشن قرار دادم و این مورد رو دارم استفاده می کنم موردی نداره هست درست کار می کنه

====================================================================================

حالا می دونیم افزونه post view هست که نصب می کنی و میگه کد زیر در index باید وجود داشته باشه


<?php while (have_posts()) : the_post(); ?>

و شما بیا کد زیر رو در Index قرار بده تا کار کنه


<?php if(function_exists('the_views')) { the_views(); } ?>

که این کد و افزونه روی قسمت پست یا همون content قرار داده میشه و کار می کنه و آمار هر پست رو نشون میده که اینم برام کار نمی کنه یعنی هر بازدید رو 0 نشون میده که منو مجبور به استفاده از این کد پایین که نوشتم کرده

حالا من مجبوری اومدم برای قسمت centent این کد هم تو index قرار دادم که بازدید از هر پست رو نشون بده که اینم خراب کار می کنه یعنی با هر باز رفرش سایت یه دونه بازدید به پست اضافه می کنه در حالی که هنوز کسی اون پست رو باز نکرده و اگه کاربر پست رو هم باز کنه یه بازدید هم اونجا اضافه میشه ، این یه مشکل در مورد بازدید پست در content که عکسشم اپلود کردم بدونید کدوم قسمت منظورمه


<?php setPostViews(get_the_ID()); ?><?php echo getPostViews(get_the_ID()); ?>

d8diqt3rjd1ggibohkeh.jpg

====================================================================================

مشکل دوم هم همین کدی هست که تو ساید بار 10 پست پربازدید رو نشون بده یعنی مثلا 1000 تا بازدید کردن از یه پستی ، دومی 800 تا بازدید و ... که 10 تا پست بازدید رو زیر هم بیاره که این کد رو هنوز پیدا نکردم که بیاد تو سایدبار

lpqiuj56dwwwcnnlgg8.jpg

فکر کنم واضح توضیح دادم

ممنون می شم کمک کنید در این دو مورد :wub:

ویرایش شده در توسط H @ M e D
0

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

خوب کد این بخشی که میگم بازدید رو هر بار رفرش می کنیم سایت رو یکی بازدید به هر پستی اضافه می کنه رو قرار دادم ببینید مشکلی داره یا نه

کدی که براش تو ایندکس قرار دادم


<?php setPostViews(get_the_ID()); ?><?php echo getPostViews(get_the_ID()); ?>

که اینم بخوام اگه این کد رو بزارم تو برخی سایت ها گذاشتن قرار بدم اصلا بازدید حساب نمیکنه


echo getPostViews(get_the_ID());

کدی تو functions قرار دادم


<?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 "بدون بازدید";
}
return $count.' بازدید';
}

// function to 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);
}
}
?>

این هم کدی که در مدیریت پنل تعداد بازدید هارو ببینم مربوط به همین کد بالا در functions


<?php
add_filter('manage_posts_columns', 'posts_column_views');
add_action('manage_posts_custom_column', 'posts_custom_column_views',5,2);
function posts_column_views($defaults){
$defaults['post_views'] = __('بازدید');
return $defaults;
}
function posts_custom_column_views($column_name, $id){
if($column_name === 'post_views'){
echo getPostViews(get_the_ID());
}
}
?>

ویرایش شده در توسط H @ M e D
0

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

ممنون پارسا جان

با این کد 10 پست پربازدید اوکی شدمشکل دوم


<?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></li>
<?php
endwhile; endif;
wp_reset_query();
?>

الان مشکل فقط این کد بازدید هر پست هست که هر بار سایت رفرش میشه یه بازدید اضافه میشه این رو نمیشه کاری کرد؟

یعنی مثلا page 1 سایت لود میشه توسط من هر 10 پستش یه بازدید اضافه میشه و بری از فهرست یه عنوانی رو باز کنی باز مطالب اونا هم یه بازدید اضافه میشه ، حالا اگه خوده پست رو باز کنی هم یه بازدید حساب میشه

اساسش اینه فقط پست رو باز کنی یه دونه بازدید حساب شه

ویرایش شده در توسط H @ M e D
0

به اشتراک گذاری این پست


لینک به پست

شما نباید در حلقه پست در بخش آرشیو توابع بازدید رو قرار بدید. از اونجا حذف کنید و فقط در فایل single قرار بدید

2

به اشتراک گذاری این پست


لینک به پست

اینم میشه فکرشو نکرده بودم :P

0

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

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

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری