Tovább a tartalomhoz

Egyedi oldalépítő-widgetek regisztrálása a fordításhoz

Egyedi Elementor-, Beaver Builder-, SiteOrigin- és Cornerstone-widgetek regisztrálása wpml-config.xml fájlban, ismétlő mezőkkel és azonosítókkal.

Az egyedi oldalépítő-widgetek fordításra regisztrálásához a wpml-config.xml fájlt kell használnod. Ez az útmutató témát vagy bővítményt készítő, illetve saját oldalépítő-kódot használó fejlesztőknek szól. Ha harmadik féltől származó oldalépítő egyedi widgetjeit nem tudod lefordítani, fordulj a WPML támogatásához.

Az olyan oldalépítők, mint az Elementor, a Beaver Builder, a SiteOrigin és a Cornerstone saját widgetekkel jönnek, és ezek a WPML-lel külön teendő nélkül működnek. Egyedi widget minden olyan további widget, amely nem része az oldalépítőnek: a fejlesztőcsapatod, harmadik fél készítette, vagy más bővítményből, témából jön, illetve olyan kiegészítő bővítményből, amelyet külön egy oldalépítőhöz (például az Elementorhoz) készítettek.

Az egyedi widgetet regisztrálni kell a fordításhoz:

  • ha az oldalépítő eredetileg nem tartalmazza;
  • ha másik bővítményen vagy témán keresztül hoztad létre és adtad hozzá;
  • ha a webhelyeidhez vagy egy oldalépítőhöz a csapatod vagy harmadik fél fejlesztette.

Korábban a leggyakoribb mód az egyedi PHP-kód volt. Ma a widgetet a wpml-config.xml fájllal regisztrálhatod.

Egyedi Elementor-widgetek a WPML 4.9-től

Szekció neve “Egyedi Elementor-widgetek a WPML 4.9-től”

A WPML 4.9-től kezdve a WPML automatikusan felismeri az egyedi Elementor-widgeteket, és fordíthatóvá teszi őket. Előfordulhat azonban, hogy olyan sztringeket is regisztrál, amelyeket nem akarsz lefordítani. Ezért erősen ajánlott akkor is kézzel beállítani a wpml-config.xml fájlt az itt leírtak szerint: így te döntöd el, mely mezők fordíthatók.

Regisztrálás a Multilingual Tools bővítménnyel

Szekció neve “Regisztrálás a Multilingual Tools bővítménnyel”

A Multilingual Tools bővítmény tartalmaz egy WPML Config Generator eszközt Elementorhoz és Gutenberg-blokkokhoz. Segítségével egy oldalra felveheted az egyedi Elementor-widgeteket vagy Gutenberg-blokkokat, amelyeket regisztrálni akarsz, és az eszköz előállítja a szükséges XML-kód első változatát. A Gutenberg-blokkokról a Gutenberg-blokkok fordíthatóvá tétele fejezet szól.

A widget regisztrációs adatainak megkeresése

Szekció neve “A widget regisztrációs adatainak megkeresése”

A wpml-config.xml fájlban való regisztráláshoz két adat kell: a widget típusának neve és a lefordítandó mezők nevei.

  1. Add a widgetet egyedül egy új oldalhoz, és mentsd az oldalt.
  2. Az Elementor az oldal widgetjeit a _elementor_data bejegyzés-metamezőben tárolja. Egy olyan bővítmény, mint a JSM Show Post Metadata, az oldalszerkesztő alján egy dobozban mutatja ezt a mezőt, így elolvashatod a widget adatait.

Az adatokban:

  • a widgetType a widget name attribútumához használandó név;
  • a settings alatti kulcsok a widget mezői. Az a kulcs, amely lefordítandó szöveget tartalmaz (például title), regisztrálandó mezőnév;
  • az ismétlő mező sorok tömbjét tartalmazza. Az a kulcs, amely ezt a tömböt tartalmazza (például contents), az „items of” név.

Ellenőrzéshez nyiss meg egy oldalt, amely használja a widgetet, a fordítószerkesztőben. A regisztrált mezők név szerint látszanak, mellettük a widget szövegei. A nem regisztrált widget semmit nem ad a feladathoz, tehát ha egyetlen szövege sem jelenik meg, a regisztráció nem lépett érvénybe.

Egyszerű widget az, amelynek nincs ismétlő mezője. Példa:

<wpml-config>
<elementor-widgets>
<widget name="heading">
<conditions>
<condition key="widgetType">heading</condition>
</conditions>
<fields>
<field type="Heading" editor_type="LINE">title</field>
<field type="Heading: Link URL" editor_type="LINK">link>url</field>
</fields>
</widget>
</elementor-widgets>
</wpml-config>

A felépítés:

  1. Kezdd a külső címkével, amely megmondja, melyik oldalépítő widgetjeit regisztrálod:
    • <elementor-widgets>: Elementorhoz, Elementor PRO-hoz vagy bármely Elementor-kiegészítőhöz;
    • <beaver-builder-widgets>: a Beaver Builder Lite-hoz, a prémium Beaver Builderhez vagy bármely Beaver Builder-kiegészítőhöz;
    • <siteorigin-widgets>: a SiteOrigin oldalépítőhöz;
    • <cornerstone-widgets>: az X vagy PRO témával jövő Cornerstone oldalépítőhöz.
  2. Add hozzá a widgeteket:
    • <widget name="widget_name">: a widget_name az a név, amellyel a widget az oldalépítőben regisztrálva van;
    • <conditions> (opcionális): feltételben megadhatsz egy kulcsot a widget nevével. Akkor használható, ha a widget neve eltér az adatokban lévő kulcstól, de általában nem kell.
  3. A widget mezőit <fields> címkébe csomagolva add meg:
    • field: a mező azonosítója, ugyanaz, mint amelyet a Control_stack::add_control függvénnyel a vezérlő hozzáadásakor használtál;
    • type (opcionális): a mező típusa, az a szöveg, amelyet a WPML Advanced Translation Editor vagy Classic Translation Editor mutat, hogy a fordító tudja, melyik mezőt fordítja;
    • editor_type (opcionális): a Classic Translation Editor szövegmezőjének típusa. Értékei: LINE, AREA, LINK, VISUAL. Ha hiányzik, LINE;
    • key_of (opcionális): csak a <fields-in-item> címkén belüli, tömböt tartalmazó <field> címkéknél használatos.

Ezekkel az elemekkel tetszőleges számú mezős egyszerű widgetet regisztrálhatsz.

Bejegyzés- vagy taxonómiaazonosítót tartalmazó mezők

Szekció neve “Bejegyzés- vagy taxonómiaazonosítót tartalmazó mezők”

A type attribútum általában leíró szöveget jelenít meg a fordítószerkesztőben. Ha viszont a widget mezői bejegyzés- vagy taxonómiaazonosítót tárolnak (kiválasztott képeket, kapcsolódó bejegyzéseket, kiválasztott kategóriákat), különleges értékeket használsz, amelyek automatikus átalakítást váltanak ki:

  • type="post-ids": bejegyzésazonosítókat tartalmazó mezőkhöz;
  • type="term-ids": taxonómia-/kifejezésazonosítókat tartalmazó mezőkhöz.

Ilyen értékeknél:

  • a mező nem jelenik meg a fordítószerkesztőben;
  • a WPML automatikusan átalakítja az azonosítókat a lefordított tartalomra mutatókká;
  • egyetlen azonosító és vesszővel elválasztott lista egyaránt támogatott.
<wpml-config>
<elementor-widgets>
<widget name="the-widget-name">
<fields>
<field type="post-ids" sub-type="attachment">image_id</field>
<field type="post-ids" sub-type="post">selected_posts</field>
<field type="term-ids" sub-type="category">category_filter</field>
</fields>
</widget>
</elementor-widgets>
</wpml-config>

Az opcionális sub-type megadja a pontos bejegyzéstípust vagy taxonómiát:

  • type="post-ids" esetén: attachment, post, page vagy az egyedi bejegyzéstípus slugja;
  • type="term-ids" esetén: category, post_tag vagy az egyedi taxonómia slugja.

A sub-type megadása gyorsít, mert nem kell további adatbázis-lekérdezéssel megállapítani a tartalom típusát.

Az ismétlő mezős widgeteknél a mezőket <fields-in-item items_of="tabs"> címkébe kell csomagolni (ahol a tabs az ismétlő mezőket tartalmazó kulcs neve):

<widget name="accordion">
<fields-in-item items_of="tabs">
<field type="Accordion: Title" editor_type="LINE">tab_title</field>
<field type="Accordion: Content" editor_type="VISUAL">tab_content</field>
</fields-in-item>
</widget>

Egy widgetnek több ismétlő mezője is lehet. Az Ultimate Addons for Elementor Table widgetjénél például így:

<widget name="uael-table">
<fields-in-item items_of="table_content">
<field type="The Cell text" editor_type="LINE">cell_text</field>
</fields-in-item>
<fields-in-item items_of="table_headings">
<field type="The Heading text" editor_type="LINE">heading_text</field>
</fields-in-item>
</widget>

Egyszerű és ismétlő mezőket is tartalmazó widgetek

Szekció neve “Egyszerű és ismétlő mezőket is tartalmazó widgetek”

Egy widgetnek lehet fields és fields-in-item része is:

<widget name="price-table">
<fields>
<field type="Price Table: Heading" editor_type="LINE">heading</field>
<!-- ... -->
</fields>
<fields-in-item items_of="features_list">
<field type="Price table: text" editor_type="LINE">item_text</field>
</fields-in-item>
</widget>

Az XML áttekinthetőségéért a mezők címkéjének elé teheted a csoport nevét. Példa egy hotspot widgetre:

<widget name="hotspot">
<fields-in-item items_of="hotspot">
<field type="Hotspot: Label">hotspot_label</field>
<field type="Hotspot: URL" key_of="hotspot_link">url</field>
<field type="Hotspot: Content" editor_type="VISUAL">hotspot_tooltip_content</field>
</fields-in-item>
</widget>

Itt minden mező a Hotspot: előtagot kapja. Ez az előtag az Advanced Translation Editorban is megjelenik: a widget mezői egy Hotspot dobozban vannak, és mindegyiknek saját címkéje van, így könnyebb azonosítani és fordítani őket.

Más oldalépítő-tartalmak regisztrálása

Szekció neve “Más oldalépítő-tartalmak regisztrálása”

Sztringek, shortcode-ok és más oldalépítő-tartalmak regisztrálását a Nyelvi konfigurációs fájl fejezet sorolja fel.

Készült:

Tiszteletben tartjuk a magánszférádat

Sütiket használunk a böngészési élmény javítására és a forgalom elemzésére. Az analitika csak akkor indul, ha engeded. Adatvédelmi irányelvek, Sütitájékoztató.

Sütibeállítások