あすたま のすべての投稿

BuddyPressのメンバーのタイトルの名前(ユーザーID)に「さん」を追加したり、記事一覧の表示文を追加する方法(SANGOテーマ) WordPress カスタマイズメモ

自分が、人の記事に書いたコメントだけをまとめて表示するページを作る

WordPressのSNSプラグイン、BuddyPressを導入すると不特定多数のメンバーが参加することになる。

サンゴのテーマの「著者ページ」のタイトルでは、例えばユーザー名が「タツロウ」だとすると、「タツロウが書いた投稿 | ブログ名のような感じになる。

これに「さん」を追加して「タツロウさんが書いた投稿」にしたい。

ついでにカテゴリーページのタイトルなども変更しておく。
 

functions.php へ記述

//メンバーのタイトルに名前追加

function sango_document_title_parts( $title_part ) {
if (is_author()) {
$title_part['title'] .= 'さん'; //サンゴの「著者ページ」でタイトルに「さん」追加
} elseif (is_archive()) {
$title_part['title'] = '「' . $title_part['title'] . '」 記事一覧'; //カテゴリーやタグページでタイトルに「記事一覧」を追加
}
return $title_part;
}
add_filter( 'document_title_parts', 'sango_document_title_parts' );

BuddyPress のメンバー登録時の、ユーザー名で使わせない禁止文字列を設定する WordPress カスタマイズメモ

メンバー登録時の、ユーザー名で使わせない禁止文字列を設定する

WordPressのSNSプラグイン、BuddyPressを導入すると不特定多数のメンバーが参加することになる。

色々な人が参加するので、アカウントを乗っ取られないように’1111′, ‘1234’など 簡単なユーザーIDは使わせないことはできるのだが、簡単じゃないけど使わせたくない文字列、例えば’administrator’なども禁止文字列として登録したい場合。
 

functions.php へ記述

関連記事の「Widget/ウィジェットなどのリンクのURLの文字列を、別の文字列に置換する方法」では、パーマリンク内の文字列の”member”を”author”に置換する。

だから、ユーザーIDで”member”を使われないように設定しておく必要がある。

例)
ユーザーIDがabcdeの場合
xxx.com/member/abcde →置換後→ xxx.com/author/abcde で、問題なくSangoの著者ページが表示される。

ユーザーIDがabmembercdの場合
xxx.com/member/abmembercd →置換後→ xxx.com/author/abauthorcd となり、ユーザーIDまで置換されてエラーになる。

これを防ぐため。

//ユーザ名禁止文字memberを登録。memberをauthorに置換してるから。

function nendebcom_illegal_user_logins( $illegal_logins ){
$illegal_names = array( 'www', 'web', 'root', 'admin', 'main', 'invite', 'administrator', 'member' ); //元々の禁止文字列 www、admin等に加え、memberも禁止
$illegal_logins = array_merge( $illegal_logins, $illegal_names );
return $illegal_logins;
}
add_filter( 'illegal_user_logins', 'nendebcom_illegal_user_logins' );

関連記事:
WordPress のWidget/ウィジェットなどのリンクのURLの文字列を、functions.phpを使って別の文字列に置換する方法 BuddyPress(テーマはSango)カスタマイズメモ

メンバーなどWidget/ウィジェットのURLをリダイレクトさせる(テーマはSango)

メンバーなどWidget/ウィジェットのURLをリダイレクトさせる(テーマはSango) WordPress BuddyPressカスタマイズメモ

メンバーなどWidget/ウィジェットのURLを.htaccessリダイレクトする方法

・BuddyPressのメンバーページはダサすぎるので使わない。

 ↓↓↓
サンゴの著者ページに全てリダイレクトしておく

基本、ウィジェットからのリンクはfunctions.php を使ってURL自体を書き換えるのだが、直接メンバーページのURLを入力されることが無いとは限らない。
(このページ最下部の関連記事参照)

なので、念のため、.htaccess を使って、リダイレクトしておく。

URL書き換えをせずとも、.htaccess リダイレクトだけでも運用的には問題ないが、SEO的にはリダイレクトは少ない方がいい。

あと、マウスホバーで出てくるURLが、memberなのに、行き着く先がauthorになってしまうので、少しかっこ悪い。
 

.htaccess へ記述

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^member/(.*)$ author/$1 [R=301,L]
</IfModule>

関連記事:
WordPress のWidget/ウィジェットなどのリンクのURLの文字列を、functions.phpを使って別の文字列に置換する方法 BuddyPress(テーマはSango)カスタマイズメモ

BuddyPress のメンバー登録時の、ユーザー名で使わせない禁止文字列を設定する