wp管理画面(投稿一覧)カスタマイズ

Filed under: wordpress — kdcs @ 15年6月22日 月曜日

今回のカスタマイズは「投稿一覧」についてです
項目にカスタムフィールドを割り当てたり、必要無い項目を削除したり
並び順を変更したりします。(function.phpに記述)

その他、Admin CSSを使って項目の幅を変更します

◆投稿一覧に「カスタムフィールド」や「投稿ID」を追加する

//カラムを追加する
function my_columns($columns) {
    $columns['customfield'] = "投稿一覧に表示される項目名";
    $columns['postid'] = 'ID';
    return $columns;
}
//カラムの表示内容を定義
//追加したカラムに「01metaname」というカスタムフィールドの内容を表示させる
function add_column($column_name, $post_id) {
    if( $column_name == 'customfield' ) {
        $stitle = get_post_meta($post_id, '01metaname', true);
    }
//投稿IDはこちら
    if( $column_name == 'postid' ) {
		$stitle = $post_id;
	}
//↓データーが無い場合は「なし」を表示する
    if ( isset($stitle) && $stitle ) {
        echo attribute_escape($stitle);
    } else {
        echo __('None');
    }
}
add_filter( 'manage_posts_columns', 'my_columns' );
add_action( 'manage_posts_custom_column', 'add_column', 10, 2 );

例を掲載しておきます
※「販売価格」「備考」「投稿ID」を一覧に表示させる

//投稿一覧にカスタムフィールドの販売価格・備考と投稿IDを追加 -----------------------------
function manage_posts_columns($columns) {
    $columns['price'] = "販売価格";
	$columns['memo'] = "備考";
    $columns['postid'] = 'ID';
	return $columns;
}
function add_column($column_name, $post_id) {
	if( $column_name == 'price' ) {
		$stitle = get_post_meta($post_id, '04販売価格', true);
	}
	if( $column_name == 'memo' ) {
		$stitle = get_post_meta($post_id, '備考', true);
	}
    if( $column_name == 'postid' ) {
		$stitle = $post_id;
	}

	if ( isset($stitle) && $stitle ) {
		echo attribute_escape($stitle);
	} else {
		echo __('None');
	}
}
add_filter( 'manage_posts_columns', 'manage_posts_columns' );
add_action( 'manage_posts_custom_column', 'add_column', 10, 2 );

◆投稿一覧から項目を削除
デフォルト

["cb"]=>
string(25) "<input type="checkbox" />"
["title"]=>
string(12) "タイトル"
["author"]=>
string(9) "作成者"
["categories"]=>
string(15) "カテゴリー"
["tags"]=>
string(6) "タグ"
["comments"]=>
string(86) "<span class="vers"><div title="コメント" class="comment-grey-bubble"></div></span>"
["date"]=>
string(6) "日時"

削除方法

function delete_column($columns) {
     
    unset($columns['title'],$columns['author'],$columns['categories']);
    //削除する項目をunset
 
    return $columns;
}
add_filter( 'manage_posts_columns', 'delete_column');

表示順を変更する

function sort_column($columns){
    $columns = array(
        'date' => '日時',
        'author' => '作成者',
        'cb' => '<input type="checkbox" />',
        'title' => 'タイトル',
    );
    return $columns;
}
add_filter( 'manage_posts_columns', 'sort_column');

表示項目の幅を変更
Admin CSSに記述する例 「カテゴリー」はデフォルトでwidth:15%;が指定されています
それを25%にします

.fixed .column-categories {
width: 25%;
}

サイト内検索

カテゴリー

最近の投稿

« |wp管理画面(投稿一覧)カスタマイズ| »
↑上に戻る