نظرة عامة على المشكلة
قد تواجه خطأ ERR_TOO_MANY_REDIRECTS عند استخدام WPML متعدد اللغات وتعدد العملات لـ WooCommerce أثناء تعيين الروابط الدائمة للمنتجات إلى قاعدة المتجر مع التصنيف.
تحدث هذه المشكلة عندما يتم تعيين المنتجات إلى قابل للترجمة – استخدام الترجمة إذا توفرت أو العودة إلى اللغة الافتراضية، وتكون تصنيفات المنتجات قابلة للترجمة أيضاً. عند التبديل إلى لغة ثانوية، يفشل توجيه عنوان URL للمنتج المترجم بشكل صحيح، مما يتسبب في حلقة إعادة توجيه لا نهائية.
حل بديل مؤقت
تم إصلاح هذه المشكلة في WPML Multilingual & Multicurrency for WooCommerce 5.5.3. يحل التحديث المشكلة على موقعك، لذا لا تحتاج إلى هذا الحل البديل المؤقت إلا إذا لم تتمكن من التحديث بعد.
تأكد من أخذ نسخة احتياطية كاملة لموقعك قبل المتابعة.
- افتح ملف function.php الخاص بقالبك.
- أضف الكود التالي:
add_filter( 'wc_product_post_type_link_product_cat', 'custom_modify_product_cat', 10, 3 ); function custom_modify_product_cat( $primary_term, $terms, $post ) { // Example: Replace the primary term if the product has a specific category if ( $post->post_type === 'product' ) { foreach ( $terms as $term ) { $termid = apply_filters( 'wpml_object_id', $term->term_id, $term->taxonomy, TRUE ); $term = get_term( $termid, $term->taxonomy ); return $term; } } return $primary_term; }