WordPress禁用博客:用插件还是子主题functions.php代码更优?
WordPress插件与性能:停用原生功能的插件 vs 自定义代码
关于“插件越少性能越好”的本质
“插件越少网站性能越好”这个说法核心逻辑是对的——每多一个插件,就多一份代码加载、钩子调用的开销,哪怕再小,积少成多也会影响加载速度;而且插件代码质量参差不齐,冗余功能、垃圾代码更是会拖慢网站。
但以停用原生功能为目的的轻量插件要另说:比如Disable Blog这类插件,本身代码量极少,只专注做“禁用博客”这一件事,几乎不会给网站带来额外性能负担。这类插件的优势是操作简单,不用碰代码,适合新手或需要灵活开关功能的场景。
选Disable Blog插件还是自定义代码?
优先选插件的场景
- 你对PHP代码不熟悉,不想冒修改主题文件出错的风险;
- 未来可能需要快速恢复博客功能,只需要停用插件就能搞定,不用删代码;
- 希望依赖插件作者持续维护,比如适配WordPress新版本的兼容性问题。
优先选自定义代码的场景
- 你懂基础PHP,能安全修改子主题的
functions.php; - 确定长期不需要博客功能,不想多加载任何插件(哪怕是轻量的);
- 担心插件停止维护,导致功能失效或出现兼容性问题。
你找到的禁用博客代码解析
你提供的这段代码是非常高效的实现方式,直接通过WordPress的过滤器修改默认文章类型的注册参数,完全从后台和前端层面禁用博客功能:
<?php // 禁用默认文章类型 function remove_default_post_type($args, $postType) { if ($postType === 'post') { $args['public'] = false; $args['show_ui'] = false; $args['show_in_menu'] = false; $args['show_in_admin_bar'] = false; $args['show_in_nav_menus'] = false; $args['can_export'] = false; $args['has_archive'] = false; $args['exclude_from_search'] = true; $args['publicly_queryable'] = false; $args['show_in_rest'] = false; } return $args; } add_filter('register_post_type_args', 'remove_default_post_type', 0, 2); // 结束移除文章类型
这段代码的作用:
- 将默认文章类型(post)设为非公开,禁止前端访问;
- 在后台菜单、顶部工具栏、导航菜单中隐藏博客相关入口;
- 关闭文章的导出、归档、搜索可见性;
- 禁用REST API中的文章接口,彻底阻断博客功能的调用路径。
和插件相比,这段代码没有任何额外的插件架构开销,性能上更优,而且完全由你自己掌控,不用担心插件更新的问题。
内容的提问来源于stack exchange,提问作者Victor Stochero
相关产品推荐
相关产品推荐

