在Wordpress中获取所有帖子ID
问题描述:
是否可以获取当前存在于wordpress数据库中的所有帖子ID的数组(不考虑post_types)? 另外,是否有可能获得特定post_type的所有帖子ID的数组?在Wordpress中获取所有帖子ID
如果可以,该如何实现?
答
可能最好使用wordpress的DB对象运行自定义查询。 (从的functions.php或主题文件等):
// pseudo-code check how to refer to the field columns and table name!
global $wpdb;
$sql="SELECT id, title FROM posts";
$posts = $wpdb->get_results($sql);
print("<ul>");
foreach ($posts as $post)
{
print('<li>'.$post->FIELD1.'|'.$post->FIELD2.'<br/>');
print('</li>');
}
print("</ul>");
我想其实你可以得到还可与标准wp_query对象....但至少我的方式,你可以使在phpMyAdmin查询第一,然后调整语法/ wordpress前缀。 (阅读DB对象上的代码)。如果它是一次性使用phpmyadmin,但对于编程使用,则应将其转换为从您的functions.php文件运行。
答
你可以试试这个方法
$post_ids = get_posts(array(
$args, //Your arguments
'posts_per_page'=> -1,
'fields' => 'ids', // Only get post IDs
));
无法正常工作,只能回到过去的5项, – zhilevan 2016-09-10 13:05:32
您需要在$ args变量加入自订参数。我根据您的需要更新了答案。 PL。检查 – 2016-09-12 06:52:02
昨天我找到了解决方案,tnx:D – zhilevan 2016-09-12 07:12:43