WPML

Scopri come registrare i contenuti personalizzati del page builder per la traduzione utilizzando il file wpml-config.xml. Registra stringhe, media, widget del page builder, ID degli shortcode e altro ancora.

Questa guida è per gli sviluppatori che creano temi e plugin o aggiungono codice personalizzato del page builder al loro sito.

Se usi un page builder di terze parti e non riesci a tradurre i widget personalizzati sul tuo sito web, contatta il supporto di WPML.

Hai bisogno di generare un file wpml-config.xml? Visita la nostra guida passo passo per generare automaticamente un file di configurazione utilizzando il plugin Multilingual Tools.

Tradurre le stringhe

Consideriamo un esempio in cui hai un separatore di testo aggiunto a una pagina utilizzando Visual Composer. Questo separatore ha un titolo e il suo shortcode ha questo aspetto:

[vc_text_separator title="Separator Title"]

Per tradurre il titolo di questo separatore di testo, devi aggiungere alcune righe al tuo file wpml-config.xml. In questo modo, WPML “saprà” che il titolo di quel separatore deve essere tradotto.

Il codice seguente è un esempio di ciò che devi aggiungere al file wpml-config.xml in questo caso.

Esempio di aggiunta di uno shortcode del page builder al file wpml-config.xml
<wpml-config>
  <shortcodes>
    <shortcode>
        <tag>vc_text_separator</tag>
        <attributes>
            <attribute>title</attribute>
        </attributes>
    </shortcode>
  </shortcodes>
</wpml-config>

Esaminiamo la struttura dell'esempio precedente:

  • Inizia con il tag shortcodes. Tutti gli shortcode del tuo sito che devono essere tradotti dovrebbero essere inseriti sotto questo tag.
  • Usa il tag shortcode per racchiudere tutti i tag appartenenti a un singolo shortcode.
  • Usa il tag chiamato tag per definire il nome dello shortcode. In questo caso, è vc_text_separator. Se preferisci, puoi aggiungere etichette personalizzate opzionali ai tag. Queste etichette verranno visualizzate accanto al testo sia nell'Editor di traduzione avanzato che nell'Editor di traduzione classico. Anche i file XLIFF esportati includono queste etichette. Vedi l'esempio seguente per scoprire come aggiungere etichette a tag e attributi.
  • Gli shortcode possono avere uno o più attributi, quindi devi racchiuderli nel tag attributes (plurale) e usare il tag attribute (singolare) per definire il titolo di ciascun attributo.

I page builder (a volte) includono elementi di design che hanno attributi di link.

Puoi fare in modo che i link interni puntino automaticamente alla versione tradotta di quell'articolo utilizzando l'opzione del link: type="link".

Puoi usare l'attributo encoding con questa opzione. Gestisce la codifica speciale utilizzata da vari page builder. L'attributo di codifica è solitamente specifico per il page builder che utilizzi. Accetta i seguenti valori:

  • base64 – Shortcode HTML grezzo di Visual Composer. Lo shortcode memorizza l'HTML come stringa base64.
  • vc_link – Formattazione speciale dei link per Visual Composer.
  • vc_values – Codifica speciale di Visual Composer per i valori nei widget progress-bar, pie-chart e line-chart.
  • av_link – Formattazione speciale dei link per Enfold.
  • allow_html_tags – Di solito i tag HTML vengono rimossi dagli attributi degli shortcode. Imposta la codifica su allow_html_tags se l'attributo dello shortcode deve consentire i tag HTML. Usalo con cautela, poiché consentire i tag HTML in alcune situazioni può rovinare la formattazione e potrebbe rappresentare un problema di sicurezza.
Esempio di aggiunta dell'attributo link allo shortcode: type="link"
<wpml-config>
  <shortcodes>
    <shortcode>
            <tag>av_button</tag>
            <attributes>
                <attribute>label</attribute>
                <attribute type="link" encoding="av_link">link</attribute>
            </attributes>
    </shortcode>
  </shortcodes>
</wpml-config>

Se stai pensando di usare shortcode urlencoded, assicurati di leggere la pagina su come tradurre gli shortcode urlencoded.

Esempio di aggiunta di etichette a tag e attributi
<wpml-config>
    <shortcodes>
        <shortcode>
            <tag label="My shortcode label">my_shortcode</tag>
            <attributes>
                <attribute label="Shortcode title">title</attribute>
            </attributes>
        </shortcode>
    </shortcodes>
</wpml-config>

Aggiungere etichette a tag e attributi ti permette di visualizzare etichette personalizzate nell'Editor di traduzione avanzato o nell'Editor di traduzione classico. Questo può aiutare il traduttore a comprendere meglio il contesto della stringa.

Raggruppare i campi per una migliore organizzazione

Per migliorare la chiarezza e l'organizzazione della tua configurazione XML, puoi far precedere le etichette dei campi dal nome del gruppo. Considera questo esempio di un pulsante CTA:

<wpml-config>
    <shortcodes>
        <shortcode>
            <tag label="Call To Action: Content">et_pb_cta</tag>
            <attributes>
                <attribute label="Call To Action: Title">title</attribute>
                <attribute label="Call To Action: Button Text">button_text</attribute>
                <attribute label="Call To Action: Button URL" type="link">button_url</attribute>
            </attributes>
        </shortcode>
    </shortcodes>
</wpml-config>

Qui, ogni attributo all'interno dello shortcode et_pb_cta è preceduto dall'etichetta Call To Action: , che viene visualizzata anche nell'Editor di traduzione avanzato:

Tradurre il pulsante CTA nell’Editor di traduzione avanzato
Tradurre il pulsante CTA nell’Editor di traduzione avanzato

Tradurre i media

Puoi usare WPML Media Translation per usare immagini diverse per lingue diverse nei contenuti del page builder. Questo viene fatto convertendo gli ID e gli URL delle immagini. Devi “dire” al page builder che usa gli shortcode come effettuare questa conversione. Il codice seguente è un esempio di ciò che devi aggiungere al file wpml-config.xml in questo caso.

Esempio di aggiunta di uno shortcode del page builder al file wpml-config.xml per la traduzione delle immagini
<wpml-config>
  <shortcodes>
    <shortcode>
        <!-- Convert media IDs in `gallery_ids` attribute, and ignore the shortcode content -->
        <tag ignore-content="1">et_pb_gallery</tag>
        <attributes>
          <attribute type="media-ids">gallery_ids</attribute>
        <attributes>
    </shortcode>
    <shortcode>
        <!-- Convert the media URL in the content, translate some string attributes for `title` and `alt`, convert media URL in `src` attribute -->
        <tag type="media-url">et_pb_image</tag>
        <attributes>
          <attribute>title_text</attribute>
          <attribute>alt</attribute>
          <attribute type="media-url">src</attribute>
        </attributes>
    </shortcode>
  </shortcodes>
</wpml-config>

Puoi usare i seguenti valori:

  • ignore-content – Puoi usarlo all'interno di un elemento tag. Questo valore è opzionale e può essere 0 o 1. Puoi usare questo attributo per ottenere la retrocompatibilità per i nuovi shortcode dei media. Se il valore è impostato su 1, il contenuto dello shortcode non verrà elaborato.
  • type – Puoi usarlo all'interno di un elemento tag. Puoi anche usare il contenuto dello shortcode che contiene l'URL dei media come valore opzionale all'interno di media-url.
  • type – Puoi usarlo anche all'interno di un elemento attribute. In questo caso, può avere uno dei seguenti valori opzionali:
    • media-ids – un elenco separato da virgole di ID dei media.
    • media-url – URL dei media
    • link – punta a un'altra pagina del sito e WPML lo convertirà automaticamente nell'URL della pagina tradotta

Tradurre i media negli attributi dei blocchi

Puoi usare anche i tipi di attributo media-url e media-ids con i blocchi Gutenberg per tradurre media come le immagini di sfondo. Funziona in modo simile agli shortcode, ma usa l'elemento <gutenberg-block> con elementi <key> nidificati per definire type="media-url" e type="media-ids".

L'utilizzo di questo elemento permette al nostro componente aggiuntivo WPML Media Translation di tradurre le immagini di sfondo.

Questo funziona sia per i blocchi Gutenberg che per Divi 5. Questa versione di Divi usa i blocchi per memorizzare i contenuti, quindi l'elemento <gutenberg-block> funziona per aggiungere la traduzione dei media.

Ecco un esempio di aggiunta della traduzione dei media per gli attributi dei blocchi Gutenberg:

<wpml-config>
  <gutenberg-blocks>
        <gutenberg-block type="divi/section" translate="1">
            <key name="module">
                <key name="decoration">
                    <key name="background">
                        <key name="desktop">
                            <key name="value">
                                <key name="image">
                                    <key name="url" type="media-url" />
                                </key>
                            </key>
                        </key>
                    </key>
                </key>
            </key>
        </gutenberg-block>
  </gutenberg-blocks>
</wpml-config>

Tradurre i widget del page builder

WPML ti permette di registrare i widget del page builder all'interno del tuo file di configurazione delle lingue. Per informazioni dettagliate, vedi la nostra pagina di documentazione su come registrare i widget del page builder per la traduzione.

Convertire automaticamente gli ID degli shortcode

A partire da WPML 4.5.9, puoi dichiarare gli ID degli articoli o dei termini di tassonomia situati negli attributi degli shortcode. Questi ID possono poi essere convertiti automaticamente sul frontend del tuo sito.

A partire da WPML 4.8, questa stessa logica si estende agli ID degli oggetti memorizzati nei testi admin, così come agli ID nei campi personalizzati degli articoli e nei campi dei termini di tassonomia personalizzati.

Per esempio, considera il seguente shortcode:

[foo_product_list product_ids="12,34,56"]

Puoi dichiarare che l'attributo product_ids contiene ID di articoli con la seguente configurazione:

Dichiarare che l'attributo product_ids contiene ID di articoli
<shortcode>
    <tag ignore-content="1">foo_product_list</tag>
    <attributes>
        <attribute type="post-ids" sub-type="product">product</attribute>
    </attributes>
</shortcode>

Sul frontend, lo shortcode si converte automaticamente in:

[foo_product_list product_ids="13,35,57"]

Puoi usare i seguenti attributi di configurazione:

  • type – può essere post-ids o taxonomy-ids
  • sub-type (opzionale) – un'entità specifica del type se è già nota. Per esempio, product per il tipo di post personalizzato Prodotto proveniente da WooCommerce. Se non è definito, l'entità specifica verrà indovinata.

La conversione degli ID è versatile e cerca di adattarsi alla maggior parte dei formati possibili di ID (ID singolo, elenco di ID, array serializzato, array codificato in JSON).

Risorse aggiuntive

Per saperne di più sul file wpml-config.xml , visita la guida sui File di configurazione delle lingue.

Per personalizzare altri elementi utilizzando il file wpml-config.xml, visita le nostre guide aggiuntive:

Scritto da Amir · Ultimo aggiornamento 4 febbraio 2026