自定义分类和页面列表

时间:2014-04-29 20:36:23

标签: wordpress

我想知道如何将现有页面列表添加到自定义分类中作为术语。

我的目标是能够为上传的附件添加对页面的引用。

我能够创建分类法并且它显示出来,它只是没有填充。

另外 - 如果有更好的方法可以解决这个问题,我也很乐意。

例如: 我有“信息”,“联系”页面

我希望这些项目显示为条款。

1 个答案:

答案 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');