Ada*_*mat 0 php database wordpress
我试图从我导入到我的wordpress数据库的表中提取数据.
我的PHP代码适用于所有默认的wp_表,但是当我尝试并定位表时,我实际上想让我回到bug.
我的代码(目前回复所有帖子标题,它的工作原理)
$liveposts = $wpdb->get_results( $wpdb->prepare("SELECT * FROM $wpdb->posts
WHERE post_status = 'publish'") );
foreach ($liveposts as $livepost) {
echo '<p>' .$livepost->post_title. '</p>';
}
Run Code Online (Sandbox Code Playgroud)
我从另一个数据库导入了3个表,是的,他们确实有数据要拔出.我发现$wpdb->posts期望post表是wp_posts ..所以我尝试将我的表重命名为wp_bus_route ...但仍然没有.
我使用phpMyAdmin从一个大型数据库(以.sql格式)导出3个表并导入它们.我可以在phpMyAdmin中查看表格并查看其中的所有数据.
这是我第一次从wp数据库中提取数据,所以我遗漏了一些明显的东西.
引用表名$wpdb->posts仅适用于标准WP表.对于自定义表,请像这样构建表名:
$liveposts = $wpdb->get_results( $wpdb->prepare("SELECT * FROM " . $wpdb->prefix . "tablename WHERE post_status = 'publish'") );
Run Code Online (Sandbox Code Playgroud)
永远不要永远不要硬编码前缀.这可以在wp-config.php中更改,很多人将其更改为其他内容wp_.改变它wp_是一个很好的安全措施.即使它是您自己的代码和您自己的网站,$wpdb->prefix也是一种值得养成习惯的最佳做法.
| 归档时间: |
|
| 查看次数: |
4854 次 |
| 最近记录: |