نمایش محصولات پربازدید یکی از هوشمندانهترین روشهای تایید اجتماعی (Social Proof) است. وقتی کاربران میبینند بقیه افراد از چه محصولاتی بیشتر بازدید کردهاند، ناخودآگاه به آن محصولات علاقهمند میشوند. در این آموزش از سون ریپلای، یاد میگیرید که چگونه با دو قطعه کد ساده، این سیستم را در فروشگاه خود پیاده کنید.
مرحله اول: فعالسازی شمارشگر بازدید محصولات
از آنجایی که ووکامرس بازدیدها را ذخیره نمیکند، ابتدا باید کدی را در فایل functions.php قرار دهیم تا با هر بار مشاهده محصول توسط کاربر، یک واحد به تعداد بازدیدهای آن در دیتابیس اضافه شود.
کد زیر را به انتهای فایل functions.php قالب خود اضافه کنید:
// ثبت تعداد بازدید محصول
function s7r_track_product_views() {
if ( is_singular( 'product' ) ) {
global $post;
$views = get_post_meta( $post->ID, 'total_views', true );
$views = ( $views == '' ) ? 0 : $views;
$views++;
update_post_meta( $post->ID, 'total_views', $views );
}
}
add_action( 'wp_head', 's7r_track_product_views' );
مرحله دوم: نمایش محصولات بر اساس بیشترین بازدید
حالا که سیستم شمارش فعال شد، باید کوئری مخصوصی بنویسیم که محصولات را بر اساس متای total_views که در مرحله قبل ساختیم، مرتب کرده و نمایش دهد.
هر جا که میخواهید لیست محصولات پربازدید نمایش داده شود (مثلاً در archive-product.php یا یک برگه اختصاصی)، از کد زیر استفاده کنید:
<?php
$args = array(
'post_type' => 'product',
'posts_per_page' => 4,
'meta_key' => 'total_views',
'orderby' => 'meta_value_num',
'order' => 'DESC'
);
$loop = new WP_Query( $args );
if ( $loop->have_posts() ) {
echo '<ul class="products">';
while ( $loop->have_posts() ) : $loop->the_post();
wc_get_template_part( 'content', 'product' );
endwhile;
echo '</ul>';
} else {
echo __( 'هنوز محصول پربازدیدی ثبت نشده است.' );
}
wp_reset_postdata();
?>
چرا نمایش محصولات پربازدید برای سئو مفید است؟
-
کاهش نرخ پرش (Bounce Rate): کاربران با دیدن محصولات محبوب، زمان بیشتری را در سایت شما صرف میکنند.
-
بهبود لینکسازی داخلی: این کار باعث میشود محصولات مهم شما لینکهای داخلی بیشتری دریافت کنند و گوگل به آنها اهمیت بیشتری بدهد.
-
تجربه کاربری بهتر: هدایت سریع کاربران به سمت محصولاتی که بقیه پسندیدهاند، فرآیند خرید را تسهیل میکند.
سوالات متداول (FAQ)
۱. آیا این کد باعث کندی سایت میشود؟ خیر، این کد از سیستم متادیتای وردپرس استفاده میکند که بسیار بهینه است. اما برای سایتهای بسیار بزرگ با ترافیک میلیونی، استفاده از افزونههای کشینگ (Caching) توصیه میشود.
۲. از کجا بفهمم هر محصول چند بازدید داشته است؟ با استفاده از کد مرحله اول، یک فیلد به نام total_views در دیتابیس برای هر محصول ساخته میشود. شما میتوانید با افزونههای ویرایش متادیتا، مقدار آن را برای هر محصول در پیشخوان مشاهده کنید.
آیا مایل هستید برای این بخش یک “ویجت اختصاصی” بسازیم تا بتوانید آن را به راحتی در سایدبار سایت قرار دهید؟

هنوز بررسیای ثبت نشده است.