WordPressを納品する時に
WordPressを納品する時に
またまたWordpressネタですが、今回はWordpressで制作したサイトをクライアントに納品する時に、是非設定したい項目です。
Wordpressは簡単にサイトのデザインなどを変更できて、たいへん便利なのですが、Wordpressの設定・HTML・PHP・CSSなどの操作が不慣れなクライアントが、触って欲しくない項目がありますよね。そんな項目は、事前に管理画面から消しておきたいですよね。
まっ、別に触ってもいいのですが、いろいろと触ったせいで表示しないとか、動かなくなったとかの作業が増えるのもいやですし…。
そこで、この辺を解消してくれる設定方法を検索してみました。
WordPressプラグインを使用する
さすがプラグインの多いWordpressです。こんな事までプラグインで出来るとは驚きです!!今回はプラグインを使用しないので、ご興味がある方は下記の「今回の記事で参考にさせて頂いたサイト一覧」の「クライアントに納品するwordpressの管理画面カスタマイズ vol.1」をご覧ください。詳しく説明して頂いてます。初心者の私には助かり記事です!!
function.phpに書く
「WordPress管理画面を顧客用にカスタマイズする方法」を参考にfunction.phpに書き込みます。
今回記述した内容なこちら
/* 管理画面のカスタマイズ ========================================================= */ // バージョン更新を非表示にする add_filter('pre_site_transient_update_core', '__return_zero'); // APIによるバージョンチェックの通信をさせない remove_action('wp_version_check', 'wp_version_check'); remove_action('admin_init', '_maybe_update_core'); // フッターのWordPressリンクを別の物に function custom_admin_footer() { echo 'お困りの際は<a href="http://koolweb37.com/" target="_blank">koolweb37.com</a>までお気軽にお問い合わせ下さい。'; } add_filter('admin_footer_text', 'custom_admin_footer'); // 管理バーの項目を非表示 function remove_admin_bar_menu( $wp_admin_bar ) { $wp_admin_bar->remove_menu( 'wp-logo' ); // WordPressシンボルマーク $wp_admin_bar->remove_menu('my-account'); // マイアカウント } add_action( 'admin_bar_menu', 'remove_admin_bar_menu', 70 ); // 管理バーのヘルプメニューを非表示にする function my_admin_head(){ echo '<style type="text/css">#contextual-help-link-wrap{display:none;}</style>'; } add_action('admin_head', 'my_admin_head'); // 管理バーにログアウトを追加 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'); // メニューを非表示にする function remove_menus () { if (!current_user_can('level_10')) { //level10(管理者)以下のユーザーの場合メニューをunsetする remove_menu_page('wpcf7'); //Contact Form 7 remove_menu_page('cpt_main_menu'); //Custom Post Types global $menu; unset($menu[2]); // ダッシュボード unset($menu[4]); // メニューの線1 unset($menu[5]); // 投稿 unset($menu[10]); // メディア unset($menu[15]); // リンク unset($menu[20]); // ページ unset($menu[25]); // コメント unset($menu[59]); // メニューの線2 unset($menu[60]); // テーマ unset($menu[65]); // プラグイン unset($menu[70]); // プロフィール unset($menu[75]); // ツール unset($menu[80]); // 設定 unset($menu[90]); // メニューの線3 } } add_action('admin_menu', 'remove_menus');
これで、クライアントへ納品時に管理画面の表示をコントロールできます。「メニューを非表示にする」は、クライアントにより表示・非表示を設定します。
しかし、Wordpressでサイト構築時に毎回この記述をfunction.phpに記述するのは、疲れちゃいますよね~。
そこで次の方法が、一度設定すれば後々幸せになれそうです!!
プラグイン化する
上で設定した項目を毎回使いまわせるように、「WordPress:プラグインの作成方法とスニペットをプラグイン化して管理する方法」を参考に
プラグイン化してみます。作業内容は、リンク先に詳しくご紹介頂いてますので、そちらをご参照ください。これで毎回の作業が短縮できるので助かります。