本文主题是wordpress主题开发:创建自定义文章类型post-type(1)。常用WordPress的朋友都知道,WordPress程序内置了2种文章类型——“post文章”和“page页面”,post文章用来展示网站普通的动态文章,page页面用来展示固定的页面,如“关于我们、联系我们、公司简介”等就是一般公司网站所常用到的page页面。
如果做一个稍微复杂的WordPress网站或需求自定义程度比较高,这些可能就不够用了,如:在自己WordPress网站中添加商城、视频等另类信息。这时,我们可以通过注册文章类型,手动自己创建一个 Post Type 来展示这类信息。
下面,我们就来以创建一个“产品”的post-type 为例来介绍“自定义文章类型post-type”。
在WordPress主题的functions.php文件中添加以下代码:
- <?php
- add_action(‘init’, ‘my_custom_init’);
- function my_custom_init()
- {
- $labels = array(
- ‘name’ => ‘商城’,
- ‘singular_name’ => ‘书本singularname’,
- ‘add_new’ => ‘发表产品’,
- ‘add_new_item’ => ‘发表一个新产品’,
- ‘edit_item’ => ‘编辑产品’,
- ‘new_item’ => ‘新产品’,
- ‘all_items’ => ‘所有产品’,
- ‘view_item’ => ‘查看产品’,
- ‘search_items’ => ‘搜索产品’,
- ‘not_found’ => ‘没有找到相关产品’,
- ‘not_found_in_trash’ => ‘回收间中没有相关产品’,
- ‘parent_item_colon’ => ”,
- ‘menu_name’ => ‘商城’
- );
- $args = array(
- ‘labels’ => $labels,
- ‘public‘ => true,
- ‘publicly_queryable’ => true,
- ‘show_ui’ => true,
- ‘show_in_menu’ => true,
- ‘query_var’ => true,
- ‘rewrite’ => true,
- ‘capability_type’ => ‘post’,
- ‘has_archive’ => true,
- ‘hierarchical’ => false,
- ‘menu_position’ => null,
- ‘supports’ => array(‘title’,’editor’,’author’,’thumbnail’,’excerpt’,’comments’)
- );
- register_post_type(‘book’,$args);
- }
- ?>
通过上面的代码,我们在主题后台就添加了一个“商城”菜单模块,如下图:
通过上图中,我们可以看到,我们为主题添加了“商城、所有产品、发表产品”等功能。而发表产品页跟我们发表普通文章基本一样,点击发表产品,如下图:
通过上面的例子,我们可以看到,wordpress的post-type文章类型的扩展是非常强大的。在以下章节,我们会对post-type自定义文章类型进行详细的解说。