web-dev-qa-db-fra.com

Modifier les tables de base de données personnalisées dans Wordpress

J'ai un site qui utilise des tables de base de données personnalisées pour gérer les informations insérées par un processus totalement indépendant de Wordpress. Les données de la table sont utilisées sur le site Wordpress mais ne sont pas gérables via l'interface d'administration.

Je veux le rendre gérable via le backend de l'administrateur. Quel est le processus de base pour cela? Dans mon esprit, je dois créer un lien dans la barre latérale Admin vers "Gérer les données personnalisées" et ce lien ouvre une page permettant la gestion CRUD de base des différentes lignes du tableau.

Cela serait simple dans le code Vanilla, mais je ne suis pas familier avec ces aspects coutumiers de la modification de Wordpress, je cherche donc simplement à pointer dans la bonne direction. Donnez-moi la grande image, en d'autres termes.

3
gaoshan88

Quelques notes avant: C'est seulement comment je l'aborderais - Je ne vais pas entrer plus dans les détails, car au fond c'est une liste de plugins que vous devrez coder.

Construire une page d'arrière-plan

Utilisez la fonction add_menu_page pour ajouter une page. Ensuite, construisez vos tables de gestion en étendant la classe WP_List_Table :

class WPSE_48824_List_Table extends WP_List_Table
{
    // do stuff
}

// Use it:
$list_table = new WPSE_48824_List_Table();
$list_table->display();

Manipulation de la DB

En gros, vous allez avoir beaucoup de demandes de base de données. Utilisez le $wpdb object/Class.

N'oubliez pas de $wpdb->prepare() vos données avant de les insérer.

Utilisez également $wpdb->prefix au lieu de le coder en dur.

Actions en vrac

Courra via Ajax. Plus d'informations peuvent être lues sur Ajax for Plugins dans Code ou ici sur WPSE dans l'archive de balises ajax .

4
kaiser

Essaye ça:

http://wordpress.org/extend/plugins/db-toolkit/

Je ne l'ai pas encore utilisé pleinement, mais il permet la gestion CRUD des données de votre base de données. C'est complètement gérable dans le backend de Wordpress. Bien que la courbe d'apprentissage soit un peu longue, l'interface est agréable et doit faire exactement ce dont vous avez besoin.

1
Tom Kiddle