WPML
Stato
Risolto dall’autore
Risolto in
2.30.3.
Plugin/tema correlato
AffiliateWP
Tag dell’argomento
Compatibility

Panoramica del problema

Quando utilizzi AffiliateWP con il componente aggiuntivo AffiliateWP Portal e WPML, i link personalizzati del menu aggiunti ad Affiliate Portal vengono visualizzati in entrambe le lingue, ma le loro etichette non sono traducibili. Non esiste un’opzione integrata per tradurre le etichette di questi link personalizzati.

Soluzione alternativa

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


  • Apri il file …/wp-content/plugins/affiliatewp-affiliate-portal/includes/core/class-menu-links.php.

  • Cerca la riga 102.

  • Sostituisci:
    // filter only menu links with a page.
    $menu_links = array_filter(
    	$menu_links,
    	function( $menu_link) {
    		return ! empty( $menu_link['id'] );
    	}
    );
            


  • Con:
    // filter only menu links with a page.
    $menu_links = array_filter(
    	$menu_links,
    	function( $menu_link) {
    		return ! empty( $menu_link['id'] );
    	}
    );
    // WPML Workaround for compsupp-8049 - Register menu links labels with WPML
    foreach ( $menu_links as $index => &$link ) {
    	if ( ! empty( $link['label'] ) ) {
    		do_action( 'wpml_register_single_string', 'affiliatewp-portal-menu', 'portal_menu_link_label_' . $index, $link['label'] );
    		$link['label'] = apply_filters( 'wpml_translate_single_string', $link['label'], 'affiliatewp-portal-menu', 'portal_menu_link_label_' . $index );
    	}
    }
            


  • Vai su AffiliateWP > Impostazioni > Affiliate Portal e salva nuovamente le impostazioni.

  • Quindi vai su WPML > Traduzione stringhe per tradurre le etichette dei link del menu personalizzato.

Tutti i problemi noti →