web-dev-qa-db-fra.com

Widgets de tableau de bord - Ajouter une page d'administration avec les mêmes fonctionnalités

J'ai un plugin qui a son propre tableau de bord avec essentiellement des vues rapides des données pertinentes et je voulais savoir s'il y avait un moyen "facile" d'imiter la fonctionnalité du tableau de bord de l'administrateur où vous pouvez déplacer/réduire/maximiser les widgets?

UPDATE: Je suppose que je devrais ajouter des métaboxes, comme lorsque vous ajoutez des métaboxes à un type de message personnalisé ... Est-ce la direction à suivre?

1
clockwiseq

Je suppose que "facile" est un terme relatif. Oui, vous pouvez créer le vôtre.

Pour ajouter une page d'administrateur, il existe une multitude de tutoriels. Celui-ci fonctionne (et contient d'autres informations dont vous pourriez avoir besoin) http://wp.smashingmagazine.com/2011/03/08/ten-things-every-wordpress-plugin-developer- devrait savoir/ . Recherchez " Ajoutez votre propre page de paramètres ou votre menu Admin " sur la page.

jQuery UI est chargé dans l’administrateur WordPress. Vous pouvez utiliser http://jqueryui.com/sortable/#portlets comme guide de départ pour savoir comment effectuer le glissement/le tri/la réduction.

Ensuite, lorsque quelqu'un déplace ou réduit un panneau, vous devez stocker ce changement dans la base de données et le lire lors du prochain chargement de la page pour recharger la configuration.


MODIFIER

Essayez de procéder au reverse engineering du code de tableau de bord WP lui-même et vous obtiendrez peut-être de nombreuses fonctionnalités gratuitement.

/wp-admin/includes/dashboard.php contient le code du widget (ou affichez la source sur le tableau de bord et partez de là). Code également pour enregistrer/charger les paramètres.

wp-admin/js/common.js a le javascript qui active le comportement du widget.

Les éléments jQuery.UI n'étant pas chargés automatiquement par défaut, vous devez donc utiliser wp_enqueue_script ce dont vous avez besoin.

Alternativement Vous pouvez ignorer la création de votre choix et ajouter simplement des widgets personnalisés au tableau de bord par défaut. http://codex.wordpress.org/Dashboard_Widgets_API

1
Will