web-dev-qa-db-fra.com

Comment ajouter une fonction d'exportation à une page de thème d'option personnalisée

Je crée un nouveau modèle Wordpress et j'ai une question: j'ai ajouté une page d'option personnalisée à mon nouveau modèle (vous pouvez voir ce que je fais ici et Ici ) mais j'aimerais maintenant ajouter une nouvelle fonction. Connaissez-vous le formulaire de contact Si? Dans ce plugin, l'utilisateur final peut télécharger une copie de sauvegarde de tous les paramètres et la télécharger sur un autre site Web. J'aimerais pouvoir ajouter la même fonction à ma nouvelle page d'option. Je sais comment sauvegarder mes paramètres en me connectant à phpMyAdmin, mais parfois, l'utilisateur final ne peut pas se connecter à phpMyAdmin ou il est simplement préférable qu'il ne se connecte pas à phpMyAdmin :-). Avez-vous une solution à cela? En fait, toutes mes fonctions personnalisées sont nommées: 'appaqua__zona1c', 'appaqua__zona1x' et ainsi de suite ... mon nom abrégé de thème est appaqua. S'il vous plaît par genre avec moi, je ne suis pas un programmeur professionnel et je suis vraiment désolé si j'ai utilisé de mauvais mots pour expliquer ce dont j'ai besoin. Merci beaucoup à tous!

1
Downloadtaky

Le plus simple serait de regarder le code de Si Contact Form (car il fait déjà ce que vous voulez) et d’utiliser le même type de système. Bientôt, vous aurez besoin de méthodes pour effectuer les tâches suivantes:

  • Créez un document XML (ou autre format) contenant vos options de thème.
  • Enregistrez/exportez le document XML.
  • Importez le document XML (il est inutile d'exporter si vous ne pouvez plus l'importer).

Si vous souhaitez utiliser Si Contact Form comme exemple, les routines de sauvegarde sont les suivantes:

En gros, il sort simplement une version sérialisée de vos options dans un fichier. Vous pouvez ensuite télécharger le fichier sur votre page d'administration, analyser la chaîne d'options numérotée et restaurer tout ce dont vous avez besoin à partir d'une sauvegarde.

Les scripts de sauvegarde pour Si Contact Form sont dans la fonction si_contact_form_backup_restore() de ce fichier: http://plugins.svn.wordpress.org/si-contact-form/trunk/si-contact-form .php (la plupart du temps en bas de la page). Il ne fait que lire le fichier, analyser les options et les définir dans la base de données en fonction des besoins.

3
EAMann