Min bästa gissning är att du inte har gett tillstånd till din Wordpress MySQL-databasanvändare för din nya anpassade tabell, förmodligen för att du skapade den med en annan MySQL-användare genom phpMyAdmin
. Testa att köra:
GRANT ALL PRIVILEGES ON sow2.spd_invites TO 'wordpress_user'@'wordpress_host';
FLUSH PRIVILEGES; -- load new privileges
Ersätt "wordpress_user" med ditt Wordpress MySQL-användarnamn (finns i wp-config.php
) och "wordpress_host" med värdnamnet för din Wordpress-server (eller localhost om den är på samma server).
Tänk på att detta tillåter Wordpress MySQL fullständiga behörigheter (SELECT
, INSERT
, DROP
, etc) till denna tabell, vilket kanske inte är önskvärt. Se MySQL-dokumenten för min information om GRANT
kommando - http://dev.mysql.com/doc/refman /5.5/en/grant.html
Du kommer att vilja köra din infogning med query()
fungerar eftersom det inte ger några resultat:
$wpdb->query($query);
För att se alla tabeller som är synliga för din Wordpress MySQL-användare, lägg till följande i ditt temas functions.php
fil för att skriva ut tabellnamnen längst ner på varje sida:
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');