WPML
Stato
Risolto dall’autore
Plugin/tema correlato
BeTheme
Tag dell’argomento
Compatibility

Panoramica del problema

Nei siti web che utilizzano il tema Betheme e WPML, i template header/footer globali tradotti potrebbero non essere visualizzati correttamente nelle pagine tradotte. Al loro posto, appare il template nella lingua originale.

Soluzione alternativa

Assicurati di avere un backup completo del tuo sito prima di procedere.


  • Apri il file …/wp-content/themes/betheme/functions/theme-functions.php.

  • Sostituisci il seguente snippet:
    // wpml fix
    if( defined( 'ICL_SITEPRESS_VERSION' ) ){
    	$default_lang = apply_filters('wpml_default_language', NULL );
    	$current_lang = apply_filters( 'wpml_current_language', NULL );
    	if( !empty($default_lang) && !empty($current_lang) && $current_lang != $default_lang ) $lang_postfix = '_'.$current_lang;
    }else if( function_exists( 'pll_the_languages' ) ) {
    	if( pll_default_language() != pll_current_language() ) $lang_postfix = '_'.pll_current_language();
    }

  • Con:
    // wpml fix
    if( defined( 'ICL_SITEPRESS_VERSION' ) ){
    	$default_lang = apply_filters('wpml_default_language', NULL );
    	$current_lang = apply_filters( 'wpml_current_language', NULL );
    	
    	// WPML WORKAROUND FOR compsupp-7113 (we are disabling $lang_postfix)
    	if( !empty($default_lang) && !empty($current_lang) && $current_lang != $default_lang ) {
    		//$lang_postfix = '_'.$current_lang;
    	}
    }else if( function_exists( 'pll_the_languages' ) ) {
    	if( pll_default_language() != pll_current_language() ) $lang_postfix = '_'.pll_current_language();
    }

  • Quindi, apri quest’altro file …/wp-content/themes/betheme/functions.php

  • Sostituisci la funzione mfn_global():
    function mfn_global() {
        global $mfn_global;
    	
    	$mfn_global = array(
            'header' => mfn_template_part_ID('header'),
            'footer' => mfn_template_part_ID('footer'),
            'sidemenu' => mfn_global_sidemenu_id(),
            'single_product' => mfn_single_product_tmpl(),
            'blog' => mfn_archive_template_id('blog'),
            'portfolio' => mfn_archive_template_id('portfolio'),
        );
    }

  • Con:
    function mfn_global() {
        global $mfn_global;
    	
        $header_global = mfn_template_part_ID('header');
    	  $header_global = apply_filters( 'wpml_object_id', $header_global, get_post_type($header_global) , TRUE  );
    
        $footer_global = mfn_template_part_ID('footer');
        $footer_global = apply_filters( 'wpml_object_id', $footer_global , get_post_type($footer_global) , TRUE  );
    
    	  $mfn_global = array(
            'header' => $header_global,
            'footer' => $footer_global,
            'sidemenu' => mfn_global_sidemenu_id(),
            'single_product' => mfn_single_product_tmpl(),
            'blog' => mfn_archive_template_id('blog'),
            'portfolio' => mfn_archive_template_id('portfolio'),
        );
    }

Tutti i problemi noti →