$postData ) { $postsToTranslation[ $postId ] = [ 'type' => $postData['type'], 'media' => Obj::propOr( [], 'media-translation', $postData ), 'target_languages' => [] ]; $post = self::getPost( $postId ); $postLang = Post::getLang( $postId ); foreach ( $targetLanguages as $language ) { if ( $postLang === $language ) { $ignoredPostsMessages [] = $messages->ignoreOriginalPostMessage( $post, $language ); continue; } if ( self::hasInProgressJob( $post->ID, $post->post_type, $language ) ) { $ignoredPostsMessages [] = $messages->ignoreInProgressPostMessage( $post, $language ); continue; } $postsToTranslation[ $postId ]['target_languages'] [] = $language; } } return [ $postsToTranslation, $ignoredPostsMessages ]; } private static function getPost( $postId ) { return Str::includes( 'external_', $postId ) ? apply_filters( 'wpml_get_translatable_item', null, $postId ) : get_post( $postId ); } }