نحوه نمایش پست های پرطرفدار توسط Views در وردپرس بدون پلاگین

در گذشته ما به شما نشان داده ایم نحوه ایجاد Tabber Post محبوب در WordPress با استفاده از یک افزونه این افزونه در جعبه جدولها بسیار عالی عمل می کند. با این حال ، ما می خواهیم سفارشی سازی بیشتری در طرح خود داشته باشیم ، بنابراین تصمیم گرفتیم این کار را بدون پلاگین انجام دهیم. در این مقاله ، ما به شما نحوه ردیابی و نمایش پست های محبوب توسط بازدیدها در WordPress و بدون استفاده از هیچ افزونه ای را نشان خواهیم داد.

نمونه ای از نمایش پست محبوب محبوب ما در تصویر زیر نشان داده شده است:

Popular Posts Example

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

عملکرد wpb_set_post_views ($ postID) {
    $ count_key = 'wpb_post_views_count'؛
    $ count = get_post_meta ($ postID ، $ count_key ، درست)؛
    if ($ count == "") {
        تعداد دلار = 0؛
        delete_post_meta ($ postID ، $ count_key) ؛
        add_post_meta ($ postID ، $ count_key ، '0')؛
    } دیگری {
        تعداد $ ++؛
        update_post_meta ($ postID ، $ count_key ، $ count) ؛
    }
}
// برای اینکه تعداد دقیق بماند ، اجازه می دهیم از پیش تنظیم خلاص شویم
remove_action ('wp_head'، 'adjacent_posts_rel_link_wp_head'، 10، 0)؛

اکنون که این تابع را در محل کار خود قرار داده اید ، باید این تابع را در صفحات تک پست فراخوانی کنیم. به این ترتیب تابع دقیقاً می داند کدام پست اعتبار بازدیدها را به خود اختصاص می دهد. برای انجام این کار ، باید کد زیر را در حلقه پست خود قرار دهید:

 wpb_set_post_views (get_the_ID ())؛ 

اگر از طرح زمینه کودک استفاده می کنید یا فقط می خواهید کارها را برای خود آسان کنید ، باید با استفاده از قلاب wp_head به راحتی ردیاب را در هدر خود اضافه کنید. بنابراین کد زیر را در پرونده functions.php طرح زمینه یا پلاگین خاص سایت خود وارد کنید:

عملکرد wpb_track_post_views ($ post_id) {
    if (! is_single ()) بازگشت؛
    if (خالی ($ post_id)) {
        پست جهانی $؛
        $ post_id = $ post-> شناسه؛
    }
    wpb_set_post_views ($ post_id)؛
}
add_action ('wp_head'، 'wpb_track_post_views')؛

هنگامی که این مورد را قرار دادید ، هر بار که کاربر از پست بازدید می کند ، قسمت سفارشی به روز می شود.

توجه: اگر از پلاگین caching استفاده می کنید ، این روش به طور پیش فرض کار نمی کند. ما از W3 Total Cache استفاده می کنیم ، و این ویژگی به نام ذخیره fragmented دارد. می توانید از آن استفاده کنید تا این کار کاملا خوب شود. این چیزی است که باید تغییر کند:

   

اکنون می توانید انواع کارهای جالب مانند نمایش تعداد نمایش پست یا مرتب سازی پست ها بر اساس تعداد مشاهده را انجام دهید. بیایید نگاهی به نحوه انجام برخی از این کارهای جالب بیاندازیم.

اگر می خواهید تعداد نمایش پست را در صفحات پست خود (اغلب در کنار تعداد نظر یا موارد دیگر) نمایش دهید. سپس اولین کاری که باید انجام دهید این است که موارد زیر را در فایل functions.php قالب خود یا پلاگین خاص سایت اضافه کنید.

عملکرد wpb_get_post_views ($ postID) {
    $ count_key = 'wpb_post_views_count'؛
    $ count = get_post_meta ($ postID ، $ count_key ، درست)؛
    if ($ count == "") {
        delete_post_meta ($ postID ، $ count_key) ؛
        add_post_meta ($ postID ، $ count_key ، '0')؛
        بازگشت "0 نمایش"؛
    }
    تعداد دلار را برگردانید. ' بازدیدها '؛
}

سپس درون حلقه ارسال خود کد زیر را اضافه کنید:

 wpb_get_post_views (get_the_ID ())؛ 

اگر می خواهید پست ها را بر اساس تعداد مشاهده مرتب کنید ، پس می توانید با استفاده از پارامتر wp_query post_meta این کار را به راحتی انجام دهید. ابتدایی ترین نمونه درخواست حلقه به این شکل است:

 4، 'meta_key' => 'wpb_post_views_count'، 'orderby' => 'meta_value_num'، 'order' => 'DESC'))؛
while ($ Popularpost-> have_posts ()): $ Popularpost-> the_post ()؛

عنوان()؛

در همین حال
؟>

برای افزودن سایر پارامترهای WP_Query مانند دامنه زمانی ، به صفحه WP_Query در Codex .

امیدواریم از این پست لذت برده باشید.

منبع:
https://www.wpbeginner.com/wp-tutorials/how-to-track-popular-posts-by-views-in-wordpress-without-a-plugin/.

دیدگاهتان را بنویسید