0

Joomla で非常に単純なモジュールを作成しようとしています。私のコード全体は正しく、モジュールは適切に動作していますが、I18n 機能をサポートすることはできません。

より具体的には、私のモジュール ディレクトリは次のようになります。

mod_mymodname:
    languages:
        en-GB.mod_mymodname.ini
    mod_mymodname.php
    mod_mymodname.xml

そして、私の mod_mymodname.xml にそのコードがあります:

<?xml version="1.1" encoding="utf-8"?>
<extension type="module" version="2.5.0" client="site">
    <name>MyModName</name>
    ... Other Options ...
    <files>
        <filename module="mod_mymodname">mod_mymodname.php</filename>
        <filename>mod_mymodname.xml</filename>
    </files>
    <languages folder="languages">
        <language tag="en-GB">en-GB.mod_mod_mymodname.ini</language>
    </languages>
    <config>
        <fields name="params">
            <fieldset name="basic">
                <field name="modid" size="50" type="text" label="MODID" description="Description here" />
            </fieldset>
        </fields>
    </config>
</extensions>

私の en-GB.mod_mymodname.ini にはそのコンテンツが含まれています

MODID=Module ID

問題は、私の管理セクションで、フィールド ラベルの値が「モジュール ID」ではなく「MODID」になっていることです。

それは何か問題がありますか?私の最初の Joomla モジュールであり、すべてが正しいかどうかはわかりません。

: このモジュールは、フロントエンドで翻訳する必要はありません。管理セクションには I18n だ​​けが必要です。

4

4 に答える 4

2

言語ファイルはjoomla言語フォルダにある必要があります。adminからモジュールをインストールした場合は、言語フォルダーを確認し、ファイルがそこに存在するかどうかを確認してください。

管理者/言語/en-GB/にチェックイン

また、xmlで言語ファイルに言及する方法を変更する必要がある場合もあります。

詳細な説明については、このリンクをご覧ください

http://docs.joomla.org/Specification_of_language_files#Language_file_naming_conventions_and_precedence

于 2012-08-31T08:26:11.670 に答える
2

言語ファイルに MODID の正しいテキストが記載されていることを確認してください。

en-GB.mod_mymodname.ini ---> This file was used for declaring the text what we given in that module
  • この言語ファイルen-GB.mod_mymodname.iniに次の行を追加するだけです。

MODID="モジュール ID"

モジュールを保存して確認してください.これがうまくいくことを願っています....

于 2012-08-31T07:53:04.980 に答える
1

また、xml からのテキストを翻訳するための en-GB.mod_mymodname.sys.ini があることを確認してください。

私も別のことを考えました。言語ファイルが拡張言語フォルダーではなくメイン言語フォルダーにある場合にのみ、xml の特定の文字列が翻訳されるという既知の問題があるようです。そのため、コア フォルダーに拡張ファイルを配置するのは悪い習慣だと考えられていますが、通常は両方の場所にコピーを配置します。

于 2012-08-31T10:11:17.890 に答える
1

最初に module.xml 言語タグを追加します

<languages folder="languages">
    <language tag="fr-FR">fr-FR.mod_mod_mymodname.ini</language>
    <language tag="fr-FR">fr-FR.mod_mod_mymodname.sys.ini</language>
</languages>

次に、モジュール言語フォルダーに 2 つの新しいファイルを作成します fr-FR.mod_mod_mymodname.ini fr-FR.mod_mod_mymodname.sys.ini MOD_MYMODULE_USERNAME="this is my mod" のような .ini ファイルに翻訳するテキストを追加します

次に、この定数値を
JText::_ ('MOD_MYMODULE_USERNAME') のようにモジュールの default.php ファイルに追加します。

于 2012-10-05T04:09:17.410 に答える