WPML
Статус
Решено автором
Заявлено для
WPML Multilingual CMS 4.5.14
Решено в
Astra 3.9.4
Связанный плагин/тема
Astra
Теги темы
Compatibility

Обзор проблемы

Тема оформления Astra позволяет Вам включить Custom Layouts на странице параметров. Однако в последнем релизе 3.9.3 любой скрипт, добавленный в хедер или футер, не загружается при использовании этой функции.

Обходное решение

Вы можете попробовать два обходных решения. Прежде чем приступить к любому из них, обязательно сделайте полную резервную копию.

Обходное решение 1


  1. Откройте файл /wp-content/plugins/astra-addon/classes/modules/target-rule/class-astra-target-rules-fields.php.

  2. Найдите строку 1306.

  3. Замените:

    if ( class_exists( 'SitePress' ) ) {
        global $sitepress;
        $check_wpml                     = true;
        $current_language               = $sitepress->get_current_language();
        $wpml_translate_query           = "INNER JOIN {$wpdb->prefix}icl_translations as icl ON pm.post_id = icl.element_id";
        $wpml_translate_query_condition = "AND icl.language_code = '{$current_language}'";
    }

    на:
    if ( class_exists( 'SitePress' ) ) {
    	global $sitepress;
    	$cpt_translation_mode = apply_filters( 'wpml_sub_setting', false, 'custom_posts_sync_option', 'astra-advanced-hook' );
    
    	if ( $cpt_translation_mode != false ) {
    		$check_wpml                     = true;
    		$current_language               = $sitepress->get_current_language();
    		$wpml_translate_query           = "INNER JOIN {$wpdb->prefix}icl_translations as icl ON pm.post_id = icl.element_id";
    		$wpml_translate_query_condition = "AND icl.language_code = '{$current_language}'";
    	}	
    }

Обходное решение 2

  1. Перейдите в WPMLНастройкиПеревод типов записей.
  2. Переключите тип записи astra-advanced-hook на Переводимый — использовать перевод, если доступен, или язык по умолчанию и сохраните.
  3. Переключитесь обратно на Не переводимый и сохраните.

Все известные проблемы →