Ma meilleure hypothèse est que vous n'avez pas accordé l'autorisation à votre utilisateur de base de données Wordpress MySQL pour votre nouveau tableau personnalisé, probablement parce que vous l'avez créé avec un autre utilisateur MySQL via phpMyAdmin
. Essayez d'exécuter :
GRANT ALL PRIVILEGES ON sow2.spd_invites TO 'wordpress_user'@'wordpress_host';
FLUSH PRIVILEGES; -- load new privileges
Remplacez "wordpress_user" par votre nom d'utilisateur Wordpress MySQL (peut être trouvé dans wp-config.php
) et "wordpress_host" avec le nom d'hôte de votre serveur Wordpress (ou localhost s'il est sur le même serveur).
Gardez à l'esprit que cela autorisera les autorisations complètes de Wordpress MySQL (SELECT
, INSERT
, DROP
, etc.) à ce tableau, ce qui peut ne pas être souhaitable. Voir la documentation MySQL pour mes informations sur le GRANT
commande - http://dev.mysql.com/doc/refman /5.5/fr/grant.html
Vous voudrez exécuter votre insertion en utilisant le query()
fonction car elle ne renverra aucun résultat :
$wpdb->query($query);
Pour afficher toutes les tables visibles par votre utilisateur Wordpress MySQL, ajoutez ce qui suit au functions.php
de votre thème fichier pour imprimer les noms des tables en bas de chaque page :
function show_all_tables(){
global $wpdb;
foreach($wpdb->get_results("SHOW TABLES", ARRAY_N) as $table):
echo $table[0]."<br/>";
endforeach;
}
add_action('wp_footer', 'show_all_tables');