2013-09-22 27 views

回答

0
SELECT ID FROM wp_posts WHERE ... 

這裏假設一個典型的WordPress安裝。多場所安裝並安裝在表格前綴被修改的位置與帖子表wp_部分具有不同的前綴。

WHERE子句之後的內容取決於您如何獲取帖子。

例如,如果你知道你想要的標題後「選擇我」,你可以使用:

SELECT ID FROM wp_posts WHERE post_title LIKE '%select me%'; 

LIKE是不需要的,當然。這是我使用的一個快捷方式(可能很慢BTW),以避免案例問題或使用部分字符串進行選擇。

您可以在WordPress的配置文件中找到數據庫名稱和其他信息。如果您不確定表名是否使用來自命令行提示符的描述,或者使用基於web的工具(如phpMyAdmin)進行連接。

祝你好運。

0

可以有多個條款的範疇,因此您可以join表如下,並在where子句

SELECT t.* FROM `wp_terms` t 
INNER JOIN `wp_term_taxonomy` tt ON (t.`term_id` =tt.`term_id`) 
LEFT JOIN `wp_term_relationships` ttr ON (tt.`term_taxonomy_id`= ttr.`term_taxonomy_id`) 
LEFT JOIN `wp_posts` p ON (ttr.`object_id` = p.`ID`) WHERE p.`ID`=23 
// example post id is 23 

在WP可以使用Class Reference wpdb

global $wpdb; 

$terms=$wpdb->get_results("SELECT t.* FROM $wpdb->prefix.`terms` t 
    INNER JOIN $wpdb->prefix.`term_taxonomy` tt ON (t.`term_id` =tt.`term_id`) 
    LEFT JOIN $wpdb->prefix.`term_relationships` ttr ON (tt.`term_taxonomy_id`= ttr.`term_taxonomy_id`) 
    LEFT JOIN $wpdb->prefix.`posts` p ON (ttr.`object_id` = p.`ID`) WHERE p.`ID`=23 "); 

如提供的帖子ID簡單的你可以使用WP的get_the_category()這將返回類別的數組