WPML
ステータス
解決済み
報告対象
Advanced Custom Fields Multilingual 2.1.1
解決されたバージョン
Advanced Custom Fields Multilingual 2.1.2
関連するプラグイン/テーマ
Advanced Custom Fields (ACF)
トピックタグ
Compatibility

問題の概要

Advanced Custom Fieldsプラグインを使用している場合、「ACFML Synchronise translations」機能がオンになっている状態でリピーターフィールドを含む投稿を保存すると、PHP 8環境では致命的なエラーが、PHP 7環境では警告が発生する場合があります。

Fatal error: Uncaught TypeError: count(): Argument #1 ($value) must be of type Countable|array, WP_Post given in .../wp-content/plugins/acfml/classes/Helper/HashCalculator.php on line 65

回避策

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

オプション1


  • リピーターフィールドと柔軟なサブフィールドをデフォルト言語と同じ順序に保つオプションをオフにし、投稿を更新します。

それが不可能な場合は、以下を実行します。

オプション2


  • …/wp-content/plugins/acfml/classes/Helper/HashCalculator.phpファイルを開きます。

  • 25行目を探します。

  • 置換前:
    return self::hashArray( $value );


  • 置換後:
    return self::hashArray( (array) $value );

すべての既知の問題 →