WPML

問題の概要

Germanized for WooCommerceとWPMLを使用している環境では、配送クラスの条件を利用する配送方法が、翻訳された商品で利用できないという問題があります。

回避策

この問題は修正されました。 最新バージョンにアップデートするとお使いのサイトで問題が解決するため、この回避策はまだアップデートできない場合にのみ必要です。

続行する前に、サイトの完全なバックアップを取得してください。

  • …/wp-content/plugins/woocommerce-germanized/packages/woocommerce-germanized-shipments/src/ShippingMethod/ShippingMethod.phpファイルを開きます。
  • 957行目を探します。
  • 変更前:
    $classes = isset( $condition['classes'] ) && ! empty( $condition['classes'] ) ? array_map( 'absint', (array) $condition['classes'] ) : array();
  • 変更後:
    $classes = isset( $condition['classes'] ) && ! empty( $condition['classes'] ) ? array_map( 'absint', (array) $condition['classes'] ) : array();
    // compsupp-7583 workaround
    // Assuming $classes is an array of category IDs.
    $classes = array_map(function($class_id) {
    	// Translate each ID using WPML
    	return apply_filters('wpml_object_id', $class_id, 'category');
    }, $classes);

すべての既知の問題

まだこの問題が発生しますか?

アップデートしても問題が解決しない場合は、サポートのご質問をお寄せください。一緒に調査いたします。