Dự đoán tốt nhất của tôi là bạn chưa cấp quyền cho người dùng cơ sở dữ liệu Wordpress MySQL của bạn đối với bảng tùy chỉnh mới của bạn, có lẽ vì bạn đã tạo nó với một người dùng MySQL khác thông qua phpMyAdmin
. Thử chạy:
GRANT ALL PRIVILEGES ON sow2.spd_invites TO 'wordpress_user'@'wordpress_host';
FLUSH PRIVILEGES; -- load new privileges
Thay thế "wordpress_user" bằng tên người dùng Wordpress MySQL của bạn (có thể tìm thấy trong wp-config.php
) và "wordpress_host" bằng tên máy chủ của máy chủ Wordpress của bạn (hoặc máy chủ cục bộ nếu nó trên cùng một máy chủ).
Hãy nhớ rằng điều này sẽ cho phép Wordpress MySQL đầy đủ quyền (SELECT
, INSERT
, DROP
, v.v.) vào bảng này, có thể không được mong muốn. Xem tài liệu MySQL để biết thông tin của tôi trên GRANT
command - http://dev.mysql.com/doc/refman /5.5/en/grant.html
Bạn sẽ muốn chạy phụ trang của mình bằng cách sử dụng query()
hoạt động vì nó sẽ không trả về bất kỳ kết quả nào:
$wpdb->query($query);
Để xem tất cả các bảng hiển thị cho người dùng Wordpress MySQL của bạn, hãy thêm phần sau vào functions.php
của chủ đề tệp để in tên bảng ở cuối mỗi trang:
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');