问题描述
我已经在WP function.PHP
中创建了一个自定义窗口小部件,就像这样简单:
class TestWidget extends WP_Widget {
public function __construct() {
$widget_ops = array(
'classname' => 'test_widget','description' => esc_html__('Test Widget','theme_widget'),);
parent::__construct( 'test_widget',__('Test',$widget_ops );
}
public function widget( $args,$instance ) {
// outputs the content of the widget
}
public function form( $instance ) {
// outputs the options form on admin
}
public function update( $new_instance,$old_instance ) {
// processes widget options to be saved
}
}
function custom_widgets_init() {
register_widget( 'TestWidget' );
}
add_action('widgets_init','custom_widgets_init');
我使用WPML翻译我的内容。 WPML与默认Widget完美配合,为每个Widget提供语言选择器:
但是,当我添加自定义窗口小部件时,由于admin-ajax.PHP
出现500错误而无法保存。进度圈一直在旋转,如果我保存小部件,则返回“小部件”部分时不会保存它:
如果我禁用WPML,并先保存我的Widget,它就可以工作! 而且,如果我再次启用WPML,现在我可以编辑我的小部件...
所以问题在于,是否要在激活WPML时第一次添加自定义窗口小部件。
您对此有何想法? 我们是否需要在Widget类中添加一些东西以启用WPML兼容性?
谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)