- , ? . .
$amenity_array = array();
$id = get_query_var('site');
global $imic_options;
if (isset($imic_options['properties_amenities']) && count($imic_options['properties_amenities']) > 1) {
foreach ($imic_options['properties_amenities'] as $properties_amenities) {
$am_name = strtolower(str_replace(' ', '', $properties_amenities));
$check = '';
if (in_array($properties_amenities, $amenity_array)) {
$check = 'checked="checked"';
}
, , .
if (isset($_GET['p_am'])) {
$ams = $_GET['p_am'];
echo '<div class="checkbox"><input type="checkbox" name="p_am" ' . $check . ' class="styled" value ="' . $properties_amenities . '"><label for="' . $am_name . '">' . $properties_amenities . '</label></div>';
} else {
echo '<div class="checkbox"><input type="checkbox" name="p_am" ' . $check . ' class="styled" value ="' . $properties_amenities . '"><label for="' . $am_name . '">' . $properties_amenities . '</label></div>';
}
, ("p_am") , ($am_name) - , , (, "p_am[$am_name]").
$check, $_GET.
$ams = $_GET['p_am'];
if (isset($ams[$am_name])) {
$check = 'checked';
}
name="p_am['.$am_name.']" .
echo '<div class="checkbox"><input type="checkbox" name="p_am[' . $am_name . ']" ' . $check . ' class="styled" value ="' . $properties_amenities . '"><label for="' . $am_name . '">' . $properties_amenities . '</label></div>';
, ( , p_am ) PHP, amenity ($am_name), :
if (isset($_GET[$am_name])) {
$check = 'checked';
}
name="'.$am_name.'" .
UPDATE: OP, , , . p_am[] ( ), - in_array() isset(), , :
if (in_array($properties_amenities, $_GET['p_am'])) {
$check = 'checked';
}
: $am_name , id , , id (, ) .
echo '<div class="checkbox"><input type="checkbox" name="' . $am_name . '" ' . $check . ' class="styled" value ="' . $properties_amenities . '"><label for="' . $am_name . '">' . $properties_amenities . '</label></div>';
, :
<select name="property_type[]" id="pt-multi" class="form-control multi-select2" multiple="multiple">
<?php
$terms = get_terms( "property-type", array( 'hide_empty' => 0 ) );
$count = count($terms);
if ( $count > 0 ){
echo "<option value='Any'>All</option>";
foreach ( $terms as $term ) {
echo "<option value='" . $term->slug . "'>" . $term->name . "</option>";
}
}
?>
</select>
, :
$types = $_GET['property_type'];
$selected = isset($types[$term->slug]) ? 'selected' : '';
echo "<option value='" . $term->slug . "'" . $selected . ">" . $term->name . "</option>";
bootstrap, , 'selected="selected" data-selected="true", . .
<select> ( ), [] :
<select name="property_type" id="pt-multi" class="form-control multi-select2">
<?php
$terms = get_terms( "property-type", array( 'hide_empty' => 0 ) );
$count = count($terms);
if ( $count > 0 ){
echo "<option value='Any'>All</option>";
foreach ( $terms as $term ) {
$type = $_GET['property_type'];
$selected = isset($type) && $type == $term-slug ? 'selected' : '';
echo "<option value='" . $term->slug . "'" . $selected . ">" . $term->name . "</option>";
}
}
?>
</select>
HTML <select> - , , <option> , , , "" <select>.
2: , , , LIKE . Meta Query WordPress:
: "IN", "NOT IN", "BETWEEN" "NOT BETWEEN".
, . , , , , - :
if (!empty($amenities)) {
foreach ($amenities as $amenity) {
array_push($meta_query, array(
'key' => 'imic_property_amenities',
'value' => $amenity,
'compare' => 'LIKE'
));
}
}
, , relation => 'OR' relation => 'AND', , , .