我想知道如何将现有页面列表添加到自定义分类中作为术语。
我的目标是能够为上传的附件添加对页面的引用。
我能够创建分类法并且它显示出来,它只是没有填充。
另外 - 如果有更好的方法可以解决这个问题,我也很乐意。
例如: 我有“信息”,“联系”页面
我希望这些项目显示为条款。
答案 0 :(得分:0)
我通过获取页面并使用wp_insert_term
插入页面来解决这个问题。注意:我只需要一个特定的页面,所以这个比上面更具体。
// create a new taxonomy
function add_product_pages_to_attachments() {
register_taxonomy(
'productpages',
'attachment',
array(
'hierarchical'=>true,
'label' => __( 'Assign to Product Page' ),
'rewrite' => array( 'slug' => 'productpages' ),
'show_in_nav_menus'=>false,
)
);
}
add_action( 'init', 'add_product_pages_to_attachments' );
//populate the list
function populate_product_list()
{
//get my specific page id which will be used in the 'parent' argument
$id = get_page_by_path("products")->ID;
$args = array(
'post_type'=>'page',
'parent'=>$id
);
//get all the pages matching the arguments above
$pages = get_pages($args);
//loop through the pages and add them to the taxonomy list
foreach ($pages as $page) {
wp_insert_term($page->post_title,'productpages');
}
delete_option("productpages");
}
add_action('init','populate_product_list');