为了区分不同的网站内容,方便客户更新维护网站,我们在帮客户开发网站的时候往往会添加自定义文章类型,WordPress提供了非常方便的函数 register_post_type 以方便开发者添加不同的文章类型,如果偶尔用一次两次,直接按照官方的示例添加即可,可是我们会经常用到这些功能,每次都复制粘贴,修改一大堆东西显然是很浪费时间的,所以我们就写了一个简单的函数来快速添加自定义文章类型。全部代码如下:
function create_types($slug, $name) {
//自定义文章类型标签
$labels_type = array(
'name' => $name,
'singular_name' => $name,
'add_new' => '添加' . $name,
'add_new_item' => '添加新' . $name,
'edit_item' => '编辑' . $name,
'new_item' => '新' . $name,
'all_items' => '所有' . $name,
'view_item' => '查看' . $name,
'search_items' => '搜索' . $name,
'not_found' => '没有找到' . $name,
'not_found_in_trash' => '没有在回收站中找到' . $name,
'parent_item_colon' => '',
'menu_name' => $name,
);
//自定义文章类型参数
$args_type = array(
'labels' => $labels_type,
'public' => true,
'publicly_queryable' => true,
'show_ui' => true,
'show_in_menu' => true,
'query_var' => true,
'rewrite' => array( 'slug' => $slug ),
'capability_type' => 'post',
'has_archive' => true,
'hierarchical' => false,
'menu_position' => null,
'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'comments' ),
'description' => '这是自定义文章类型的描述'
);
register_post_type( $slug, $args_type );
}
包这段代码添加到主题的 function.php 文件中,在需要添加文件类型的时候,只需要在后面写上:
create_types("product", "产品");
就可以添加一个自定义文章类型。
怎么样?是不是很简单?如果你有更好的方法,欢迎在留言中交流。
3 thoughts on “通过自定义函数快速添加 WordPress 自定义文章类型”
請問要如何讓自定義文章類型支援標籤?我有搜尋到要在參數那裡加入
'taxonomies' => array('team_tag')
,但是加入了卻沒有在編輯區顯示出標籤的區塊,不知道我是否哪裡做錯了?抱歉,應該是
'taxonomies' => array('post_tag')
文章中介绍的功能已经做成了插件——Wizhi CMS,插件已经提交到官方目录,可以直接在后台安装使用,插件介绍:https://www.wpzhiku.com/wordpress-cms-plugin-wizhi-cms/