- סטטוס
- נפתר על ידי המפתח
- נפתר בגרסה
- Blocksy Companion 2.0.33
- תוסף/ערכת עיצוב קשורים
- Blocksy
- תגיות נושא
- Compatibility
סקירה כללית של התקלה
בערכת העיצוב Blocksy, בעת שימוש בתכונה Products Tab עם WPML, כרטיסיות שתורגמו לשפה משנית עלולות להיות מוצגות באופן שגוי בשפה המקורית בצד הלקוח.
פתרון עוקף
אנא ודא שיש לך גיבוי מלא של האתר שלך לפני שתמשיך.
- פתח את הקובץ …/wp-content/plugins/blocksy-companion-pro/framework/premium/extensions/woocommerce-extra/features/custom-tabs/feature.php
- חפש את שורה 139.
- החלף את:
$all_products_tabs = get_posts([ 'numberposts' => -1, 'post_type' => $this->post_type, ]);
- בקוד הבא:
$all_products_tabs = get_posts([ 'numberposts' => -1, 'post_type' => $this->post_type, // WPML Workaround for compsupp-7255 - PART 1 'suppress_filters' => false ]);
- לאחר מכן, פתח את הקובץ …/wp-content/plugins/blocksy-companion-pro/framework/features/conditions/rules-resolver.php
- חפש את שורה 364.
- החלף את:
if ( isset($rule['payload']) && isset($rule['payload']['post_id']) && $post_id && intval($post_id) === intval($rule['payload']['post_id']) ) { return true; } - בקוד הבא:
// WPML Workaround for compsupp-7255 - Part 2 if ( class_exists('Sitepress') ) { $rule['payload']['post_id'] = apply_filters( 'wpml_object_id', $rule['payload']['post_id'], get_post_type($rule['payload']['post_id']) , TRUE ); } if ( isset($rule['payload']) && isset($rule['payload']['post_id']) && $post_id && intval($post_id) === intval($rule['payload']['post_id']) ) { return true; }