2

我试过这段代码:

<select name="productSize" id="productSize">
    <?php
        $metakey = 'size';
        $sizes = $wpdb->get_col($wpdb->prepare("SELECT meta_value FROM $wpdb->postmeta WHERE meta_key = %s ORDER BY meta_value ASC", $metakey) );
        if ($sizes) {
            foreach ($sizes as $size) {
                echo "<option value=\"" . $size . "\">" . $size . "</option>";
            }
        }
    ?>
</select>

但它显示了所有帖子中带有“大小”键的所有值。我只想显示与每个帖子相关联的值。怎么做?

谢谢你,非常感谢你的帮助。

4

1 回答 1

0

如果需要,更改 $post->ID,但默认情况下它将加载当前加载的帖子 ID。

<select name="productSize" id="productSize">
    <?php
        global $post;
        $metakey = 'size';
        $sizes = get_post_meta($post->ID, $metakey, false);
        if (count($sizes) != 0) {
            foreach ($sizes as $size) {
            echo "<option value=\"" . $size . "\">" . $size . "</option>";
            }
        }
    ?>
</select>
于 2013-01-15T11:49:45.260 回答