###前提・実現したいこと
wordpressの管理画面の投稿一覧で、
カスタムフィールドで作成した「ルビ」を項目として表示させ、
あいうえお順でソートが出来るようにしたいです。
###発生している問題・エラーメッセージ
・項目として表示
・ソートボタンを表示
までは実現できたのですが、
・あいうえお順でソート
が実現できません。(投稿順にソートがかかる)
###該当のソースコード
■フィールド概要
フィールドラベル = ルビ
フィールド名 = ruby
フィールドタイプ = テキストエリア
function.php
php
1// 投稿一覧画面にルビ表示 2function manage_posts_columns($columns) { 3$columns['ruby'] = "ルビ"; 4return $columns; 5} 6function add_column($column_name, $key) { 7if( $column_name == 'ruby' ) { 8$stitle = get_post_meta($key, 'ruby', true); 9} 10if ( isset($stitle) && $stitle ) { 11echo attribute_escape($stitle); 12} else { 13echo __('None'); 14} 15} 16add_filter( 'manage_posts_columns', 'manage_posts_columns' ); 17add_action( 'manage_posts_custom_column', 'add_column', 10, 2 ); 18 19// 投稿一覧画面のルビにソート機能を追加 20function column_orderby_custom( $vars ) { 21 if ( isset( $vars['orderby'] ) && 'ruby' == $vars['orderby'] ) { 22 $vars = array_merge( $vars, array( 23 'meta_key' => 'ruby', 24 'orderby' => 'meta_value' 25 )); 26 } 27 return $vars; 28} 29add_filter( 'request', 'column_orderby_custom' ); 30 31function posts_register_sortable( $sortable_column ) { 32 $sortable_column['ruby'] = 'ルビ'; 33 return $sortable_column; 34} 35add_filter( 'manage_edit-post_sortable_columns', 'posts_register_sortable' ); 36
###試したこと
下記を参考に、表示・ソート追加まで実装しました。
http://office7f.com/2015/10/20/wordpress-taxonomy-filter/
下記を参考に、
$post_id を $keyに変更し、あいうえお順ソートを試みましたが、実現できでおりません。
http://memocarilog.info/wordpress/theme-custom/3200
wordpress・phpの知識が浅いため、大前提が間違っている可能性もございます。
お手引きよろしくお願いいたします。
###補足情報(言語/FW/ツール等のバージョンなど)
html5
css3
php5.6
mySOL5.6
wordpress4.5.2
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/06/13 08:41
退会済みユーザー
2016/06/13 08:54
2016/06/13 09:13