1 — The Translator
jit-tr.php works with a
simple folder structure: one folder for your original website, and one
folder for each language it creates. Run one command, get one language:
php jit-tr.php "yourwebsite" "yourwebsite-fr" "fr"
Your original folder is never touched. It expects your CSS and
images where most sites already keep them — in their own folders at
the root, referenced with a leading slash
(/imgs/logo.png).
2 — The Image Trick
38 languages could mean 38 copies of every graphic — probably not
reasonable, at least not on day one. So the bundle includes
get_img.php. Put it in your
/imgs/ folder with all your
images. A visitor on
fr.yourweb.com gets the
French version of an image if it exists — and quietly gets the
English one if it doesn't. Make graphics at your own pace; drop each
one in as it's ready. No page edits, ever.
3 — The Hosting Magic
Also included: the
.htaccess that runs
jit-tr.com itself. Put it at your web root and every language just
works — a visitor typing
de.yourweb.com lands in your
German folder, shared images stay shared, and nonsense addresses get
turned away. Every line is commented: what it does, why it's there,
what breaks without it. The README walks you through the three ways
to host and the gotchas we hit so you don't have to.
4 — You Control What Gets Translated
The rule is simple: if a human reads it, it translates — page
text, image descriptions, even the messages inside your scripts.
When something must stay exactly as written — a brand name, a part
number, a slogan that stays English — mark it.
In your HTML — this is what you type:
<p>Our motto: <!-- NOtr -->Just In Time!<!-- NOtrEND --></p>
…and this is all the visitor's browser shows — the markers are
comments, invisible by nature:
Our motto: Just In Time!
On the French site, everything around it is French — and the
marked words are still Just In Time!
In your JavaScript — same idea, comment markers
around any string:
alert(/*NOtr*/"BRAND-NAME 3000"/*NOtrEND*/ + " " + msg);
The alert's other text translates; the product name never does.
Comments are invisible to browsers and free to leave in — mark once,
forget forever. And since you have the source, every choice we made
is yours to override.
5 — Do What We Did: View Source
Right-click this very page → View Source. Look inside
<head>. That's our
SEO — title, description, a canonical link, and one alternate line
per language so search engines know all 38 versions are the same
page. Easy to follow, free to copy. You'll also find our NOtr
markers scattered through this page's source — the feature,
demonstrating itself.
Want the same for your site? Ask Claude — send it your pages and
say "create the SEO head for these, and show me where the
articles go." One article per page. Worst case, wrap the whole
thing:
<body>
<article>
...your whole page...
</article>
</body>
Even that is a signal. Search engines read structure; give them
some.