31669

[code]

    <?php
        echo sprintf( esc_attr__( 'From your account dashboard you can view your %1$srecent orders%2$s, manage your %3$sshipping and billing addresses%2$s and %4$sedit your password and account details%2$s.', 'woocommerce'));
    ?>
    
[/code]

上記ソースに、もう一つ言語を追加するとしたら、どういう風に記述したらいいでしょうか？  
マルチ言語サイトで、本来セカンダリ言語が表示される箇所が、現在デフォルト言語しか表示されていません。  
上記の記述を言語出し分け出来るように編集したいと思っています。

当方phpおよびプログラムの知識に乏しいコーダーです。

プラグインデータの上書きが良くない事は承知しておりますが、当方あまり時間がなく困っております。  
以前こちらで同様の質問をさせてもらい、それを元に開発元に問い合わせましたが未だまともに回答をもらえていません。

<https://translate.wordpress.org/projects/wp-
plugins/woocommerce/dev/fr/default>

開発者の話では、ここで足りない翻訳を追加し、プラグインを最新にすれば修正されるはずだとのことですが、開発元の対応が遅くいつまでもサイトに反映されないこともあり、当のプラグインを更新しても状況が変わりません。

一人の開発者から、私のphpファイルのソースが特別おかしいのではないか？なんかこの記述変だよ？などと言われましたが、当該のphpファイルは修正を加えたりしておりません。

現在Wordpress4.7、woocommerce 2.6.11を使用中です。

どうぞよろしくお願いいたします。


CC BY-SA 3.0
2017-01-06T06:57:20.773
31660
2017-01-06T12:49:53.203
2017-01-06T07:15:49.053
20039
20039
question
php wordpress
マルチサイトで使用する言語を出し分ける記述


WordPressの翻訳に携わるものとして説明と解決策を紹介させていただきます。

## WordPress の翻訳

WordPress のコアおよび公式ディレクトリに掲載されているプラグイン、テーマの翻訳は各言語のコミュニティによっておこなわれています。  
翻訳といってもなんでも通すわけにはいかないので各言語毎にガイドラインのようなものが用意されていることもあります。(例：[WordPress
の翻訳/翻訳ガイドライン - WordPress Codex
日本語版](https://wpdocs.osdn.jp/WordPress_%E3%81%AE%E7%BF%BB%E8%A8%B3/%E7%BF%BB%E8%A8%B3%E3%82%AC%E3%82%A4%E3%83%89%E3%83%A9%E3%82%A4%E3%83%B3))

すでにいくつかの翻訳をサジェストされているようなので半ばご存知かもしれませんが、翻訳を承認できるのは「その言語」「そのプロジェクト」のモデレーション権限を持つ人のみです。

たとえば、私はすべてのプラグインの日本語の翻訳をモデレーションする権限を持っています。

そして、その権限を他人に追加できるのは「その言語の」Global Translation Editorのみです。

例えば、フランス語の場合は <https://make.wordpress.org/polyglots/teams/?locale=fr_FR>
をご覧ください。

WooCommerceのフランス語の翻訳編集権限を個別に持っている方もおられるようですね。[プロジェクトの言語ページ](https://translate.wordpress.org/locale/fr/default/wp-
plugins/woocommerce)の右側にTranslation Editorとして表示されている方がそうです。

WooCommerceは現Automatticが所有しているプロダクトで、また広く使われているものですが、なんせ規模が大きいためその翻訳は大変です。

日本語においてもWoo関連を専門に手がけられている方がおられますが、他にも数名で苦労しつつ翻訳をしている節があります。

## そんなことはどうでもいいから翻訳を適用したいんじゃ

当該の部分が日本語ではただしく表示できているのにフランス語だと英語になってしまう、と仮定した場合、次の方法で一時的に独自の翻訳ファイルで置き換えれば公式で翻訳されていない部分に適用できます。  
また、公式の翻訳が更新されればそれで上書きされるので問題ないでしょう。(100%にならないと更新されないはずなので戻ってしまうことはないはずです。)

### A. GlotPress上で承認待ちのものをサイトに適用する

GlotPressの翻訳ページ最下部にあるセレクトボックスを以下の用に選択し、左のexportを押せばmoファイルがダウンロードされます。

[![Export](https://i.stack.imgur.com/IsrFs.png)](https://i.stack.imgur.com/IsrFs.png)

DLしたファイルを wp-content/languages/plugins/woocommerce-fr.mo に上書きすれば翻訳が反映されるはずです。

### B. po・moを直接編集する

wp-content/languages/plugins/woocommerce-fr.po
を[Poedit](https://poedit.net/)で開き、`POTファイルから更新……`で最新の pot (
<https://github.com/woocommerce/woocommerce/blob/2.6.11/i18n/languages/woocommerce.pot>
)から翻訳対象文字列の変更を読み込みましょう。  
そして、問題の翻訳を追加して保存するとwoocommerce-fr.moが同ディレクトリに生成されているはずなのでこれを wp-
content/languages/plugins/woocommerce-fr.mo に上書き配置すれば当該の翻訳が反映されるはずです。


CC BY-SA 3.0
2017-01-06T12:49:53.203
31669
2017-01-06T12:49:53.203
2376
31660
answer