2012-09-05 61 views
2

我想用枝條枝幹i18n延長。使用枝條延伸

至於我可以告訴我需要的文件是在這裏:

https://github.com/fabpot/Twig-extensions/blob/master/lib/Twig/Extensions/Extension/I18n.php

現在我不太肯定這個文件

我有嫩枝保存一個名爲文件夾中包含/ lib(/ includes/lib/Twig)。我在Twig下看到一個文件夾Extension。我在這裏保存嗎?

後,我保存它,做我需要做一個「require_once」文件或將Twig_Autoloader做的工作給我嗎?

我不使用Symfony2的

感謝 克雷格

+0

我只需要在正確的方向上凸起。 – cw24

+0

我擔心這不會得到答案。解決方案可能很容易,我不明白。如果有人能把我推向正確的方向,那還是不錯的。 – cw24

回答

4

這裏是爲我工作的完整的答案:

  1. 複製的嫩枝,Verzeichnis文件(摘錄i18n.zip在嫩枝)。 對於擴展的I18n這將是細枝/擴展/擴展/ I18n.php
  2. 最終通過添加的I18n requred其他文件。你會看到這些錯誤消息來了。我不得不添加「Twig/Extensions/Node/Trans.php」和「Twig/Extensions/TokenParser/Trans.php」。
  3. 在您的配置文件中添加以下內容:

    // Set language to German 
    putenv('LC_ALL=de_DE'); 
    setlocale(LC_ALL, 'de_DE'); 
    // Specify location of translation tables 
    bindtextdomain("project_de_DE", "./locale"); 
    // Choose domain 
    textdomain("projectl_de_DE"); 
    
  4. 註冊枝條擴展

    $twig->addExtension(new Twig_Extensions_Extension_I18n()); 
    
  5. 創建目錄的語言環境/ de_DE這個/ LC_MESSAGES

  6. 創建PO文件( easisest是有一個樣本文件以從啓動)
  7. 打開文件在一個普通的文本編itor(一定要使用UTF-8編碼),並開始翻譯
  8. 打開PO-Datei與PoEdit軟件(www.poedit.net/)
  9. 保存到區域設置/ de_DE這個/ LC_MESSAGES(一個MO-Datei將被創建)。
  10. 翻譯添加到樹枝,模板合適的地方與

    {% trans 'Text in the original language' %}` 
    
0

您需要註冊這個擴展與嫩枝:

$twig->addExtension(new Twig_Extensions_Extension_I18n()); 

如果您的安裝配置正確,自動加載器應該做的工作包括該文件。如果沒有,您可以手動包含該文件或使用composer進行安裝。

+0

謝謝你回答我的問題的一部分。另一部分是保存擴展名的地方。經過一些試驗和錯誤之後,我發現保存擴展名的地方在擴展名中。在這種情況下,Twig_Extension_Extension_I18n進入主Twig安裝Extension/Extension/I18n下的目錄。如果需要其他*東西*,你會發現你得到的錯誤。 – cw24