关闭主题自定义功能
wordpress提供了一套成熟的后台自定义功能,可以利用官方的组件来为主题提供一些选项,视自定义存储方式的不同,保存在选项中的值,可以使用get_option()函数获取,而保存在主题修改项中的值,则需要用到get_theme_mod()函数。
部分用户并不使用官方提供的组件,而是利用第三方的框架实现后台选项页的设置,这个时候后台主题自定义的功能就有些多余了,为简洁起见,也可以考虑暂时屏蔽这个功能,屏蔽的方法很简单,直接在functions.php文件尾部中添加如下代码即可:
add_filter('map_meta_cap', function($caps, $cap, $user_id, $args) {
if ('customize' == $cap) return ['do_not_allow'];
return $caps;
}, 10, 4);
题外话
使用wordpress过程中,对functions.php的改动可以说是个危险的日常操作,说日常是因为如果想实现某个功能,又不想加装额外的插件,那基本都需要去打functions.php的主意,说危险是因为,这家伙一旦出了问题,比如不小心删除了开头的“<?php”,那么全站包括后台都会无法访问,wordpress系统直接躺平,需要登录服务器,恢复出错前的设置才行。
一个建议
修改functions.php之前,可以先复制一份备份,这样当系统不幸躺平的时,不用去辛苦回忆到底动了哪里才导致的躺平,直接用正确的备份覆盖出错的functions.php文件就可以了。