Een Nederlandse basispagina met een losse vertaalresource geeft controle per veld, duidelijke publicatieregels en een eenvoudiger migratiepad.
I. Architectuur
General, components en SEO worden eenmalig beheerd in het Nederlands. Engels, Frans en Pools worden geen aparte pagina's, maar losse taalwaarden bovenop dezelfde contentstructuur.
De Nederlandse pagina is leidend. Aanpassingen gebeuren daar, in één editorflow.
Vertalingen zitten in een eigen Translations resource, niet in componentkopieen.
Alleen gemapte velden worden vertaald: heading, paragraph, button_label, SEO.
Bij elke save verschijnen alleen ontbrekende of gewijzigde strings in de wachtrij.
Nederlandse pagina beheren. Meerdere talen beoordelen, publiceren, monitoren.
III. Status per taal
Drie hoofdkleuren markeren waar de vertaling staat. Een vierde waarschuwt als de Nederlandse bron is gewijzigd.
Er is een Nederlandse bronwaarde, maar nog geen taalwaarde voor deze taal.
Er is een AI- of handmatige vertaling, maar nog geen menselijke controle.
De taalwaarde is gecontroleerd en mag volgens de publicatieregel mee naar live.
De Nederlandse bron is gewijzigd nadat de vertaling was goedgekeurd.
IV. Mapping
De scanner pakt heading, paragraph, button_label, SEO title, SEO description en slug. Technische velden en assets blijven buiten de queue.
heading, paragraph, button_labelimage_id, icon, layoutseo_title, seo_description, slugsort_order, css_class, route_nameNeem contact op → Contact us → goedgekeurd.
Per taal klik je een veld aan, ziet bron en vertaling naast elkaar, past aan en keurt goed.
VI. Bij een update
Een bestaande live pagina krijgt 1 nieuw component met 3 teksten. De vertaalmodal toont die 3 strings, niet alle bestaande content.
Voor de update
Bestaande vertalingen raken niets. Ze blijven op groen staan en zijn niet zichtbaar in de wachtrij.
Na 1 nieuw component
Alleen de drie nieuwe strings wachten op review. Dat is de vertaalflow per save.
VII. Conceptgedrag
Een nieuwe About us-pagina wordt tien keer aangepast voor publicatie. Al die tien keer vertalen kost API-quota en produceert ruis.
Pagina in concept of draft slaat de vertaalronde over. Er wordt gescand, maar niet vertaald.
Expliciete knop "Vertaal nu" of automatisch bij de eerste publicatie. Niet bij elke save.
Bij livegang wordt alles in één keer vertaald. Geen API-quota verspild aan halve versies.
VIII. Eén resource
Een aparte Translations-pagina in het CMS groepeert alle strings per taal en per status. Filters op 'wacht op review' en 'nog niet vertaald'.
EN · FR · PL — alleen de strings voor de gekozen taal, met telling per status.
Niet vertaald · wacht op review · goedgekeurd · verouderd. Klik door naar de bron.
Op sleutel, paginapad of component. Eén centrale plek voor al het vertaalwerk.
IX. Open besluit
Publicatieregel
Moet elke actieve taal op groen staan voor live? Of mag een AI-vertaling op oranje al mee?
Slugs
Slug meenemen als vertaalbaar veld, of technisch houden zoals route_name en component_key?
X. Open besluit
Interne routes, image IDs, settings-URL's en component keys. Buiten de vertaalqueue, zonder uitzondering.
Welke velden per componenttype. Whitelist, niet blacklist. Default is niet scannen.
Database + Laravel cache is voldoende. JSON per taal en pagina pas als er druk ontstaat.
NL basis · losse vertaallaag · taalstatussen · review per veld · alleen nieuw · conceptgedrag. Open punten op 10 en 11 in een tweede ronde.