WordPress模板插件定制

您现在的位置是:首页 > WordPress教程WordPress教程

WordPress如何创建自定义文章类型

查看 WP集市 的更多文章WP集市 2025-09-01 【WordPress教程】 426人已围观

  1. WordPress搞自定义文章类型其实就像在超市里自己组装快餐——你本来只有默认的米饭(文章)和面条(页面),但现在想要卖麻辣烫。得先告诉系统:“嘿,给我个新柜台!”用代码在主题的functions.php里喊一嗓子:
add_action('init', 'build_my_food_counter');
function build_my_food_counter() {
    register_post_type('malatang', [
        'labels' => [
            'name' => '麻辣烫专区',
            'add_new' => '搞碗新的'
        ],
        'public' => true,
        'has_archive' => true,
        'menu_icon' => 'dashicons-food',
        'supports' => ['title', 'editor', 'thumbnail']
    ]);
}
  1. 这时候后台会突然长出一个叫“麻辣烫专区”的新菜单,点进去就能加菜品。但你会发现添加内容时只有标题和正文——这就像麻辣烫只给汤底不给菜。得加配料(自定义字段),比如辣度选项:
add_meta_box('spicy_level', '变态辣等级', function($post) {
    $value = get_post_meta($post->ID, '_spicy', true);
    echo '<select name="spicy_select">';
    foreach(['微辣','中辣','变态辣'] as $option) {
        echo '<option '.selected($value, $option).'>'.$option.'</option>';
    }
    echo '</select>';
}, 'malatang');
  1. 保存的时候记得用钩子接住用户选的辣度,不然数据会掉进虚空:
add_action('save_post', 'save_spicy_data');
function save_spicy_data($post_id) {
    if (isset($_POST['spicy_select'])) {
        update_post_meta($post_id, '_spicy', sanitize_text_field($_POST['spicy_select']));
    }
}
  1. 最后到前台显示时,用WP_Query召唤这些麻辣烫文章,循环输出时要记得把自定义字段值掏出来:
$malatang_query = new WP_Query(['post_type' => 'malatang']);
while($malatang_query->have_posts()) : the_post();
    echo '辣度:'.get_post_meta(get_the_ID(), '_spicy', true);
endwhile;
wp_reset_postdata();
  1. 其实整个过程就像在玩乐高——系统给你插槽(钩子)和积木(函数),你只要把'malatang'这类自定义参数像不同颜色的积木块塞进去。偶尔会拼错形状(语法错误),但刷新后台时看到那个食物图标突然出现,比泡面揭开盖子那刻还有成就感。

Tags:

WordPress模板插件定制

WP集市

V管理员
文章 280 篇 | 评论 0 次
最新文章