نموذج موقع ويب متعدد اللغات

تتمثل الميزة الرئيسية لبنية ShipLang في أنك تحتاج فقط إلى كتابة صفحات الويب بلغة واحدة في الواجهة الخلفية، وسيقوم النظام بترجمتها تلقائيًا إلى لغات متعددة.

الاستخدام بسيط للغاية: ما عليك سوى إضافة السمة `data-i18n="اسم مفتاح الترجمة"` إلى العنصر المراد ترجمته. سيقوم النظام تلقائيًا بترجمة العناصر التي تحمل السمة `data-i18n`.

مبدأ ترجمة النصوص في جافا سكريبت: عندما ترسل جافا سكريبت النص "[Hello]" إلى الصفحة، فإنها تقرأ نتيجة ترجمة "[data-i18n="Hello"]".

يجب عليك تغيير لغة هذه الصفحة إلى الإنجليزية لعرضها. فيما يلي أمثلة على الاستخدام في سيناريوهات شائعة مختلفة، كل منها مزود برمز برمجي وتوضيح للتأثير الفعلي.

لا يمكن ترجمة مكونات مربع كود HTML 【pre】【code】 باستخدام وسم data-i18n. قد تؤدي إضافة i18n إلى هذه المكونات إلى حدوث أخطاء.

يتم عرض طرق الاستخدام متعددة اللغات في مكان واحد.

1.只要在标签加入[data-i18n]即代表该内容需要被翻译,示例:

<p data-i18n="welcome">欢迎使用</p>

مرحباً!

2. 当[data-i18n]的值相同,系统也会容错处理,不会翻译为相同文本

<p data-i18n="k">你好</p><p data-i18n="k">不错</p>

مرحبًا

جيد

3. 无[data-i18n]标记文本(代表不翻译)

<span>这段文本没有data-i18n标记,不会被翻译</span>
这段文本没有data-i18n标记,不会被翻译

4. 输入框Placeholder翻译兼容

<input data-i18n="email_placeholder" placeholder="请输入邮箱">

5. 按钮文本,点击按钮通过js修改文本翻译

<button data-i18n="btn_submit">修改文本</button>

主要原理是基于隐藏标签,假设隐藏标签的文本存在要翻译的文本就会读取隐藏标签的翻译之后的文本,实现翻译

6. 嵌套元素

<div><p data-i18n="nested">这是嵌套在div中的文本</p></div>

هذا نص مضمن داخل عنصر div.

7. JavaScript动态内容,代码中是中文,当用户切换英语也会显示英语

document.getElementById('btn').addEventListener('click',function(){alert('这是JavaScript弹窗内容');});

8. PHP动态列表

<?php foreach ($qx_list as $i) {echo '<li data-i18n="item">' . $i['text'] . '</li>';}?>
  • بيانات القائمة 1
  • WeChat: 5833487
  • بيانات القائمة 2

9. Meta标签SEO

<title data-i18n="title">标题</title><meta data-i18n="keywords" name="keywords" content="关键词"><meta data-i18n="description" name="description" content="描述">

يتم تعيين العلامات الوصفية في رأس الصفحة وتستخدم لعرض تصنيفات محركات البحث SEO.

هذا هو محتوى النافذة المنبثقة المكتوبة بلغة جافا سكريبت. يعتمد المبدأ الأساسي على الوسوم المخفية. فبافتراض وجود النص الذي يحتوي على الوسوم المخفية ضمن النص المراد ترجمته، يقوم النظام بقراءة النص المترجم مع الوسوم المخفية، وبذلك تتم الترجمة.