تغيير استعلام فلتر الاختيار الأول باستخدام هوك
في عالم التجارة الإلكترونية، تعد مرونة تقديم المنتجات وتجربة المستخدم من العوامل الأساسية لجذب الزبائن وزيادة المبيعات. واحدة من الحالات الشائعة التي يواجهها مستخدمو WooCommerce هي الحاجة إلى تعديل استعلامات التصفية الافتراضية لكي تناسب احتياجاتهم. في هذا السياق، سنناقش كيفية تغيير خيارات التصفية الأولية باستخدام هوك (hook) في WooCommerce لجعل صفحات التخفيضات تعمل بشكل أكثر كفاءة.
طريقة إضافة هوك لتغيير استعلام التصفية
عندما تقوم بتطبيق WooCommerce مع فلتر YITH WooCommerce Ajax Product Filter، قد تحتاج إلى إنشاء صفحة منفصلة لعرض المنتجات المتوفرة بالتخفيضات. الهدف هنا هو عرض السلع المخفضة فقط وتطبيق الفلتر بشكل افتراضي. يمكن تحقيق ذلك من خلال إضافة هوك بسيط لتعديل استعلام المنتجات.
تنفيذ الكود للجعل صفحة التخفيضات أكثر كفاءة
يمكنك استخدام الكود التالي لتحديد المنتجات المخفضة في الصفحة الجديدة:
function action_woocommerce_product_query( $q ) {
if ( is_admin() ) return;
if ( isset( $_GET['onsale'] ) ) {
if ( $_GET['onsale'] == 1 ) {
$product_ids_on_sale = wc_get_product_ids_on_sale();
$q->set( 'post__in', $product_ids_on_sale );
}
}
}
add_action( 'woocommerce_product_query', 'action_woocommerce_product_query', 10, 1 );
هذا الكود يتحقق مما إذا كانت الصفحة تعرض العناصر المخفضة بالفعل، ويقوم بتصفية المنتجات لإظهار تلك التي تحتوي على تخفيضات.
مشكلة إعادة تعيين التصفية الأولية
على الرغم من أن الكود أعلاه يعمل على عرض المنتجات المخفضة، إلا أن المشكلة الرئيسية التي تواجه المستخدمين هي إعادة تعيين خيارات التصفية الأولية عند تطبيق الفلاتر. كلما تم تصفية النتائج، يتم عرض جميع المنتجات التي تتناسب مع معايير الفلترة. ولذلك، من الضروري تعيين قيم التصفية الأولية في إعدادات الفلتر.
استخدام هوك yith_wcan_query_vars_to_merge
لإجراء ذلك، يمكننا استخدام هوك yith_wcan_query_vars_to_merge
لتعديل قائمة المتغيرات المضافة إلى الاستعلام. إليك كيف يتم ذلك:
add_filter('yith_wcan_query_vars_to_merge', 'set_initial_filter_selection');
function set_initial_filter_selection( $query_vars ) {
// قم بتحديد المتغيرات التي تريد إضافتها
$query_vars['onsale'] = 1; // على سبيل المثال، لتعيين المنتجات المخفضة
return $query_vars;
}
هذا الكود يقوم بتعيين القيمة الافتراضية عند عرض الصفحة، مما يمنع إعادة تعيين الفلتر عند تغيير الخيارات.
استنتاج حول تغيير استعلام التصفية الأولية
تغيير استعلام التصفية الأولية باستخدام هوك هو خطوة حاسمة لتحسين تجربة المتصفح وتمكين المستخدمين من الوصول إلى المنتجات المخفضة بسهولة. من خلال الالتزام بالخطوات الموضحة أعلاه، يمكنك تحسين صفحة التخفيضات في WooCommerce وبالتالي جذب المزيد من العملاء وزيادة المبيعات. إنه لأمر هام للغاية الحفاظ على تجربة مستخدم جيدة، وأحد المفاتيح لذلك هو استغلال قدرات الفلاتر بفعالية.
إذا كنت تبحث عن تحسين أداء متجر WooCommerce الخاص بك، فإن تغيير إعدادات استعلام التصفية الأولية باستخدام هوك هو استثمار جيد. استخدم قوة WooCommerce بشكل كامل، وتأكد من أن زبائنك يمكنهم العثور على العروض الرائعة دون أي عقبات.