フォノクラフト株式会社:作業メモや備忘録など

作業メモや備忘録など…

[wp] WordPressを入れたら最初に行うこと。(再び)

without comments

wordpressを入れたら最初に行うこと。

プラグイン関連

管理設定もの

  1. Magic Fields / Magic Fields2
    カスタムフォールドを自由自在に
    (新バージョンの「Magic Fields2」にするか否かはWPのバージョンとの兼ね合いで判断)
  2. WP Custom Search
    カスタムフィールド単位で絞り込み検索を実現させる
    (Magic Fieldsと併用すると最強)
  3. User Role Editor
    ユーザ毎に操作権限を管理
    (更新担当者にはadminでログインさせないのが鉄則)
  4. WP No Category Base
    カテゴリーアーカイブのパーマリンクに/category/と入ってしまうのを強制排除
  5. Duplicate Post
    投稿をコピーする
    (ダミーデータを作成する際に便利)
  6. Peter’s Login Redirect
    ユーザや権限によって管理画面のログイン直後に表示させる画面を変更する
    (ダッシュボードは全く使わないので)
  7. Post Category Height Edit
    投稿画面のカテゴリ枠を可変させることが出来るようになる
  8. disable-wordpress-core-update
    「WordPress x.x が利用可能です ! 更新してください。」のメッセージを非表示にする
    (プラグイン等の不具合を検証してからアップデートしたい為、またクライアントがアップデートしてしまうのを防ぐ為)
  9. Revision Control
    リビジョンの保存数を指定出来るプラグイン、保存しない事も可能
  10. Better Delete Revision
    初期段階で上記「Revision Control」の導入〜設定しておらず、既に運用中でデータが肥大化して来た際には一度リビジョンを削除してしまうのも有効。「Better Delete Revision」で一度リヴィジョンを削除してしまえば後は「Revision Control」に任せる事が出来るのでこのプラグイン自体は停止(または削除)してしまってもOKです。

テンプレートタグの拡張もの

  1. wp-pagenavi
    Googleのようなページ送りにする
    (若干古いがこれが一番使いやすい気がしている)
  2. Archives for a category
    カテゴリー別に月別アーカイブを表示できるプラグインで、
    例えば <?php wp_get_archives(‘format=option&cat=1′); ?> の様にカテゴリが指定出来るようになる。
  3. Category Order and Taxonomy Terms Order
    カテゴリの順序入れ替えが必要であれば。

 

カテゴリの並び順を固定する

管理画面の投稿編集で選択するカテゴリの並び順を調整する(チャックを入れたものが勝手に上にソートされるのを防ぐ)

/wp-admin/includes/meta-boxes.php の343行目付近

<?php wp_terms_checklist($post->ID, array( 'taxonomy' => $taxonomy, 'popular_cats' => $popular_ids ) ) ?>
<?php wp_terms_checklist($post->ID, array( 'taxonomy' => $taxonomy, 'popular_cats' => $popular_ids, 'checked_ontop' => false ) ) ?>

 

管理画面の不要なメニューなどを削除したり

/wp-content/themes/○○○○/functions.php の末尾に下記を追記し、各所調整する。

//管理画面:ログイン画面のロゴ
function custom_login_logo() {
 echo '<style type="text/css">h1 a {background: url('.get_bloginfo('template_directory').'/images/logo-login.png) 50% 50% no-repeat !important; }</style>';
 }
add_action('login_head', 'custom_login_logo');

// フッターWordPressリンクを非表示に
function custom_admin_footer() {
 //echo '<a href="mailto:xxx@zzz">お問い合わせ</a>';
 echo '';
 }
add_filter('admin_footer_text', 'custom_admin_footer');

// 管理バーの項目を非表示
    function remove_bar_menus( $wp_admin_bar ) {
    $wp_admin_bar->remove_menu('wp-logo'); // W ロゴ
    $wp_admin_bar->remove_menu('view'); // 新規投稿
    //$wp_admin_bar->remove_menu('site-name'); // サイト名
    $wp_admin_bar->remove_menu('view-site'); // サイト名 -> サイトを表示
    $wp_admin_bar->remove_menu('comments'); // コメント
    $wp_admin_bar->remove_menu('new-content'); // 新規
    $wp_admin_bar->remove_menu('new-post'); // 新規 -> 投稿
    $wp_admin_bar->remove_menu('new-media'); // 新規 -> メディア
    $wp_admin_bar->remove_menu('new-link'); // 新規 -> リンク
    $wp_admin_bar->remove_menu('new-page'); // 新規 -> 固定ページ
    $wp_admin_bar->remove_menu('new-user'); // 新規 -> ユーザー
    $wp_admin_bar->remove_menu('updates'); // 更新
    $wp_admin_bar->remove_menu('my-account'); // マイアカウント
    $wp_admin_bar->remove_menu('user-info'); // マイアカウント -> プロフィール
    $wp_admin_bar->remove_menu('edit-profile'); // マイアカウント -> プロフィール編集
    //$wp_admin_bar->remove_menu('logout'); // マイアカウント -> ログアウト
    }
    add_action('admin_bar_menu', 'remove_bar_menus', 201);

// 管理バーのヘルプメニューを非表示にする
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');

//左メニューで不要な項目の削除(表示したいものだけコメントアウト)
add_action( 'admin_menu', 'my_remove_menu_pages' );
function my_remove_menu_pages() {
	remove_menu_page('index.php'); //ダッシュボード
	remove_menu_page('edit.php'); //投稿
		remove_submenu_page( 'edit.php', 'edit.php' );	//サブメニュー:投稿一覧
		remove_submenu_page( 'edit.php', 'post-new.php' );	//サブメニュー:新規追加
		//remove_submenu_page( 'edit.php', 'edit-tags.php?taxonomy=category' );	//サブメニュー:カテゴリー
		remove_submenu_page( 'edit.php', 'edit-tags.php?taxonomy=post_tag' );	//サブメニュー:投稿タグ

	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('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('admin.php?page=MagicFieldsMenu'); //Magic Fields(だめだ・・・できない)

		// Add top menu
		//add_menu_page(__('Magic Fields > Manage',$mf_domain), __('Magic Fields',$mf_domain), 'edit_pages', 'MagicFieldsMenu', $panelsAndModulesFunctions->panelsMenuFunction, plugins_url(MF_PLUGIN_DIR.'/images/wand-hat.png'));
		// Add Magic Fields submenus
		//add_submenu_page('MagicFieldsMenu', __('Write Panels',$mf_domain), __('Write Panels',$mf_domain), 'edit_pages','MagicFieldsMenu', $panelsAndModulesFunctions->panelsMenuFunction);		

}

//左メニューに「カテゴリ操作」を追加
//参考:http://wald-grun.biz/blog/wp/4564/
function test_menu_page() {
    $siteurl = 'options-general.php?page=custom-field-template.php';
}
function category_menu() {
    add_menu_page( 'カテゴリ操作', 'カテゴリ操作', 'read', 'edit-tags.php?taxonomy=category');
    //add_menu_page( '固定ページ', '固定ページ', 'read', 'edit.php?post_type=page');
}
add_action( 'admin_menu', 'category_menu' );