add_filter( 'woocommerce_product_query_meta_query', 'show_only_products_with_specific_metakey', 10, 2 ); function show_only_products_with_specific_metakey( $meta_query, $query ) { global $wp ; if($wp->query_vars['pagename'] && $wp->query_vars['pagename'] === "my-account"){ $meta_query[] = array( 'key' => 'author_id', 'value' => wp_get_current_user()->ID, 'compare' => 'IN' ); // deb($meta_query);exit(); return $meta_query; }else{ if($_POST['submitProductSearch']){ if($_POST['prodcat'] && $_POST['prodcat'] != ""){ $meta_query[] = array( 'key' => 'prodcat', 'value' => $_POST['prodcat'], 'compare' => 'IN' ); } if($_POST['prodcon'] && $_POST['prodcon'] != ""){ $meta_query[] = array( 'key' => 'prodcon', 'value' => $_POST['prodcon'], 'compare' => 'IN' ); } if($_POST['prodrat'] && $_POST['prodrat'] != ""){ $meta_query[] = array( 'key' => 'prodrat', 'value' => $_POST['prodrat'], 'compare' => 'IN' ); } // deb($meta_query);exit(); return $meta_query; } return $meta_query; } } add_action('woocommerce_archive_description', 'book_woocommerce_before_main_content', 10 ); function book_woocommerce_before_main_content(){ ?> <form action="" method="post" enctype="multipart/form-data"> <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-first"> <label for="prodcat">Search Product Category</label> <select name="prodcat" id="prodcat"> <option value="">Select</option> <option value="JPG" <?php echo isset($_POST['prodcat']) && $_POST['prodcat'] == "JPG" ? "selected" : "" ; ?>>JPG</option> <option value="JKA" <?php echo isset($_POST['prodcat']) && $_POST['prodcat'] == "JKA" ? "selected" : "" ; ?>>JKA</option> <option value="JKE" <?php echo isset($_POST['prodcat']) && $_POST['prodcat'] == "JKE" ? "selected" : "" ; ?>>JKE</option> <option value="JKM" <?php echo isset($_POST['prodcat']) && $_POST['prodcat'] == "JKM" ? "selected" : "" ; ?>>JKM</option> </select> </p> <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-last"> <label for="prodcon">Product Condition</label> <select name="prodcon" id="prodcon"> <option value="">Select</option> <option value="Unused" <?php echo isset($_POST['prodcon']) && $_POST['prodcon'] == "Unused" ? "selected" : "" ; ?>>Unused</option> <option value="Used" <?php echo isset($_POST['prodcon']) && $_POST['prodcon'] == "Used" ? "selected" : "" ; ?>>Used</option> </select> <br> </p> <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-first"> <label for="prodrat">Product Rating</label> <select name="prodrat" id="prodrat"> <option value="">Select</option> <option value="S" <?php echo isset($_POST['prodrat']) && $_POST['prodrat'] == "S" ? "selected" : "" ; ?>>S</option> <option value="A" <?php echo isset($_POST['prodrat']) && $_POST['prodrat'] == "A" ? "selected" : "" ; ?>>A</option> <option value="B" <?php echo isset($_POST['prodrat']) && $_POST['prodrat'] == "B" ? "selected" : "" ; ?>>B</option> <option value="C" <?php echo isset($_POST['prodrat']) && $_POST['prodrat'] == "C" ? "selected" : "" ; ?>>C</option> <option value="D" <?php echo isset($_POST['prodrat']) && $_POST['prodrat'] == "D" ? "selected" : "" ; ?>>D</option> <option value="E" <?php echo isset($_POST['prodrat']) && $_POST['prodrat'] == "E" ? "selected" : "" ; ?>>E</option> <option value="F" <?php echo isset($_POST['prodrat']) && $_POST['prodrat'] == "F" ? "selected" : "" ; ?>>F</option> </select> <br> <input type="submit" name="submitProductSearch" value="Search" /> </p> <br><br><br><br> </form> <br><br><br><br><br><br><br> <?php }