我正在为我的投资组合创建一个自定义的wordpress主题, 尝试通过使用字段和元框从头开始做所有事情, 并且不想使用任何插件。
我创建了一个cpt, 如下所示:
function codex_custom_init() {
register_post_type(
'Portfolio', array(
'labels' => array('name' => __( 'Portfolio' ), 'singular_name' => __( 'Portfolio' ) ), 'public' => true, 'has_archive' => true, 'supports' => array('title', 'editor', 'thumbnail', 'comments'), 'menu_icon' => 'dashicons-sos', )
);
//register taxonomy for portfolio post tags
register_taxonomy(
'portfolio-tag', //taxonomy
'portfolio', //post-type
array(
'hierarchical' => false, 'label' => __( 'Portfolio Tags', 'taxonomy general name'), 'singular_name' => __( 'Tag', 'taxonomy general name' ), 'rewrite' => true, 'query_var' => true
)
);
// add categories for Portfolio
register_taxonomy(
'portfoliocategories', 'portfolio', array(
'labels' => array(
'name' => 'Portfolio Categories', 'add_new_item' => 'Add New Portfolio Category', 'new_item_name' => "New Portfolio Type"
), 'show_ui' => true, 'show_tagcloud' => false, 'hierarchical' => true
)
);
}
add_action( 'init', 'codex_custom_init' );
我已经创建了所有必需的页面和侧栏。我想在我的”档案库页面”上显示档案库小部件, 这是一个单独的档案库小部件, 其中的帖子仅与档案库相关。感谢你的关心。
如何为cpt编辑和自定义它:
<?php
wp_get_archives(
apply_filters(
'widget_archives_args', array(
'type' => 'monthly', 'show_post_count' => $count, ), $instance
)
);
?>
#1
使用此代码为自定义CPT创建侧边栏小部件。用于注册新的侧边栏。
// Register new sidebar with ID ==> deals-sidebar
genesis_register_sidebar( array(
'id' => 'deals-sidebar', 'name' => 'SideBar for Deals', 'description' => 'SideBar for Deals Custom Post Type', ) );
删除默认的WordPress补充工具栏, 并添加操作钩以将新的补充工具栏添加到CPT交易中。
add_action('get_header', 'crunchify_update_deals_sidebar');
function crunchify_update_deals_sidebar() {
if ( is_singular('deals')) { // Here "deals" is a slug name for my CPT
remove_action( 'genesis_sidebar', 'genesis_do_sidebar' ); //remove the default genesis sidebar
add_action( 'genesis_sidebar', 'crunchify_add_sidebar' ); //add an action hook to call the function for my custom sidebar
}
}
//Function to output my custom sidebar
function crunchify_add_sidebar() {
dynamic_sidebar( 'deals-sidebar' ); // id of sidebar which you just registered
}
希望能帮助到你!!!
#2
在显示小部件的位置, 将代码置于这种情况下。
if ( is_singular( 'yourcpt' ) ) {
// conditional content/code
}
评论前必须登录!
注册