WPML
סטטוס
נפתר
דווח עבור
WPML Multilingual & Multicurrency for WooCommerce 4.12.6
נפתר בגרסה
WooCommerce Multilingual & Multicurrency 5.5.2

סקירה כללית של התקלה

WPML רב־לשוני וריבוי מטבעות עבור WooCommerce מאפשר לך כעת לתרגם ולהציג סקירות מוצרים. עם זאת, עדיין לא ניתן לתרגם תגובות לסקירות אלו.

פתרון עוקף

אנא צור גיבוי מלא של האתר שלך לפני שתמשיך.


  1. ערוך את הקובץ wp-content/plugins/woocommerce-multilingual/classes/Reviews/Translations/FrontEndHooks.php.

  2. החלף את:
    	private static function isNonEmptyReview( $comment ) {
    		return Obj::prop( 'comment_content', $comment )
    		       && Relation::propEq( 'comment_type', self::COMMENT_TYPE, $comment );
    	}

    ב:

    	private static function isNonEmptyReview( $comment ) {
    		return Obj::prop( 'comment_content', $comment )
    		       && Relation::propEq( 'comment_type', self::COMMENT_TYPE, $comment ) || Relation::propEq( 'comment_type', 'comment', $comment );
    	}


  3. לאחר מכן עבור אל הקובץ: wp-content/plugins/woocommerce-multilingual/classes/Reviews/Translations/Mapper.php.

  4. החלף את:
    	private function getUnregisteredReviews() {
    		// phpcs:disable WordPress.DB.PreparedSQL.NotPrepared
    		$q = "SELECT c.comment_ID, c.comment_post_ID, c.comment_content, c.comment_type, tr.language_code, st.name, st.value
    				FROM {$this->wpdb->comments} AS c
    				LEFT JOIN {$this->wpdb->prefix}icl_translations AS tr
    					ON tr.element_id = c.comment_post_ID AND tr.element_type = 'post_product'
    				LEFT JOIN {$this->wpdb->prefix}icl_strings AS st
    					ON c.comment_content = st.value
    						AND st.context = '" . FrontEndHooks::CONTEXT . "'
    				WHERE c.comment_type = '" . FrontEndHooks::COMMENT_TYPE . "'
    					AND st.name IS null";
    
    		return (array) $this->wpdb->get_results( $q );
    	}

    ב:

    	private function getUnregisteredReviews() {
    		// phpcs:disable WordPress.DB.PreparedSQL.NotPrepared
    		$q = "SELECT c.comment_ID, c.comment_post_ID, c.comment_content, c.comment_type, tr.language_code, st.name, st.value
    				FROM {$this->wpdb->comments} AS c
    				LEFT JOIN {$this->wpdb->prefix}icl_translations AS tr
    					ON tr.element_id = c.comment_post_ID AND tr.element_type = 'post_product'
    				LEFT JOIN {$this->wpdb->prefix}icl_strings AS st
    					ON c.comment_content = st.value
    						AND st.context = '" . FrontEndHooks::CONTEXT . "'
    				WHERE c.comment_type = '" . FrontEndHooks::COMMENT_TYPE . "' OR c.comment_type = 'comment'
    					AND st.name IS null";
    
    		return (array) $this->wpdb->get_results( $q );
    	}


  5. לבסוף, עבור אל WooCommerceWooCommerce Multilingualסטטוס ולחץ על הקישור פתרון בעיות.

  6. בחר ב־Register product reviews for translations.

  7. לחץ על הלחצן התחל.

כל התקלות הידועות →