サポート » プラグイン » bbpressのカスタマイズに関する質問です。

  • 解決済 infokk

    (@infokk)


    投稿ページに[bbp-single-topic id=xxxx]を入力して、
    ユーザー登録した方が書き込める掲示板を作成しております。

    ユーザー登録していない方には、掲示板の下に
    「このトピックに返事するにはログインが必要です。」と言う文章が出ます。

    この文章をログインボタンに変更したいと考えているのですが。

    「このトピックに返事するにはログインが必要です。」と言う文章が
    格納されている場所および何処を変更すればよいのか分かりません。

    どなたかご教授していただれば幸いです。

    よろしくお願いします。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • こんにちは、

    bbpress/templates/default/bbpress/form-replay.phpの174行目じゃないかな?

    [form-forum.php: 行169、列91] 			<p><?php is_user_logged_in() ? _e( 'You cannot create new forums.', 'bbpress' ) : _e( 'You must be logged in to create new forums.', 'bbpress' ); ?></p>
    [form-reply.php: 行174、列93] 			<p><?php is_user_logged_in() ? _e( 'You cannot reply to this topic.', 'bbpress' ) : _e( 'You must be logged in to reply to this topic.', 'bbpress' ); ?></p>
    [form-topic.php: 行234、列91] 			<p><?php is_user_logged_in() ? _e( 'You cannot create new topics.', 'bbpress' ) : _e( 'You must be logged in to create new topics.', 'bbpress' ); ?></p>

    トピック投稿者 infokk

    (@infokk)

    ご丁寧にお教え頂き誠にありがとうございます。
    もう一つ、質問させて下さい。

    bbpress/templates/default/bbpress/form-replay.phpに該当する箇所を発見することができました。

    ここで、さらに質問ですが、どの部分を変更すれば、日本語の「このトピックに返事するにはログインが必要です。」と言う表示が変わるのでしょうか。

    てっきり、日本語で「このトピックに返事するにはログインが必要です。」と書いてある場所があるのかと思っていました。

    ご指摘して頂いた箇所は英語で書かれているので、どのように変更していいのか、また、どうしてこれまでコードで英語で書かれている部分が英語表記になるのかわかりません。

    本当に初歩的に質問をして大変申し訳ございません。

    ご助言頂けないでしょうか。よろしくお願いします。

    テーマによって、もしかするとうまくいかない事もあるかもしれないですが、

    テーマに、bbpressという名前のホルダを作成し、その中に、form-replay.phpをコピーしたものを作成します。

    そうしないと、bbpressのアップデートのたびに、変更が削除されるので、、、

    テーマは、自作ならそのままでいいと思いますが、インストールしたテーマなら チャイルドテーマの作成が必要になると思います。

    このように変更すると、bbpressは、テーマのform-replay.phpを使って表示を行うようになりますので、テンプレートをカスタマイズします。

    <p><?php is_user_logged_in() ? _e( 'You cannot reply to this topic.', 'bbpress' ) : _e( 'You must be logged in to reply to this topic.', 'bbpress' ); ?></p>

    <p><?php
    if( is_user_logged_in() ) {
        echo 'このトピックに返信は出来ません';
    }else{
       echo 'このトピックに返事するにはログインが必要です。';
    }
    ?></p>

    のように、PHPを使って書き換えるような感じになると思います。(未テスト)

    どうしてこれまでコードで英語で書かれている部分が英語表記になるのかわかりません。

    WordPressのテーマやプラグインは、英語で記述されていて、それを翻訳して表示します。

    poeditというソフトで、翻訳を変更できます。

    https://poedit.net/

    どちらの方法でも、変更できると思いますが、詳しくは書けないので調べてみてください。

    その他、

    https://codex.wordpress.org/Plugin_API/Filter_Reference/gettext

    フィルタを使って翻訳を変更する事もできるんじゃないかと思います。(未検証)

    面倒くさい方法を、適当に説明してしまい、反省したので、まず最初にこれを試してみてください。

    追記 メチャンコ簡単にメッセージを変更する方法

    style.cssに

    .bbp-no-reply .bbp-template-notice{
        visibility:hidden;
    }
    
    .bbp-no-reply .bbp-template-notice:after{
    	content:'ログインが必要です';
    	visibility:visible;
    }

    でも いけるかもしれません。

    トピック投稿者 infokk

    (@infokk)

    大変、ご丁寧な応対ありがとうございました。

    お教えして頂いた方法で解決できました。
    英語で書かれていた表記が日本語化についても納得しました。

    また、追記でお教えして頂いたメチャンコ簡単にメッセージを変更する方法も試しましたが、こちらも上手く行きました。

    本当にありがとうございました。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「bbpressのカスタマイズに関する質問です。」には新たに返信することはできません。