0

製品検索フォームを変更して、デフォルトのテキストボックスの代わりに 3 つの「選択フィールド」を含めようとしています。選択したオプションに基づいて (オプションは、すべての製品に追加したカスタム属性から入力されます)、検索により関連する製品が返されます。以下は、デフォルトの検索を上書きするために mystile テーマ フォルダーに配置した "product-searchform.php" のコードです。特定の投稿ではなく、すべての投稿(製品)を取得します。どこかで私の検索がうまくいかないのです。また、get_search_query() 関数のコードはどこにありますか?

<form role="search" method="get" id="searchform" action="<?php echo esc_url( home_url( '/'  ) ); ?>">
<div>
            <!-- Default Markup
            <label class="screen-reader-text" for="s"><?php _e( 'Search for:', 'woocommerce' ); ?></label>
            <input type="text" value="<?php echo get_search_query(); ?>" name="s" id="s" placeholder="<?php _e( 'Search for products', 'woocommerce' ); ?>" />
            <input type="submit" id="searchsubmit" value="<?php echo esc_attr__( 'Search' ); ?>" />
            <input type="hidden" name="post_type" value="product" />
            */-->
<?php 
$terms = get_terms("pa_country");
$count = count($terms);
if($count > 0){
    echo '<select class="select" id="destination" tabindex="11" name="destination">';
    echo '<option value="Destination">--Destination--</option>';
    foreach($terms as $term ){
        echo '<option value="' . $term->name . '">' . $term->name . '</option>';
    }
    echo '</select>';
}

$terms = get_terms("pa_days");
$count = count($terms);
if($count > 0){
    echo '<select class="select" id="days" tabindex="11" name="days">';
    echo '<option value="Days">--Days--</option>';
    foreach($terms as $term ){
        echo '<option value="' . $term->name . '">' . $term->name . '</option>';
    }
    echo '</select>';
}

$terms = get_terms("pa_budget");
$count = count($terms);
if($count > 0){
    echo '<select class="select" id="budget" tabindex="11" name="budget">';
    echo '<option value="Budget">--Budget--</option>';
    foreach($terms as $term ){
        echo '<option value="' . $term->name . '">' . $term->name . '</option>';
    }
    echo '</select>';
}
?>
<input type="submit" id="searchsubmit" value="<?php echo esc_attr__( 'Search' ); ?>" />
<input type="hidden" name="post_type" value="product" />
</div>

4

1 に答える 1