Zero One Documentation
Theme demo
  • Overview
  • Terms & Guidelines
  • Guide
    • Installation & Setup
      • Local environment
      • Server
      • Default language!
      • Multilanguage website
      • Config options
      • SMTP email options
      • Folder structure
      • htaccess
      • Updating
      • PHP Composer
    • Administration panel
      • Translating panel
    • Site options
      • SEO options
      • Multi-language
    • Theme styling
      • Less/CSS setup
      • Changing Less variables
      • app.less file
      • Customizing elements
      • Helpful classes
    • Page types
      • Page options
    • Blog
      • Comments
      • Article
    • Work (Portfolio)
      • Project page
    • Shop
      • Snipcart
    • Layout Builder
      • Column Options block
      • Subgrid block
      • Card block
      • Text (Writer) block
      • Custom Heading block
      • Custom List block
      • Typed Text block
      • Quote block
      • Button block
      • › 25 more blocks
    • Form Builder (Premium)
    • OLD Page Builder deprecation
    • Tricks
      • Using icons in the content
      • Kirbytext link tag to button
      • Tricks with image classes
      • Adding Google Fonts
      • Custom icons
      • Cookie notice/banner
    • Theme extending
      • Page Transitions (Swup)
      • Contact form extending
      • Self-hosted fonts
      • Adding new templates
      • Adding new Content block (Layout Builder)
    • GDPR
  • More
  • Support
  • Hire us
  • Changelog
  • Credits
  • Affiliate
Powered by GitBook
On this page
  • If English is your website default language
  • If English is NOT your website default language
  • Languages detect support
  • RTL support

Was this helpful?

  1. Guide
  2. Site options

Multi-language

PreviousSEO optionsNextTheme styling

Last updated 16 days ago

Was this helpful?

Zero One is multi-language ready, and actually, in config.php it is set to 'languages' => true. With English as the main language. And serving it as site root as a base. So, every .txt file in content folder has .en.txt at the end.

Have in mind that Site Settings are also translatable, which means that you can have different settings per language.

If English is your website default language

And you want to add more languages, just go to Kirby Settings -> Languages, add a new language and start translating your content. Everything will work as expected.

See also:

If English is NOT your website default language

Go to Kirby Settings -> Languages, and delete English as a default language. Add your language as the default language. That's it, you can start working.

There is just one thing. If you want your default language to be at domain root, you will have to go to zero-one/site/languages/[yourlanguageextension].php, open it with a text editor and

# Change this
'url' => NULL

# Into this
'url' => '/'

When saved, your language will be at domain/folder root.

Languages detect support

From version 2.1.0 support for automatic language detection exist in Zero One.

You just have to add to config.php next option:

'languages.detect' => true,

RTL support

Theme Styler by default doesn't support RTL language, small code changes are needed for that to work. Contact us for help with that.

Zero One supports RTL (right-to-left) languages.

<?= css(['assets/app/dist/css/uikit.app.min.css']) ?>

Add

<?= css(['assets/app/dist/css/uikit.app-rtl.min.css']) ?>

If you are using multi-domain (), language detect can't work, so please turn it off. You can remove whole language detect code from config file.

But website styling must be done only by .

But to enable support on the front-end you'll have to site/plugins/zero-one/snippets/header.php and instead of

And when you compile CSS files instead of pnpm compile you'll have to use pnpm compile-rtl.

Learn more at .

Also, check out RTL enabling in Kirby docs

https://getkirby.com/docs/guide/languages/introduction#adding-languages__via-the-panel
https://getkirby.com/docs/guide/languages/translating-content#panel-users
separate domain for language
LESS/CSS styling
override
https://www.one.thezero.club/guide/theme-styling/less-css-setup#compile
https://getuikit.com/docs/rtl
https://getkirby.com/docs/guide/languages/supporting-RTL-languages