はじめに
Simple Member Shipプラグイン使用時にログインされていない場合、以下のようなメッセージが表示されます。
今回はこの部分が、どのような処理になっているのかを見てみます。
仕組み
このメッセージを表示している場所は、本体Wordpress内のディレクトリにあります。
wp-content/plugins/simple-membership/classes/class.swpm-access-control.php
「このコンテンツを閲覧するにはログインが必要です」の部分は、上記ファイル内の[You need to login to view this content.]がmsgidとなり日本語メッセージに変換が行われているので、変更するには以下のファイルを変更します。
wp-content/languages/plugins/simple-membership-ja.po
次に「お願い~会員について」までは別処理の中で行われています。
wp-content/plugins/simple-membership/classes/class.swpm-access-control.php
上記ファイル中のget_login_link()が該当箇所で、呼び出し先のget_login_link()は以下のファイルです。
wp-content/plugins/simple-membership/classes/class.swpm-utils-misc.php
翻訳ファイルの変更
「このコンテンツを閲覧するにはログインが必要です」の部分を変更していきます。
前準備として、PCにPoeditをインストールしておきます。
手順としては、
1:Poeditで翻訳ファイルを開く
2:simple-membership-ja.poを変更する
3:保存する(simple-membership-ja.moが作成される)
4: simple-membership-ja.moをFTPでアップロード
という感じです。
重複ファイル?
修正後.moファイルをFTPで上書きしても、変更点が反映されない場合があるようです。
今回上書きしたファイル.moファイル[simple-membership-ja.mo]の場所は、
[wp-content/languages/plugins](1)です。
ファイル名で検索するとこのファイルは、
[wp-content/plugins/simple-membership/languages/](2)の中にもあります。
優先順位は(1)→(2)ですので、(2)を更新しても反映されません。
また(2)の場所はプラグインが更新されてしまうと初期化される可能性もあるので、注意した方が良さそうです。
それとすぐに反映されない場合は、キャッシュにも注意してください。
まとめ
この仕組を理解していれば、別のプラグインでも自分で翻訳を変更したり追加したりできると思います。
記事が長くなってしまいましたので「お願い~会員について」は、また別で行います。
コメント