根据URL重新排列select中的选项

时间:2018-01-23 08:27:24

标签: php

这是抓取位置并将它们弹出到选择列表中的功能。

function get_hourly_locations_list($class ='', $name = '', $option = 'Select Option') {
    $terms = get_terms( 'location', 'orderby=ID&hide_empty=0' );
    if ( ! empty( $terms ) && ! is_wp_error( $terms ) ){
        echo '<select class="' . $class . ' req" id="' . $name . '" name="' . $name . '" style="width:100%;">';
        echo '<option value="0">' . $option . '</option>';
        foreach ( $terms as $term ) {

            if (get_term_meta($term->term_id,'fcb_can_hourly',true) == 'on') {

                echo '<option value="' . $term->term_id . '">' . $term->name . '</option>';

            }

        }
        echo '</select>';
    }

}

例如,每小时类型都有自己的值。等

<option value="3">bangkok hotels and areas</option>
<option value="65">Pattaya hotels and areas</option>    

我试图在<?php if (is_page(478)) { would be a pattaya page... }的行上使用某些内容,然后只显示65的值(作为pattaya选项)或将值65作为select中的第一选择。

EDIT。

我决定通过从数据库中查询来获取这些特定目标值,这样只允许获取在这种情况下仅需要的ID。

function get_locations_list_pattaya_start($class ='', $name = '', $option = 'Select Option',$extra=null) {
    global  $wpdb;
    $bookings = $wpdb->get_results("select term_id, name from wp_terms");
    echo '<select '.$extra.' class="' . $class . ' req" id="' . $name . '" name="' . $name . '" style="width:100%;">';
        echo '<option value="' . $bookings[1]->term_id . '">' . $bookings[1]->name . '</option>';
        echo '<option value="' . $bookings[64]->term_id . '">' . $bookings[64]->name . '</option>';
        echo '<option value="' . $bookings[2]->term_id . '">' . $bookings[2]->name . '</option>';
        echo '<option value="' . $bookings[3]->term_id . '">' . $bookings[3]->name . '</option>';
        echo '<option value="' . $bookings[71]->term_id . '">' . $bookings[71]->name . '</option>';
    echo '</select>';
}

1 个答案:

答案 0 :(得分:0)

如果您想要选择它,您可以这样做:

echo '<option value="'.$term->term_id.'"'.(is_page($term->term_id) ? ' selected' : '').'>'.$term->name.'</option>';

这样如果值匹配,则默认选择