显示自定义帖子类型帖子列表

时间:2011-10-04 作者:Gareth

我正在创建两种自定义帖子类型,其中一种显示#2中的帖子列表。

我已经完成了90%的步骤,选择了显示,但无法使用#2中的自定义帖子类型填充它。

我正在使用get\\u posts创建阵列,然后在select中进行响应。

$option_list = get_pages( array( \'post_type\' => \'Partners\' ) );
echo \'<select name="activitymeta_sel" id="activitymeta_sel">\';
  foreach ($option_list as $option) {
   echo \'<option value="\' . $option . \'">\' . $option . \'</option>\';
  }
  echo \'</select>\';
我一定错过了什么。谁能告诉我一些线索吗。

编辑:下面是新代码,但仍然没有得到帖子类型的列表,我知道我在哪里出错了,但不确定在哪里。

echo \'<select name="activitymeta_sel" id="activitymeta_sel">\';
 echo \'<option value="">Select Partners</option> \';
  $pages = get_pages(\'post_type=Partners\'); 
  foreach ( $pages as $pagg ) {
   $option = \'<option value="\' . $pagg->post_title . \'">\';
   $option .= $pagg->post_title;
   $option .= \'</option>\';
   echo $option;
  }
 echo \'</select>\';
提前感谢

3 个回复
最合适的回答,由SO网友:Rutwick Gangurde 整理而成

如果“Partners”是一种自定义帖子类型,那么为什么不使用get_posts? 尝试使用它。。。

$pages = get_posts(array(\'post_type\' => \'partners\', \'posts_per_page\'=> -1, \'post_status\' => \'publish\'));
echo \'<select name="activitymeta_sel" id="activitymeta_sel">\';
echo \'<option value="">Select Partners</option> \';

foreach ( $pages as $page ) {
   $option = \'<option value="\' . $page->post_title . \'">\';
   $option .= $page->post_title;
   $option .= \'</option>\';
   echo $option;
  }
 echo \'</select>\';
试试这个。这应该行得通。

SO网友:sanchothefat

你应该看看$option 在你尝试回音之前。它包含所有帖子数据,包括内容等。。。所以你实际上是想呼出一个没有任何作用的物体。

您可以使用查看$选项变量的内容print_r( $option ); 在foreach循环中。

你会发现你需要回显其中一个属性,例如。$option->post_slug$option->post_title 在您的循环中。

SO网友:Ervald Bardhi

get\\u pages();最近似乎不支持自定义类型的帖子。

使用get\\u posts();相反

结束

相关推荐