2014-05-11 78 views
1

我有一個用Python Bottle創建的網站。我有幾個來自用戶的要求使其成爲多語言的請求,但由於它並不是一開始就在我腦海中創建的,所以我很難找到最簡單的方法。多語言靜態網站與JQuery

我結束了這種方式:

我創建的XML文件:languages.xml

<?xml version="1.0" encoding="UTF-8"?> 
<translations> 
    <translation id="myidtest"> 
     <english>english string</english> 
     <italian>italian string</italian> 
     <french>french string</french> 
    </translation> 
</translations> 

然後我用這個jQuery腳本來更新內容:

<script type="text/javascript" language="javascript"> 

$(function() { 
    var language = {{language}}; 
    $.ajax({ 
     url: '/static/languages/languages.xml', 
     success: function(xml) { 
      $(xml).find('translation').each(function(){ 
       var id = $(this).attr('id'); 
       var text = $(this).find(language).text(); 
       $("." + id).html(text); 
      }); 
     } 
    }); 
}); 
</script> 

用戶設置,我添加了選項以選擇首選語言並將其存儲在Cookie中。然後,每次加載頁面時,我都會讀取cookie並在JQuery代碼中的language參數中傳遞語言。如果沒有任何cookie,我會通過英文。

然後在HTML代碼,我改變了每一個字符串中<span class="myidtest">english string</span>

我的問題是:

我應該從跨度標籤移除英語串以及和留空span標籤,以減少文件大小,加載時間,並節省我的時間,每次我想更新一個字符串更新他們兩次(在languages.xml和HTML)?或者我應該把它們留在爬行者還是其他原因?

回答

0

您應該將它們留在那裏用於搜索引擎抓取工具。您的有機職位將受益於那裏的內容。

另外,通過刪除默認文本,您不會贏得太多。事實上,你應該在後臺進行翻譯,而不是把整個壓力都放在客戶端。

希望這會有所幫助。