La mia ipotesi migliore è che tu non abbia concesso l'autorizzazione all'utente del database MySQL di Wordpress per la tua nuova tabella personalizzata, presumibilmente perché l'hai creata con un utente MySQL diverso tramite phpMyAdmin
. Prova a correre:
GRANT ALL PRIVILEGES ON sow2.spd_invites TO 'wordpress_user'@'wordpress_host';
FLUSH PRIVILEGES; -- load new privileges
Sostituisci "wordpress_user" con il tuo nome utente MySQL di Wordpress (può essere trovato in wp-config.php
) e "wordpress_host" con il nome host del tuo server Wordpress (o localhost se si trova sullo stesso server).
Tieni presente che ciò consentirà a Wordpress MySQL i permessi completi (SELECT
, INSERT
, DROP
, ecc) a questa tabella, il che potrebbe non essere desiderabile. Vedi i documenti MySQL per le mie informazioni su GRANT
comando - http://dev.mysql.com/doc/refman /5.5/it/concessione.html
Ti consigliamo di eseguire il tuo inserto utilizzando query()
funzione in quanto non restituirà alcun risultato:
$wpdb->query($query);
Per visualizzare tutte le tabelle visibili al tuo utente MySQL di Wordpress, aggiungi quanto segue a functions.php
del tuo tema file per stampare i nomi delle tabelle in fondo a ogni pagina:
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');