FAQ
FAQCzy wszystkie bloki Gutenberg mogą być tłumaczone?

Czy wszystkie bloki Gutenberg mogą być tłumaczone?

Gato AI Translations for Polylang tłumaczy natywnie wszystkie bloki z rdzenia WordPress i obsługuje integrację niestandardowych bloków oraz bloków firm trzecich.

Każdy nowy blok może być obsługiwany, o ile eksponuje ciągi znaków do przetłumaczenia w stosunkowo bezpośredni sposób. A to nie zawsze ma miejsce.

Bloki Yoast SEO (Yoast How-to i Yoast FAQ) są dobrym przykładem. Te bloki są obsługiwane tylko dla prostych ciągów znaków:

Blok Yoast FAQ z prostym ciągiem znaków
Blok Yoast FAQ z prostym ciągiem znaków

Ciągi znaków zawierające tagi HTML (w tym linki, obrazy, style HTML takie jak strong lub italic, nowe linie itp.) nie są obsługiwane:

Blok Yoast FAQ z tagami HTML
Blok Yoast FAQ z tagami HTML

Wynika to ze sposobu, w jaki dane te są przechowywane przez bloki Yoast, zawierające mieszaninę ciągów znaków i JSON z zagnieżdżonymi właściwościami:

Kod bloku Yoast FAQ z tagami HTML
Kod bloku Yoast FAQ z tagami HTML

Co wygląda następująco:

{
    "question": [
        "L'émergence d'études plus récentes sur le collagène marin tendent à montrer qu'il possède des qualités biologiques très favorables",
        {
            "type": "sup",
            "props": {
                "children": [
                    {
                        "type": "a",
                        "props": {
                            "href": "#bibliographie",
                            "children": [
                                "5"
                            ]
                        }
                    }
                ]
            }
        },
        "•",
        {
            "type": "br",
            "props": {
                "children": [
                    1
                ]
            }
        },
        {
            "type": "br",
            "props": {
                "children": [
                    1
                ]
            }
        },
        "De plus, l'extraction du collagène marin permet d'exploiter et de valoriser les sous-produits de l'industrie de transformation du poisson voués à la perte. Par ailleurs, le collagène marin présente des avantages par rapport au collagène bovin : moins de risque de transmission de maladie et aucune considération religieuse",
        {
            "type": "sup",
            "props": {
                "children": [
                    {
                        "type": "a",
                        "props": {
                            "href": "#bibliographie",
                            "children": [
                                "6"
                            ]
                        }
                    }
                ]
            }
        },
        ". ",
        {
            "type": "br",
            "props": {
                "children": []
            }
        },
        {
            "type": "br",
            "props": {
                "children": []
            }
        },
        "Néanmoins, les équipes de recherche ne sont pas unanimes sur l'efficacité de l'un par rapport à l'autre. Ce d'autant que plusieurs facteurs peuvent affecter la manière dont le collagène est assimilé."
    ],
    "jsonQuestion": "<strong>Quel est le meilleur collagène : marin ou bovin ?</strong>"
}

Wtyczka nie może wysyłać całej struktury JSON do usługi AI, ponieważ nie można mieć pewności, że zostanie ona poprawnie zinterpretowana. Nie może też wyodrębniać ciągów znaków do przetłumaczenia i wysyłać tylko tych, gdyż nie wiadomo, czym są te właściwości w strukturze JSON (np. czasami children, ale czasami nie).

Ponadto bloki Yoast przechowują te same informacje 3 razy (właściwości answer i jsonAnswer, a także tekst wewnątrz wyrenderowanej zawartości HTML) w różnych formatach, a ich tłumaczenia muszą być zgodne, bo w przeciwnym razie edytor Gutenberg wyświetli błąd na tym bloku. Osiągnięcie tego nie jest w rzeczywistości wykonalne.

Dlatego wtyczka obsługuje tylko proste ciągi znaków dla tych bloków.