お客様に納品する前に管理画面のカスタマイズを
・より便利に使い心地のよいシステムを提供したい
・システム更新を行ってしまいプラグインなどが動かなくなる
・変更によりDBが壊れてシステムが動かなくなる場合がある
・CMSが多機能すぎて困惑させてしまう場合がある
法人の中で複数人の担当者様がCMSを使われる場合もあり
『IT的なものが苦手だ』というお客様にもCMSのシステムを
気持ちよく使って頂けるように便利なカスタマイズをしていきます。
使用しているテーマのfunction.phpに関数を追加していく形で管理システムをカスタマイズします。
『更新』と『外観』メニューの非表示
『更新』と『外観』メニューもトラブル防止の為に非表示にします。
以下をfunction.php末尾に追記します。
add_filter( ‘pre_site_transient_update_core’, ‘__return_zero’ );
remove_action( ‘wp_version_check’, ‘wp_version_check’ );
remove_action( ‘admin_init’, ‘_maybe_update_core’ );
//管理メニューのアップデートの数字を消す
function hide_admin_items() {
?>
<style type=”text/css”>
.update-plugins,update-count,#contextual-help-link-wrap,li#wp-admin-bar-updates {
display:none !important;
}
</style>
<?php
}
add_action (‘admin_head’,’hide_admin_items’);
//管理メニューから「更新」と『外観』メニューを消す
function remove_admin_menu_items() {
remove_submenu_page(‘index.php’,’update-core.php’); //更新
remove_menu_page(‘themes.php’); //外観
}
add_action(‘admin_menu’,’remove_admin_menu_items’);
//参考
// remove_menu_page(‘index.php’); // ダッシュボード
// remove_menu_page(‘separator1’); // セパレータ1
// remove_menu_page(‘edit.php’); // 投稿
// remove_menu_page(‘upload.php’); // メディア
// remove_menu_page(‘link-manager.php’); // リンク
// remove_menu_page(‘edit.php?post_type=page’); // 固定ページ
// remove_menu_page(‘edit-comments.php’); // コメント
// remove_menu_page(‘separator2’); // セパレータ1
// remove_menu_page(‘themes.php’); // 外観
// remove_menu_page(‘plugins.php’); // プラグイン
// remove_menu_page(‘users.php’); // ユーザー
// remove_menu_page(‘tools.php’); // ツール
// remove_menu_page(‘options-general.php’); // 設定
// remove_menu_page(‘profile.php’); // プロフィール
[/bash]
管理画面にログアウトを
わかりやすくログアウト出来るように追加します。
[bash] // 管理バーにログアウトを追加function add_new_item_in_admin_bar() {
global $wp_admin_bar;
$wp_admin_bar->add_menu(array(
‘id’ => ‘new_item_in_admin_bar’,
‘title’ => __(‘ログアウト’),
‘href’ => wp_logout_url()
));
}
add_action(‘wp_before_admin_bar_render’, ‘add_new_item_in_admin_bar’);
[/bash]
ヘルプを消す
既に更新や外観メニューボタンはないので
混乱のもとになるので消します。
function disable_help_link() {
echo ‘<style type=”text/css”>
#contextual-help-link-wrap {display: none !important;}
</style>’;
}
add_action(‘admin_head’, ‘disable_help_link’);
[/bash]
ログイン画面にアクセス者のIPを表示
アクセスログ取ってます、という警告になります。
[bash] //ログイン画面でIPを表示させる。function custom_login_message() {
$ipAddress = $_SERVER[“REMOTE_ADDR”];
$message = “<p class=\”message\”><strong>Your IP: {$ipAddress}</strong></p>”;
return $message;
}
add_filter(‘login_message’, ‘custom_login_message’);
[/bash]
フッターに連絡先を
困った時にお問い合わせが簡単に出来るように
弊社のアドレスをフッターに追加しておきます。
function custom_admin_footer() {
echo ‘<a href=”http://sys-guard.com” target=”_blank”>製作:システムガーディアンお問い合わせ http://sys-guard.com</a>’;
}
add_filter(‘admin_footer_text’, ‘custom_admin_footer’);
[/bash]
または何もかかない場合
[bash]//管理画面下部のバージョン番号を削除
function remove_footer_version() {
remove_filter( ‘update_footer’, ‘core_update_footer’ );
}
add_action( ‘admin_menu’, ‘remove_footer_version’ );
//管理画面の「Wordpressのご利用ありがとうございます。」の文言を削除
add_filter(‘admin_footer_text’, ‘__return_empty_string’);
[/bash]
ログイン画面の背景を変更 BM Custom Loginプラグイン
プラグインを入れて
お客様のロゴや由縁ある背景画像に変更します。
教育機関なら学校の外観の写真などお客様に合わせて。
Wordpressのロゴが表示されるより、自分のものって感じで気持ちいいと思います。
エディタを拡張 TinyMCE Advancedプラグイン
これを入れるとエディタが大幅に拡張できますので
HTML/CSSがわからないお客様でも綺麗に記事や固定ページの編集が出来るはずです。
不正アクセス防止にLogin LockDownプラグイン
30分間に10回失敗で一時間そのホストからはログイン出来なくする、
など設定できます。
最低限の対策ですが対応しておきます。
Disable Commentsプラグイン
コメントスパム対策に、これ一本。
jetpackプラグイン
管理画面への簡易アクセス解析設置や記事の各SNS連携用に、これ一本。
お客様が使いやすいように
要件定義に含まれていない地味な作業であったりしますが
お客様が便利なCMSを使って頂くには大切な作業ですので
手を抜かないでおきたいところです。
場合によっては管理画面に新たに簡単な業務システムを構築したり
要望に合わせて色々なカスタマイズを行っております。