Je veux enregistrer certains paramètres dans les options du widget qui sont ensuite passés dans une autre page. Le widget est un formulaire qui appelle un service Web.
Les options que je veux transmettre sont l'authentification pour le webservice qui est actuellement codée en dur dans la page de résultats (réalisée comme modèle). Par conséquent, ils doivent être cachés à l'utilisateur du site Web.
Code du widget / plugin:
function widget($args, $instance){
extract($args);
$title = apply_filters('widget_title', empty($instance['title']) ? 'Choose a service' : $instance['title']);
$lineOne = empty($instance['username']) ? '' : $instance['username'];
$lineTwo = empty($instance['password']) ? '' : $instance['password'];
# Before the widget
echo $before_widget; // etc...
Page de résultats ...
$url = "http://www.nhs.uk/NHSCWS/Services/ServicesSearch.aspx?user=".[USERNAME]."&pwd=".[PASSWORD]."&q=".$_POST['PostCode']."&type=".$_POST['ServiceType']."";
J'apprends toujours comment WP se tient ensemble, donc désolé pour la question n00b.
Tous les widgets et leurs options sont stockés dans
global $wp_registered_widgets
. Chargez simplement cette variable et imprimez le contenu pour trouver les options de widget que vous recherchez.la source
J'ai utilisé la méthode suggérée par Stephen Harris.
reset () donne la première valeur de clé du tableau, si vous ne savez pas quel est l'ID de votre widget.
Remarque: Cela n'aide pas si plusieurs copies du widget sont actives. Parce qu'il renvoie uniquement les paramètres de la première copie du widget.
la source
Peut-être que je lis mal votre question, mais il semble que ce que vous cherchez à faire, c'est d'enregistrer des options ou des informations de votre widget (nom d'utilisateur et mot de passe) quelque part dans WordPress où vous pouvez ensuite y accéder de nouveau en dehors du code du widget . Si c'est correct, vous voudrez regarder la fonction add_option () (ainsi que update_option () et delete_option () si nécessaire).
Pour définir une option, procédez comme suit:
Vous pouvez ensuite le récupérer n'importe où dans WP en appelant get_option comme ceci:
la source