you either duplicate your website,
or pay multi-money € ¥ ₪ ¥ $.
The old alternative is to implement multiple languages yourself,
e.g. either a complete duplicate of the website (terrible maintenance)
or a lot of tweaking and customizations (duplicate pages, post types, custom templates per page, where needed, and so forth).
WordPress developers made it clear by now (20 years) that they don’t care about multiple languages, (and some langauges are not even really supported, which is about 1/5 of the world population writing from right to left).
you either pay with money or with (a lot of) time.
Related Posts:
- Issue with translation – Gutenberg
- WordPress custom block compatability with WPML
- How to translate multiple blocks within one plugin
- Add pre-publish conditions to the block editor
- How does Gutenberg handle translations in React?
- How can I access core/paragraph textColor in a block template
- Saving post meta using the new EntityProvider APIs
- Implement Panel Color Inspector Control in Gutenberg
- gutenberg dynamic block is returning 404
- Gutenberg InspectorControls is deprecated, how to add custom block settings?
- How should you internationalize javascript spread in multiple files but build in one?
- Why is onChange={ ( content ) => setAttributes( { content } )} now used?
- How to set column widths in a CPT block template?
- Access GutenBerg data with Javascript?
- Only show focused toolbar for Gutenberg Block with Multiple text fields
- Gutenberg: How to Change Post Status Programmatically?
- Adding a custom PanelColorSettings control to a core block, and using the color slug in a custom className
- Enhancing Gutenberg featured image control
- WordPress: After Gutenberg plugin migration to block.json the localization/ translations with PolyGlot in JavaScript does not work anymore
- Is it possible to create column width presets in Gutenberg?
- Testing custom themes / plugins under Gutenberg
- Gutenberg LinkControl suggestionsQuery not working
- Gutenberg – How to prevent block from being deleted and reordered/moved
- WordPress Gutenberg Columns block
- Gutenberg InnerBlocks predefined block supports
- Is it possible to bulk migrate all deprecated instances of a gutenberg block?
- How to Add a Container Class to Standard Gutenberg Blocks
- How to display InnerBlocks in render callback
- How to check if post has Video or Gallery block in Gutenberg blocks?
- Gutenberg – button to parse and format all blocks?
- Custom WP Block using Inner Blocks crashes editor, doesn’t save content
- Disable title block on edit screen for a custom post type
- Gutenberg: Block validation fails if editor is reloaded or post is edited. data.getBlocks(); is empty in save function
- Delete a Gutenberg Block Programmatically?
- Can Gutenberg be used as an editor on a page?
- Import external data into post using custom Gutenberg block
- How to transform block variant to default version?
- How can I add a color picker to a custom Gutenberg block which includes the default system palette from theme.json?
- How to makes Custom Post Type posts as Gutenberg’s patterns?
- Can’t run WP e2e-test-utils because the browser exits on login?
- Modify the InnerBlocks ‘Add block’ block appender label
- Do I need wp-tinymce-js?
- wp_schedule_single_event issue with save_post hook in gutenberg
- Gutenberg TextareaControl escapes html
- Block editor fails to update HTML section when the word “from” is in source code
- Gutenberg extending the existing class
- Remove or rename “Default” from Gutenberg typography settings
- How to put and components inside in Gutenberg block
- Wp-script package stop to work
- Remove formatting in rich text with Gutenbergs Block editor
- Setting font sizes in theme.json
- Is it possible to disable font sizes on sub blocks only?
- Get selected block every time a new block is selected in Gutenberg
- How do I include and iframe in a Custom Block?
- Gutenberg InnerBlocks with ACF Blocks – How to enable multiple buttons?
- I cant find the custom html block
- Gutenberg allow use of block, but hide it from the block picker
- I am working with gutenberg blocks, specially a slider block. I wish to show the excerpt content from a custom api to the backend as well as frontend
- WordPress Gutemberg RichText FormatType no wrap with tagName
- How to add custom HTML tags in the visual mode via keyboard only?
- Add page title after first block
- Save JSON data with Gutenberg and show it in the content
- Gutenberg Blocks – Save a predefined text attribute?
- Adding a size to core/image in an innerblocks breaks the save
- Is it possible to use the WordPress block directory to make my own custom blocks
- how to copy shortcode into a block?
- Gutenberg blocks – template_lock with several post type
- Gutenberg – reusable blocks that I can edit? Am I being slow?
- Block editor: Sandbox iframe shows outdated HTML
- Gutenberg Array push
- Gutenberg: Why doesn’t the button core-component render on the frontend
- Using styled-components in the save() function on gutenberg
- block theme FSE – save changes to the theme?
- How can I avoid setTimeout and redundant getEntityRecord calls in a block editor sidebar?
- Can this react script be optimized? How to make it faster
- No inline css, simple css file?
- How can I reset/remove background colour from a block
- get the queried_object of an url
- Elements positioning in a custom block
- Is it possible to get rid of the wrapping divs on a block component?
- In Full-Site-Editing, edits made to the code in a template part are not showing
- How to get appender icon to appear more often for innerblock usage
- Create a block variation of list elements
- Remove ‘default’ font option from Gutenberg typography settings
- Globally update pattern styles
- Custom Gallery Block – Uncaught TypeError: setAttributes is not a function
- how to display gutenberg editor in a view
- Gutenberg list items nesting and creating invalid content errors
- Trying to understand block alignment
- Custom Link Block with own background color
- Is there a standardized way to get data inside my Dynamic Gutenberg Block?
- Disable block from the editor if another block is used inside current post
- Block Theme : Query Loop with attachments
- How to Programmatically Trigger the Update of a Post in WordPress?
- Is it possible to pass dynamic data from a parent dynamic block to descendant dynamic block via context?
- New server, custom blocks all give “Your site doesn’t include support for the xxx block”
- Theme.json: styles.typography.FontFamily renders as default font in front end but not editor
- Replace multiple RichText components in a single block – wp.blockEditor.RichText multiline prop is deprecated
- Using Button from WordPress components does not work when used for frontend
- How to add “double footer” in WordPress block editor? [closed]