我正在建立自己的wordperss主题,当在WordPress Customizer上启动主题选项时,遇到了一些麻烦。
我试图创建一个textarea,我已经读过我需要创建一个扩展类,然后在WordPress的add_control函数下调用它。
我已经尝试过了,并且在定制器模式下都可以正常工作,但是一旦我进入网站的任何其他部分,我就会收到此错误:
致命错误:找不到类“ WP_Customize_Control”
正如我说的那样,它在定制程序中可以100%自用,但是其他任何页面(包括admin)我都会收到此消息。
在自定义其他主题的时候也可能出现这个问题!!!
原因:
WP_Customize_Control类仅在手动使用主题定制器时才加载。因此,您需要在函数绑定到“ customize_register”操作中定义您的类。
例:
add_action( ‘customize_register’, ‘my_customize_register’ );
function my_customize_register($wp_customize) {
//class definition must be within my_customie_register function
class ublxlportfolio_textarea extends WP_Customize_Control { … }
//other stuff
}
解决方案:
1.先看它是怎么报错的,是在那个文件里的多少行。copy一下路径
使用 vim /home/www/…/xxxx.php
在其中使用 /WP_Customize_Control 匹配定位,然后在将整个类被包含在
function my_customize_register($wp_customize) {…}中
再在它上面加add_action( ‘customize_register’, ‘my_customize_register’ );
该类需要进入register函数内!