برای نمایش پر بازدیدترین مطالب از افزونه wp-postviews استفاده میشود که این افزونه داخل نوشته ها یک زمینه دلخواه با نام views ایجاد میکند که تعداد بازدید هر مطلب در آن ذخیره میشود
کدی که این افزونه به ما داده برای نمایش پر بازدیدترین مطالب یک استایل اختصاصی دارد و قابل تغییر نیست پس با ما باشید تا کدی را به شما آموزش دهیم تا بتوانید برای آن استایل مخصوص قابلتان را طراحی کنید.
اگر به یاد داشته باشید برای نمایش پر بازدید ترین مطالب از کد زیر استفاده میکردیم : ….
1 2 3 4 5 |
<?php if (function_exists('get_most_viewed')): ?> <ul> <?php get_most_viewed(); ?> </ul> <?php endif; ?> |
این کد بصورت خودکار پربازدیدترین مطالب را بصورت زیر نمایش میدهد (عنوان و عدد تعداد بازدید).
نقص این کد این است که ما نمیتوانیم برای آن استایل اختصاصی طراحی کنیم.
مثلا : تاریخ مطلب را نمایش دهیم و یا به آن تصویر شاخص اضافه کنیم و …
پس ما برای اینکه بخواهیم مطالب پربازدید را با استایل شخصی قالب خود نمایش دهیم از wp_query استفاده میکنیم.
کد زیر را در مکانی از قالب خود برای نمایش دادن پربازدید ترین مطالب قرار دهید :.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
<ul> <?php $args = array( 'date_query' => array( array( 'column' => 'post_date_gmt', 'after' => '1 year ago', ), ), 'post_type' => 'post', 'posts_per_page' => 10, 'orderby' => 'meta_value_num', 'meta_key' => 'views', 'order' => 'DESC', ); $do_not_duplicate = $post->ID; ?> <?php $my_query = new WP_Query( $args ); while($my_query->have_posts()) : $my_query->the_post(); $views = get_post_meta($post->ID, 'views', true); ?> <li> <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>" rel="bookmark"><?php the_title(); ?></a> بازدید : <?php echo $views; ?> </li> <?php endwhile; ?> </ul> |
توضیحات :.
1 – در کد بالا نوشتیم که پربازدید ترین ها را از یک سال پیش تا الان نشان بده . که کد زیر میباشد…
1 |
'after' => '1 year ago', |
حال برای اینکه بگوییم مطالب پر بازدید یک ماه قبل تا الان را نشان بده کد زیر را با کد بالا جایگزین میکنیم
1 |
'after' => '1 month ago', |
2 – ما با کد زیر گفته ایم که تعداد 10 مطلب پر بازدید را نمایش بده
1 |
'posts_per_page' => 10, |
پس میتوانید با تغییر عدد تعداد دلخواه خود را مشخص کنید.
3 – برای تغییر استایل نمایش (تاریخ مطلب ، تصویر شاخص و …) کد زیر را به دلخواه تغییر میدهید.
1 2 3 4 |
<li> <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>" rel="bookmark"><?php the_title(); ?></a> بازدید : <?php echo $views; ?> </li> |
ما استایل اختصاصیمان را بصورت تصویر زیر درست کرده ایم
اگر میخواهید پر بازدید ترین ها از یک یا چند دسته ای خاص را نمایش دهید از کد زیر استفاده کنید.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
<ul> <?php $args = array( 'date_query' => array( array( 'column' => 'post_date_gmt', 'after' => '1 year ago', ), ), 'post_type' => 'post', 'posts_per_page' => 10, 'orderby' => 'meta_value_num', 'meta_key' => 'views', 'order' => 'DESC', 'cat' => '26,5,49', ); $do_not_duplicate = $post->ID; ?> <?php $my_query = new WP_Query( $args ); while($my_query->have_posts()) : $my_query->the_post(); $views = get_post_meta($post->ID, 'views', true); ?> <li> <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>" rel="bookmark"><?php the_title(); ?></a> بازدید : <?php echo $views; ?> </li> <?php endwhile; ?> </ul> |
کد بالا فرق چندانی با کد اولیه ما ندارد فقط کد زیر به آن اضافه شده است.
1 |
'cat' => '26,5,49', |
که در این کد گفته ایم مطالب پر بازدید دسته های. 26 , 5 , 49 را نمایش بده ، به دلخواه میتوانید اعداد را تغییر دهید و یک دسته و یا هر چند دسته ای را که میخواهید نمایش دهید عدد آنرا بنویسید.
و یا برای اینکه بگوییم مطالب پر بازدید دسته ای را نمایش ندهد (دسته را فیلتر کنیم) قبل از عدد دسته علامت منفی میگذاریم مانند کد زیر.
1 |
'cat' => '-26,-5,-49', |
مشکلم حل شد
عالی بود
تو این قسمت :
*******************************************
<a href="” title=”” rel=”bookmark”>
بازدید :
******************************************
کد : از کجای دیتابیس این رو میخونه منظورم اینه که من کد :
mysql_query(“SELECT * FROM table”)
رو نمیبینم لطفا راهنمایی کنید و اگر ممکنه جواب رو به ایمیلم بفرستید.
vpn.re.123@gmail.com
ما از wp_query استفاده کردیم که مطالب پر بازدید رو به نمایش بزاریم.
و این کد :
( بازدید : )
تعداد بازدید هر مطلب رو از افزونه wp-postviews دریافت کرده و به نمایش میزاریم
میتونید کد mysql_query مطالب پر بازدید رو بزارید؟؟؟
نه متاسفانه کدشو بلد نیستم و جایی هم ندیدم که باشه
سلام . مرسیییییییییی