WordPressを納品する時に | Webクリエイターな備忘録

このサイトはフリーランスでWeb制作をするクリエイターの備忘録なメモサイトです。 Webサイトを作る際に気になった事やjavaScriptなどのライブラリの事などWebサイト制作に関する事、また気になるでき事、日常の事などを気ままに勝手に書き綴っています。

WordPressを納品する時に

20130627-1

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:プラグインの作成方法とスニペットをプラグイン化して管理する方法」を参考に
プラグイン化してみます。作業内容は、リンク先に詳しくご紹介頂いてますので、そちらをご参照ください。これで毎回の作業が短縮できるので助かります。

今回の記事で参考にさせて頂いたサイト一覧

コメントは受け付けていません。