WPML

Overview of the Issue

When using the WPML’s duplication feature with Bricks templates, you will encounter that changes in default language are not being reflected in other languages when the WPML Media Translation plugin is active.

Workaround

This issue is fixed in WPML Multilingual CMS 5.0.0. Updating solves it on your site, so you only need this workaround if you can’t update yet.

Update to WPML 5.0 or later. Duplicated Bricks templates now follow the changes you make in the default language, also with WPML Media Translation active.

If you cannot update yet:

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

Part I

  • Open …/wp-content/plugins/wpml-media-translation/classes/media-translation/class-wpml-media-custom-field-images-translation.php file.
  • Look for line 56.
  • Just after:
    $setting          = $settings_factory->post_meta_setting( $meta_key );
  • Add:
    // Workaround part 1
    $bricks_meta_keys = array(
    	'_bricks_template_type',
    	'_bricks_page_content_2',
    	'_bricks_editor_mode',
    	'_bricks_template_settings',
    );
    
    if ( strpos( $meta_key, 'bricks' ) !== false ) {
    	return;
    }

Part II

  • Open …/wp-content/plugins/wpml-media-translation/classes/media-translation/class-wpml-media-set-posts-media-flag.php file.
  • Look for line 128.
  • Just after:
    $post_with_media_files = $this->post_with_media_files_factory->create( $post_id );
  • Comment the following part:
    // Workaround part 2
    /*if ( $post_with_media_files->get_media_ids() ) { // it seems that this line is causing this issue
    	update_post_meta( $post_id, self::HAS_MEDIA_POST_FLAG, 1 );
    } else {
    	delete_post_meta( $post_id, self::HAS_MEDIA_POST_FLAG );
    }*/

All known issues

Still Seeing This Issue?

If updating doesn’t fix it, ask a support question and we’ll look into it with you.