php 按类别筛选搜索 - woocommerce产品
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 按类别筛选搜索 - woocommerce产品相关的知识,希望对你有一定的参考价值。
<?php
/**
* Custom search function that allows filtering products by category
*
* @package SystemsSavedMe\Starter
* @since 1.0.0
* @author Krista Rae LLC
* @link https://kristarae.co
* @license GPL
*/
namespace SystemsSavedMe\Starter;
add_shortcode( 'custom_search', __NAMESPACE__ . '\do_custom_search' );
/**
* Description of expected behavior.
*
* @since 1.0.0
*
* @param $atts
*
* @return string
*/
function do_custom_search( $atts ) {
extract(shortcode_atts(array(
'before' => '',
'middle' => '',
'after' => '',
'buttonText' => 'Save me from myself!'
), $atts));
$content = '<div class="custom-search">';
$content .= '<form method="get" action="' . home_url() . '">';
$content .= esc_attr( $before );
$content .= '<select id="product-cat" name="product_cat">';
$content .= get_category_list();
$content .= '</select>';
$content .= esc_attr( $middle );
$content .= '<input id="search-text" type="text" name="s" value="" required="required" />';
$content .= '<button type="submit">' . esc_attr( $buttonText ) . '</button>';
$content .= '<input type="hidden" value="product" name="post_type" />';
$content .= '</form>';
$content .= esc_attr( $after ) . '</div>';
return $content;
}
/**
* Generate a list of product categories
*
* @since 1.0.0
*
* @return void
*/
function get_category_list() {
$categoryList = '<option value=""></option>\n';
$cat_args = array(
'orderby' => 'name',
'order' => 'asc',
'hide_empty' => true,
);
$product_categories = get_terms( 'product_cat', $cat_args );
foreach ( $product_categories as $key => $category ) {
$categoryList .= '<option value="' . $category->slug . '">' . $category->name . "</option>\n";
}
return $categoryList;
}
以上是关于php 按类别筛选搜索 - woocommerce产品的主要内容,如果未能解决你的问题,请参考以下文章
从特定类别获取 WooCommerce 产品
PHP 按帖子类型筛选WordPress搜索结果
相关产品仅限于WooCommerce 3中的标签,而不是类别
使用 WooCommerce 在简码中按产品类别获取产品
Woocommerce 按产品类别对购物车产品进行排序
PHP按类别过滤搜索结果并计数