グローバルなサービスのために多言語対応を実装したことのある開発者なら、そのプロセスがいかに苦痛であるかをよく知っているはずです。
Webサイトを多言語化する際、最もよく取られる方法は、既存のページを言語ごとに複製(コピー)して新しく作成することです。
英語のページ(/en/about.html)を丸ごとコピーして韓国語のページ(/ko/about.html)を作り、テキストだけを差し替えるというやり方です。最初は直感的で簡単に思えます。
しかし、問題は修正する時に起こります。ボタンの色やデザインのレイアウトを少し変更したいだけでも、作成したすべての言語のファイルを一つ一つ開き、同じ修正作業を繰り返さなければなりません。
この問題を解決するために導入する多言語化ライブラリも、決して楽なものではありません。
言語ごとに数百行に及ぶ en.json や ko.json といった辞書ファイルを作成し、管理する必要があります。その結果、画面を構成するHTMLコードには、実際のテキストの代わりに text('header.greeting') のような謎のキー(Key)だけが残ってしまいます。
一言の文言を修正するだけでも、コードと辞書ファイルを何度も往復しなければなりません。サポートする言語が増えるほどメンテナンスは悪夢に変わり、特定の言語のテキストをうっかり追加し忘れるというミスも頻発します。
Essepageは、こうした非効率をなくすため、プラットフォーム自体に「多言語対応」機能を標準で組み込みました。
ページ内に直接多言語テキストを記述
Essepageが提案する多言語化のコアコンセプトはシンプルです。「テキストが必要なまさにその場所に、直接多言語を追加する」ということです。
言語ごとにページを作ったり、翻訳テキストを別ファイルに分離したりする必要はありません。設定でサポートする言語を宣言するだけで、ページを作成しながらテキストが入るその場所に多言語ブロック({{# ... #}})を指定し、言語ごとの文言を直感的に入力することができます。
{{#
Hello
[@ko] 안녕하세요
[@ja] こんにちは
#}}この独創的なインライン方式は、メンテナンスのパラダイムを変えます。レイアウトやデザインを変更する必要がある場合、修正するのはそのファイルだけです。そのファイルの多言語ブロックが自動的に完璧な多言語ページを生成してくれます。
Markdownと多言語対応の完璧な調和
この機能の真価は、Markdownと組み合わさった時にさらに輝きを放ちます。
Markdownタグの中で多言語ブロックを使用して言語ごとに段落を分けたり、ドキュメント全体を多言語ブロックで指定することもできます。Markdownで文章を書き進めながら、その場ですぐに他の言語を追加できるのです。
必要な時にいつでもグローバルへ
サービスを企画する段階で、最初から多言語対応を完璧に考慮しているケースは稀です。
たいていはサービスが大きくなってから慌てて付け足すことになりますが、すでにページが複雑になっているため、後から新しい多言語システムを構築したり、多くのページをそのまま複製したりして、大変な苦労を強いられます。
しかしEssepageでは、あらかじめ多言語システムを心配する必要はありません。サービスが成長し、そろそろ多言語化が必要だと感じたその瞬間に、希望する場所に多言語テキストを追加するだけでグローバルページが完成します。
面倒なページの複製や複雑なシステムの構築から解放され、あなたのアイデアを世界中のユーザーに手軽に届けてみてください。