我有下面的代码,我必须得到使用帖子标题的帖子id。
$atts['speakersname']='abc,xyz,prq'; // post title
$getspeakertitle=explode( ',', $atts['speakersname']);
$speakerpostid[]='';
foreach ($getspeakertitle as $key => $value) {
$speakerpostid[] = get_page_by_title( $value, OBJECT, 'speaker' );
}
echo"<pre>";
print_r($speakerpostid);
print_r($speakerpostid->ID);
print_r($speakerpostid['ID']);
print_r($speakerpostid[0]['ID']);
我已经试过了,我得到一个错误
print_r($speakerpostid->ID);
注意:尝试获取
中非对象的属性'ID'
print_r($speakerpostid['ID']);
注意:未定义索引:ID在
尝试下面的代码,它也显示第一个id值
print_r($speakerpostid[0]['ID']);
我必须将ID传递给下面的代码
$s_post = get_posts(array(
'showposts' => 10,
'post_type' => 'speaker',
'post_status' => 'publish',
'post__in' => array('34'), // I have to pass id here to get all the details
)
);
你知道我哪里做错了吗
试试这个:
您将在$speakerpostid数组中获得整个post对象。您只需要存储post id。
$atts['speakersname'] = 'abc,xyz,prq'; // post title
$getspeakertitle = explode(',', $atts['speakersname']);
$speakerpostid = array();
foreach ($getspeakertitle as $value) {
$page_obj = get_page_by_title($value, OBJECT, 'speaker');
$speakerpostid[] = $page_obj->ID;
}
echo "<pre>";
print_r($speakerpostid);