2017-09-08 3 views
1

Je développe un widget wordpress personnalisé. Le widget a besoin de certaines données de l'utilisateur et doit vérifier ce côté serveur de données.afficher un message lors de la mise à jour d'un widget personnalisé dans wordpress backend

J'ai écrit le code qui vérifie les données dans la fonction 'mise à jour' du widget. Lorsque j'appuie sur le bouton Enregistrer du widget, la mise à jour de la fonction est appelée correctement et ma validation est exécutée.

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; 

}

Ce que je besoin est d'afficher un message à l'utilisateur en fonction du résultat de la validation. Comment puis-je faire ceci? Pour ce que j'ai vu la mise à jour de la fonction est appelée via ajax donc je ne peux pas utiliser un avis d'administrateur.

Est-il possible? Comment puis-je faire cela?

Répondre

0

Essayez ci-dessous le code

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; 
} 
+0

Cela ajoutera un message sur le côté droit de chargement de la page? Le bouton de sauvegarde génère une action de sauvegarde ajax donc je n'ai pas le pageload. – AleCat83