ポストフォーマットサポートを宣言したカスタムポストタイプをすでに作成しました。
register_post_type('portfolio', array(
'labels' => array(
'name' => __('Portfolio', "xxx"),
'singular_name' => __('Portfolio', "xxx")
),
'public' => true,
'menu_position' => 5,
'rewrite' => array('slug' => 'portfolio'),
'supports' => array( 'title', 'editor', 'thumbnail', 'excerpt', 'comments', 'revisions', 'custom-fields', 'post-formats' )
)
);
しかし、Wordpressのエクスポートツールに行き、このカスタム投稿タイプで投稿をエクスポートしようとすると、エクスポートされたxmlファイルをチェックして、投稿のpost-format値がエクスポートされないことがわかりました。
これに対する解決策はありますか?
Export.phpのデバッグに時間をかけた後、私たちはカスタム投稿タイプのためにpost_format分類法を登録しなければならないことがわかりました。
register_taxonomy( 'post_format', 'portfolio', array(
'public' => true,
'hierarchical' => false,
'labels' => array(
'name' => _x( 'Format', 'post format' ),
'singular_name' => _x( 'Format', 'post format' ),
),
'query_var' => true,
'rewrite' => $rewrite['post_format'],
'show_ui' => false,
'_builtin' => true,
'show_in_nav_menus' => current_theme_supports( 'post-formats' ),
) );
それは簡単!
私もこれに苦労していました。通常の投稿タイプでは、remove投稿形式の分類法が使用されることが判明するまで、あなたの解決策はうまくいきました。
コアファイルを調べた後、私たちが必要としていることを正確に実行するこの関数を見つけました。
register_taxonomy_for_object_type( 'post_format', 'portfolio' );
Codex を参照してください。