今回は WordPress の管理画面を予め用意されているカラースキームを使って、各サイトの管理画面の色を変更し、どのサイトの管理をしているか視覚的にわかりやすくします。
管理画面の色をサイトで固定するメリット
マルチサイトの良いところとして、各サイトをシームレスに移動管理できるという点があります。ただし簡単に移動できるため思っていたサイトを表示しておらず、混乱する場合もあります。
左上には文字によりどこのサイトであるかはわかるようになってはいますが、これに色の変化を加えてわかりやすくしようというものです。
WordPress には左メニューの”ユーザー”から個人設定に入ると管理画面の配色を選ぶことができるようになってます。
これを使い各サイトごとに色を振り分けようということです。
functions.php を編集
ご使用のテーマの中に functions.php というものがあります。重要なファイルですので慎重に扱ってください。
wp-content > themes > ご使用中のテーマフォルダ > functions.php
失敗すると真っ白になるなど、重大なエラーが発生します。必ずバックアップしてください。
このファイルにコードを追加します。日本語になっていると各カラースキームも日本語になっていますが、コード内では英語で指定する必要があります。はじめから利用できるのは以下の通り。
default
light
modern
blue
coffee
ectoplasm
midnight
ocean
sunrise
子サイトが1つの場合
子サイトが一つの場合はシンプルに以下のコードを追加してください。
add_filter('get_user_option_admin_color', 'change_admin_color');
function change_admin_color($result) {
if(get_current_blog_id() === サイトID) {
return 'お好きなカラースキーム';
}
else {
return $result;
}
}
子サイトが2つ以上の場合
必要なだけ赤字の部分を繰り返してください。
add_filter('get_user_option_admin_color', 'change_admin_color');
function change_admin_color($result) {
if(get_current_blog_id() === サイトID) {
return 'お好きなカラースキーム';
}
elseif(get_current_blog_id() === サイトID) {
return 'お好きなカラースキーム';
}
else {
return $result;
}
}
サイトが5つある場合の例
add_filter('get_user_option_admin_color', 'change_admin_color');
function change_admin_color($result) {
if(get_current_blog_id() === 2) {
return 'coffee';
}
elseif(get_current_blog_id() === 3) {
return 'ectoplasm';
}
elseif(get_current_blog_id() === 4) {
return 'ocean';
}
elseif(get_current_blog_id() === 5) {
return 'blue';
}
else {
return $result;
}
}