Tạo custom post type cho WordPress

Tạo custom post type là nhu cầu hết sức thiết thực trong quá trình bạn sử dụng WordPress, bạn mong muốn tạo ra một post type mới có thể giúp bạn đăng và quản lý video hoặc post type có thể đăng và quản lý sản phẩm,… bài viết này sẽ giúp bạn làm được những điều như vậy.

Trong bài viết này Sáu sẽ hướng dẫn cho bạn cách tạo post type Sản phẩm để làm một trang shop với WordPress. Bạn có thể sử dụng tập tin functions.php của giao diện hoặc tạo một plugin mới để chèn đoạn code bên dưới vào:

function stheme_product_post_type() {

	$labels = array(
		'name'                => _x( 'Sản phẩm', 'Tên của post type', 'stheme' ),
		'singular_name'       => _x( 'Sản phẩm', 'Tên của post type', 'stheme' ),
		'menu_name'           => __( 'Sản phẩm', 'stheme' ),
		'parent_item_colon'   => __( 'Parent Item:', 'stheme' ),
		'all_items'           => __( 'Quản lý sản phẩm', 'stheme' ),
		'view_item'           => __( 'Xem sản phẩm', 'stheme' ),
		'add_new_item'        => __( 'Thêm sản phẩm', 'stheme' ),
		'add_new'             => __( 'Thêm sản phẩm', 'stheme' ),
		'edit_item'           => __( 'Sửa sản phẩm', 'stheme' ),
		'update_item'         => __( 'Cập nhật sản phẩm', 'stheme' ),
		'search_items'        => __( 'Tìm kiếm sản phẩm', 'stheme' ),
		'not_found'           => __( 'Chưa có sản phẩm nào được tạo.', 'stheme' ),
		'not_found_in_trash'  => __( 'Không có sản phẩm trong này.', 'stheme' ),
	);
	$args = array(
		'label'               => __( 'sproduct', 'stheme' ),
		'description'         => __( 'Quản lý danh mục sản phẩm', 'stheme' ),
		'labels'              => $labels,
		'supports'            => array('title', 'editor', 'thumbnail', 'comments', 'excerpt'),
		'taxonomies'          => array( 'category', 'post_tag' ),
		'hierarchical'        => false,
		'public'              => true,
		'rewrite' => array("slug" => "san-pham"),
		'show_ui'             => true,
		'show_in_menu'        => true,
		'show_in_nav_menus'   => true,
		'show_in_admin_bar'   => true,
		'menu_position'       => 5,
		'menu_icon'           => get_splugin_uri('/images/icon-shop.png'),
		'can_export'          => true,
		'has_archive'         => false,
		'exclude_from_search' => false,
		'publicly_queryable'  => true,
		'capability_type'     => 'post'
	);
	register_post_type( 'sproduct', $args );

}
add_action( 'init', 'stheme_product_post_type', 0 );

Với đoạn code bên trên bạn sẽ tạo một custom post type với id là sproduct và tên là Sản phẩm, ngoài ra thì slug hiển thị trên đường dẫn thân thiện với SEO là san-pham. Sản phẩm sẽ có các chức năng dựa trên bài viết (post) trên blog của bạn, tuy nhiên nó sẽ được cụ thể hóa hơn, bạn có thể đăng các sản phẩm trên shop của bạn vào mục này.

Tạo sản phẩm cho WordPress để làm shop

Hình bên trên là demo cho bạn thấy kết quả sau khi bạn thực hiện, trong này có đường link dẫn đến tập tin icon, bạn có thể tìm kiếm một hình ảnh nền trong suốt đuôi .png bất kỳ với kích thước 16×16 để thêm vào. Chúc bạn thành công.

Gửi bình luận của bạn 12 bình luận

  1. cho mình hỏi lỗi này là sao hi:
    Warning: Cannot modify header information – headers already sent by (output started at C:\xampp\htdocs\thutheme\wp-content\plugins\san-pham1\san-pham1.php:1) in C:\xampp\htdocs\thutheme\wp-includes\option.php on line 787

    Warning: Cannot modify header information – headers already sent by (output started at C:\xampp\htdocs\thutheme\wp-content\plugins\san-pham1\san-pham1.php:1) in C:\xampp\htdocs\thutheme\wp-includes\option.php on line 788
    tks

    • Có nhiều nguyên nhân dẫn đến lỗi này, có thể là File Encoding bị lỗi, cũng có thể là bạn bị thừa khoản trắng phía sau mở và đóng php (< ?php ... ?>), cũng có thể là bạn xuất HTML trước khi redirect hoặc start session,…

      Để biết được nguyên nhân thì bạn phải hiểu về code, phải xác định được do plugin hay do giao diện làm ra lỗi từ đó mới khoanh vùng tìm kiếm mà khắc phục.

Gửi bình luận

Địa chỉ email của bạn sẽ được giữ bí mật. Những mục bắt buộc được đánh dấu *