PHP:如何使用WordPress中的自定义查询显示特定类别的帖子?

时间:2016-01-24 14:46:02

标签: php wordpress

我不是使用WP语言而是使用简单的PHP 我的代码现在是

SELECT * FROM wp_posts   w
        WHERE  w.post_status = 'publish'
        AND w.post_type = 'post'
        ORDER BY RAND()
        LIMIT 3

所以我可以在我的自定义主页上显示3篇随机博客文章(不是WP) 它有效。

但现在我想选择一个特定的类别

我该怎么做?

3 个答案:

答案 0 :(得分:0)

query_posts('cat=123');

这可以解决特定类别的问题。如果类别具有名称,则等于名称的值。虽然,建议使用类别ID(如果以后发生更改)。

答案 1 :(得分:0)

你真的不应该使用SQL查询,而是使用WP_Query对象或query_posts函数。

您的查询应如下所示:

$posts = new WP_Query(array(
    'orderby' => rand,
    'posts_per_page' => 3,
    'post_status' => 'publish', 
    'cat' => 123
));

如果您在主页上使用此功能,那么“query_posts”功能将更合适:

query_posts(array(
    'orderby' => rand,
    'posts_per_page' => 3,
    'post_status' => 'publish', 
    'cat' => 123
));

在这种情况下,类别ID为“123”,但您可以在此处使用category params中的任何一个。

答案 2 :(得分:0)

function replaceInlineElements(str){
  str = str.replace(/<strong>/g, '(strong)');
  str = str.replace(/<\/strong>/g, '(/strong)');
  str = str.replace(/\\n/g, '');
  str = str.replace(/<code>/g, '(code)');
  str = str.replace(/<\/code>/g, '(/code)');
  str = str.replace(/<ac:rich-text-body>/g, '');
  str = str.replace(/<\/ac:rich-text-body>/g, '');
  str = str.replace(/ac:/g, '');
  return str;
}