クライアント用に構築しているWordpressサイトのPostArrayの問題について非常に混乱しています。誰かがこれを見たことがあるといいのですが!
カスタム投稿タイプを登録しました:
register_post_type( 'products', array(
'labels' => array(
'name' => __( 'Products' ),
'singular_name' => __( 'Product' ),
),
'public' => true,
'menu_position' => 20,
'supports' => array( 'title', 'editor', 'excerpt', 'thumbnail', 'comments', ),
'taxonomies' => array('category'),
'capability_type' => 'post',
'rewrite' => array( 'slug' => 'products','with_front' => TRUE),
'register_meta_box_cb' => 'product_page_meta_box'
));
その中で、次のメタボックスのコールバックを登録しました。
function product_page_meta_box() {
add_meta_box('product_meta_box_content', 'Product Specifications', 'product_meta_box_content', 'products');
}
function product_meta_box_content( $post ) {
wp_nonce_field( plugin_basename( __FILE__ ), 'product_noonce' );
echo '<div class="inside>';
var_dump($post);
echo '<p>Please detail the product specifics here:</p>';
echo '</div>';
}
私が持っている欲求不満は、管理ページの上記のvar_dumpの結果が次のとおりであるということです。
string(3) "258" ["post_author"]=> string(1) "1" ["post_date"]=> string(19) "2012-08-27 19:33:30" ["post_date_gmt"]=> string(19) "2012-08-27 19:33:30" ["post_content"]=> string(0) "" ["post_title"]=> string(10) "The Wensum" ["post_excerpt"]=> string(20) "Testing the excerpt!" ["post_status"]=> string(7) "publish" ["comment_status"]=> string(6) "closed" ["ping_status"]=> string(6) "closed" ["post_password"]=> string(0) "" ["post_name"]=> string(22) "large-6-perch-dovecote" ["to_ping"]=> string(0) "" ["pinged"]=> string(0) "" ["post_modified"]=> string(19) "2012-10-04 16:50:19" ["post_modified_gmt"]=> string(19) "2012-10-04 16:50:19" ["post_content_filtered"]=> string(0) "" ["post_parent"]=> string(1) "0" ["guid"]=> string(53) "http://dovecotes.local//?post_type=products&p=258" ["menu_order"]=> string(1) "0" ["post_type"]=> string(8) "products" ["post_mime_type"]=> string(0) "" ["comment_count"]=> string(1) "0" ["ancestors"]=> array(0) { } ["filter"]=> string(4) "edit" }
管理領域ではタイプがなく、完全に無効です。関連するページでは、post配列は問題ありませんが、IDにはキーがあり、有効なオブジェクトです。
object(stdClass)#145 (25) { ["ID"]=> int(258) ["post_author"]=> string(1) "1" ["post_date"]=> string(19) "2012-08-27 19:33:30" ["post_date_gmt"]=> string(19) "2012-08-27 19:33:30" ["post_content"]=> string(0) "" ["post_title"]=> string(10) "The Wensum" ["post_excerpt"]=> string(20) "Testing the excerpt!" ["post_status"]=> string(7) "publish" ["comment_status"]=> string(6) "closed" ["ping_status"]=> string(6) "closed" ["post_password"]=> string(0) "" ["post_name"]=> string(22) "large-6-perch-dovecote" ["to_ping"]=> string(0) "" ["pinged"]=> string(0) "" ["post_modified"]=> string(19) "2012-10-04 16:50:19" ["post_modified_gmt"]=> string(19) "2012-10-04 16:50:19" ["post_content_filtered"]=> string(0) "" ["post_parent"]=> int(0) ["guid"]=> string(54) "http://dovecotes.local//?post_type=products&p=258" ["menu_order"]=> int(0) ["post_type"]=> string(8) "products" ["post_mime_type"]=> string(0) "" ["comment_count"]=> string(1) "0" ["ancestors"]=> array(0) { } ["filter"]=> string(3) "raw" }