get_posts通过文章ID获取wordpress文章相关内容

通过指定的文章ID,然后用get_posts函数来获取文章,显示文章相关内容,好像很少人有这个功能需求,get_posts在wordpress官方函数库里的解释并没有涉及这个方面的内容。用中文找很久找不到相关内容,用英文最后才找到的,还是老外有爱啊,现在才知道学点英文有多重要。

主要是用到 post__in 这个变量,官方get_posts函数说明里没有,所以一直不知道,代码如下:

$args = array(
    'post__in' => array(43,23,65);//对应文章的ID,
);
$posts = get_posts($args);
foreach ($posts as $p) :
    //post!
endforeach;

修改或者添加上面代码中的文章ID即可,其他的就是get_posts函数的用法了。

这种通过指定文章ID再使用get_posts函数来获取文章内容的半自动用法,也许就我这个wordpress水平不济的人才会有这个独特的需求吧,还好wordpress够变态,能满足我这种变态的要求。

我在官方的函数里查了一下,WP_Query函数里有提到 post__in还有post__not_in,看来各个函数融会贯通才是真的本事,你不说我真不懂。

WP_Query函数里还介绍了通过文章ID获取文章也可以用p,比如$query = new WP_Query( 'p=7' );就是不知道是否支持多个文章ID同时p的,也没试过get_posts里是不是也可以p一下。

THE END

评论 3

    1. 我过去看了下,没看懂你说的意思。不显示信息(用户未填写)的地方默认显示一句话,是不是一句php判断,某个变量为空显示一个固定的内容,不为空显示变量内容?

    2. 我懂你的意思了,你找wordpress官方自带的模板,然后看一下author.php模板的写法你就知道了,有些函数要在循环里才能起作用。

发表评论

幸会!