bbPressの”You must be logged in to create new topics.”というメッセージの変更及び登録リンクを追加するには?

Genx Beats [ゲンクスビーツ]のアバター

まずは”You must be logged in to create new topics.”のメッセージを編集

bbPressの”You must be logged in to create new topics.”というメッセージを変更するには、以下の手順で行うことができる:

  1. 子テーマを作成します(まだ作成していない場合)。
  2. 子テーマのフォルダ内に「bbpress」フォルダを作成。
  3. 「bbpress」フォルダ内に「form-topic.php」ファイルを作成。 (元ファイルはwp-content/plugins/bbpress/templatesディレクトリの「Default」フォルダの中にあるから、子テーマの中のbbPressフォルダ内にコピーする。)
  4. 子テーマの「form-topic.php」ファイル内で、以下のような行を検索を使って探す: “You must be logged in to create new topics.”
  5. この行を編集して、希望のメッセージに変更する。

登録リンクをつけたい場合、次のようにする。

_e( 'You must be logged in to create new topics.', 'bbpress' );

この部分を以下のように変える。

printf( __( 'You must be logged in to create new topics. If you do not have an account, <a href="%s">register here.</a>', 'bbpress' ), esc_url( '登録URLをここに' ) );

セキュリティの観点から、この方法(esc_url()関数を使用する方法)が最も推奨される。この方法では、URLが適切にエスケープされ、潜在的な脆弱性を防ぐことができる。

次は”You must be logged in to reply to this topic.”のメッセージを編集

  1. 子テーマのフォルダ内の「bbpress」フォルダ内に「form-reply.php」ファイルを作成する。 (元ファイルはwp-content/plugins/bbpress/templatesディレクトリの「Default」フォルダの中にあるから、子テーマの中のbbPressフォルダ内にコピーする。)
  2. 子テーマの「form-reply.php」ファイル内で、以下のような行を検索を使って探す: “You must be logged in to reply to this topic.”

以下のメッセージを見つける。

_e( 'You must be logged in to reply to this topic.', 'bbpress' );

これを以下に置換する。

printf( __( 'You must be logged in to reply to this topic. If you do not have an account, <a href="%s">register here.</a>', 'bbpress' ), esc_url( '登録URLをここに' ) );

まとめ

この方法で、WordPressの親テーマやbbPressのアップデートに影響されずに、安全にカスタマイズを行うことができる。bbPressのDefaultフォルダを全部子テーマに持ってくるのではなく、必要なファイルのみをコピーし、変更を加えるのがベスト。


コメント

コメントを残す

Only people in my network can comment.