コンテンツへスキップ サイドバーへスキップ

Open

Reported for: WPML GraphQL 1.0.0

Overview of the issue

If your are employing the WPGraphQL extension, you will notice that for already translated author metadata content, such as first names, WPGraphQL queries continue to return data in the default language.

Workaround

Please, make sure of having a full site backup of your site before proceeding.

  • Open the …/wp-content/plugins/wp-graphql/src/Model/User.php file.
  • Look for line 191.
  • Replace:
    'firstName'                => function () {
    	return ! empty( $this->data->first_name ) ? $this->data->first_name : null;
    },
    
  • With:
    'firstName'                => function () {
    
    	// WPML Workaround for compsupp-7323
    	if ( class_exists('SitePress') ) {
    		$post_language_details = apply_filters( 'wpml_post_language_details', NULL, $this->global_post->ID ) ;
    		$this->data->first_name = apply_filters('wpml_translate_single_string', $this->data->first_name , 'Authors', 'first_name_'.$this->data->ID);
    	}
    
    	return ! empty( $this->data->first_name ) ? $this->data->first_name : null;
    },
    

Note: this workaround may need to be expanded for other strings as nicename, description, etc…

返信を投稿

他の人に対してトピックに沿った礼儀正しい対応をお願いします。この投稿に関連しない問題についてサポートが必要な場合は、サポートフォーラムを使用してチャットを開始するか、チケットを送信してください。

次のタグが使用できます:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>