Поддержка нескольких языков для Classic-Asp - PullRequest
0 голосов
/ 23 декабря 2009

Я хочу перевести мою веб-страницу на 7 разных языков, и мне интересно, как лучше всего справиться с этим?

Я знаю, что эта тема открывалась несколько раз, но я не получил разумного ответа. На самом деле все темы о php и gettext, но я использую классический asp (vbscript).

Метод, который я сейчас использую, таков:

У меня есть en.asp и tr.asp, который содержит

lang_home="Home Page" и lang_home="Ana Sayfa"

и на своих страницах я отображаю их как <%=lang_home%>. Я не хочу использовать много браслетов, потому что считаю, что они замедляют мой сайт.

Эван, я думал, что <%=GetTranslatedText(lang_home)%>

Что мне нужно знать, так это то, что является лучшим подходом для многоязычных веб-сайтов для ASP, и есть ли какое-либо решение, например, gettext для ASP?

Заранее спасибо.

1 Ответ

1 голос
/ 23 декабря 2009

Существует только два способа отправки динамического текста в браузер в ASP:

  1. Написать всю HTML-страницу с помощью Response.Write звонки
  2. Встроенные вызовы Response.Write в статическом HTML-коде.

Я думаю, что вы на правильном пути, уравновешивая необходимость иметь легко редактируемый HTML-код с быстрым поиском и заменой специфичных для языка строк. По крайней мере, быстрее, чем, скажем, куча операторов SELECT CASE или поиск в коллекции.

(Если производительность действительно проблема, почему бы не перейти к ASP.NET?)

Еще один вариант - предварительно скомпилировать ASP-страницы ... сохранить шаблон, скажем, «default.asp.template», который содержит переменные, отдельные языковые файлы (как у вас сейчас) и некоторый код для генерации "default-en.asp", "default-en.asp" и т. д. каждый раз, когда вы меняете шаблон. Затем установите «default.asp» для простого и тихого переноса выполнения на правильную страницу в зависимости от языка пользователя.

Отличным (но коммерческим) приложением, которое я использовал для предварительной компиляции ASP-страниц, является WebGecko APGen (http://www.webgecko.com/).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...