如何在选项标签中获取帖子ID

时间:2012-05-25 作者:Solomon Henry

$term_id .= $_POST[\'main_brand_id\'];
        $term = get_term( $term_id, \'state\' );
        $slug = $term->slug;
        global $post;
        $args = array( \'post_type\' =>\'dealers\',\'taxonomy\'=>\'state\', \'term\' => $slug );
        $myposts = get_posts( $args );
        foreach( $myposts as $post ) :  setup_postdata($post);
            echo \'<option>\';
                $options .= \'<option value="\'.$post->id.\'">\';
                $options .=  the_title();
            echo \'</option>\';
        endforeach;
我必须通过考试post id 获得如下输出

<option value="24">Andhra Pradesh</option>
<option value="29">Bangalore</option>
<option value="44">Delhi</option>
这段代码不起作用。。。。。。。。

$options .= \'<option value="\'.$post->id.\'">\';
这是我得到的输出

<option>Andhra Pradesh</option>
<option>Bangalore</option>
<option>Delhi</option>
谁能帮帮我。。。。

2 个回复
最合适的回答,由SO网友:Chris_O 整理而成

$post->id 需要是$post->ID

您还可以使用get_the_ID()

自从你打电话以来setup_postdata() 你需要打电话wp_reset_postdata() 在foreach循环之后。

您还需要在某个地方反映美元期权的价值。

foreach( $myposts as $post ) :  setup_postdata($post);
                $options .= \'<option>\';
                $options .= \'<option value="\'.$post->id.\'">\';
                $options .=  get_the_title();
                $options .= \'</option>\';
                    echo $options;
        endforeach;

SO网友:Solomon Henry

我确实喜欢这个chris。。。。。。。。。

foreach( $myposts as $post ) :  setup_postdata($post);
        echo \'<option value="\'.$post->id.\'">\';
            $options .=  the_title();
        echo \'</option>\';
    endforeach;
很好,非常感谢Chris对我们的帮助。。。。。。。。。。。。

结束

相关推荐

多站点插件-子站点上的访问选项(Wp_Options)

有什么方法可以访问wp_options 所有子站点的表?我想创建一个可以在网络级别设置的多站点插件,并用默认值填充子站点插件,然后每个站点都可以覆盖这些插件。我知道我可以从wp_sitemeta 这样,但在我的例子中,如果我可以访问其他“本地”表,那就有意义了。我可能可以使用WP query函数编写自定义查询,但我想知道是否有更好的方法?