Behind the build — Day 026
day26は、架空のタイ料理店「PAK PAK」。作ったのは、スプレッドシートに日本語で書くだけで、英語・中国語・タイ語に自動翻訳されるメニューサイトです。お客さんは言語ボタンを押すだけ。店主は外国語を1文字も書きません。日本語で1品足せば、4か国語で1品増えます。

01

メニューの台帳は、スプレッドシート1枚です。列は7つ——カテゴリ(プルダウンで4択)・品名・説明・価格・タグ・絵文字・表示。どこにも外国語の列がありません。翻訳はページ側の裏方が自動でやるので、店主の仕事は日本語のメニューを普段どおり書くことだけ。売り切れは「表示」をFALSEにすれば消えます。
02

シートに「トートマンクン/海老のすり身揚げ。スイートチリソースで。/950円」と1行書き足すと、ページには日本語・英語・中国語・タイ語の4つの顔で同じ1品が現れます。メニュー改定のたびに翻訳を頼む、という仕事が消えます。値段の変更も、品切れも、シートを直すだけ。
言語の切り替えに仕掛けはない言語ボタンはJavaScriptを使っていません。HTMLとCSSだけの仕組みなので、どんなスマホでも、確実に切り替わります。ページを開いた時点で4言語ぶんの文字がすべて読み込まれていて、ボタンは「どれを見せるか」を切り替えているだけ——だから速くて、壊れません。
03

翻訳はGoogle翻訳で自動的に行われ、結果は「翻訳キャッシュ」というシートに貯まります。ここが今回の肝で、気になる訳は、このシートのセルを直すだけで、その訳に確定します。実際、「ガパオライス」の自動翻訳は最初、タイ語で別の料理になっていました。セルを正しい名前(ข้าวกะเพรา)に書き換えたら、それ以降はずっとその訳が使われます。
正直な注意点機械翻訳なので、料理名は特に間違えます。だからこそ「直した訳が必ず勝つ」台帳をはさみました。AI翻訳(Gemini)を繋ぐ口も用意してあるので、翻訳の質はこれから上げていけます。
04

トップの写真は、あえて料理ではなくお店の壁にしました。タイ語の貼り紙メニューがびっしり並ぶ店内——という設定です。壁いっぱいの貼り紙メニューの下に、整然と切り替わるデジタルのメニューが続く。この対比が今回の構図です。基調の緑はこの写真のタイルから実測した色。言語ボタンの帯には、タイルの目地をCSSで薄く引いています。差し色はオレンジを点で。
05


メニューは9品から始めて、動画の撮影中に1品増えて10品になりました。増やしたのはスプレッドシートの1行だけ。サイトを「作り直す」ことなく、店の日常の速度でメニューが動きます。
訪日のお客さんが増えても、外国語のメニューを作って維持するのは大仕事です。翻訳を頼み、印刷し、メニューが変わればまた最初から。今回のページは、その仕事をスプレッドシート1枚に畳みました。書くのは日本語だけ。翻訳は自動で、気になる訳はセルを直せば確定する。日本語で1品足せば、4か国語で1品増える。ウェブの裏方に翻訳係を1人雇ったような形です。100連発は、まだ続きます。