在wordpress后端更新自定义小部件时显示消息

时间:2017-09-08 14:14:19

标签: wordpress widget

我正在开发一个自定义wordpress小部件。小部件需要来自用户的一些数据,需要检查此数据服务器端。

我编写了代码来检查小部件函数“update”中的数据。当我按下窗口小部件的按钮保存时,函数更新被正确调用并执行我的验证。

public function update( $new_instance, $old_instance ) {
$instance = array();
foreach ($this->fields as $field) {
  $fieldName = $field['name'];
  $instance[$fieldName] =
    (!empty($new_instance[$fieldName])?
      strip_tags($new_instance[$fieldName]) :
      ''
    );
}

$check = validate($new_instance);

return $instance;

}

我需要的是根据验证结果向用户显示消息。我怎样才能做到这一点?对于我所看到的函数更新是通过ajax调用的,所以我不能使用管理员通知。

有可能吗?我该怎么做?

1 个答案:

答案 0 :(得分:0)

尝试以下代码

add_action('admin_notices', 'misha_custom_order_status_notices');

 function misha_custom_order_status_notices() {

  global $pagenow, $typenow;
  if( get_transient( 'fx-admin-notice-panel' )){
    echo "<div class=\"updated\"><p>Custom notification comes here</p></div>";
 }
}

public function update( $new_instance, $old_instance ) {
    $instance = array();
    foreach ($this->fields as $field) {
      $fieldName = $field['name'];
      $instance[$fieldName] =
        (!empty($new_instance[$fieldName])?
          strip_tags($new_instance[$fieldName]) :
          ''
        );
    }

    $check = validate($new_instance);
    set_transient( 'fx-admin-notice-panel', true, 5 );
    return $instance;
}