【发布时间】:2022-01-11 18:13:01
【问题描述】:
我的以下 SQL 代码效果不佳,因为当我尝试按产品类别过滤时,它显示空记录:
SQL 代码:
SELECT
wp_posts.ID,
CONCAT( '<a href="', wp_posts.guid, '">', wp_posts.post_title, '</a>' ) AS nazwa,
product_taxonomy_product_cat_tbl.NAME AS kategoria,
product_taxonomy_pa_j_m_tbl.NAME AS jednostka,
product_quant.meta_value AS ilość,
product_price.meta_value AS cena,
product_weight.meta_value AS waga,
product_sku.meta_value AS sku
FROM
wp_posts
LEFT JOIN wp_postmeta product_quant ON product_quant.post_id = wp_posts.ID
AND product_quant.meta_key = "_stock"
LEFT JOIN wp_postmeta product_price ON product_price.post_id = wp_posts.ID
AND product_price.meta_key = "_price"
LEFT JOIN wp_postmeta product_weight ON product_weight.post_id = wp_posts.ID
AND product_weight.meta_key = "_weight"
LEFT JOIN wp_postmeta product_sku ON product_sku.post_id = wp_posts.ID
AND product_sku.meta_key = "_sku"
INNER JOIN (
SELECT NAME
,
object_id AS id
FROM
wp_terms AS product_taxonomy_product_cat_tbl_terms
INNER JOIN wp_term_taxonomy AS product_taxonomy_product_cat_tbl_termtaxonomy ON product_taxonomy_product_cat_tbl_termtaxonomy.term_id = product_taxonomy_product_cat_tbl_terms.term_id
AND product_taxonomy_product_cat_tbl_termtaxonomy.taxonomy = 'product_cat'
INNER JOIN wp_term_relationships AS rel_product_taxonomy_product_cat_tbl ON product_taxonomy_product_cat_tbl_termtaxonomy.term_taxonomy_id = rel_product_taxonomy_product_cat_tbl.term_taxonomy_id
) AS product_taxonomy_product_cat_tbl ON product_taxonomy_product_cat_tbl.ID = wp_posts.id
INNER JOIN (
SELECT NAME
,
object_id AS id
FROM
wp_terms AS product_taxonomy_pa_j_m_tbl_terms
INNER JOIN wp_term_taxonomy AS product_taxonomy_pa_j_m_tbl_termtaxonomy ON product_taxonomy_pa_j_m_tbl_termtaxonomy.term_id = product_taxonomy_pa_j_m_tbl_terms.term_id
AND product_taxonomy_pa_j_m_tbl_termtaxonomy.taxonomy = 'pa_j-m'
INNER JOIN wp_term_relationships AS rel_product_taxonomy_pa_j_m_tbl ON product_taxonomy_pa_j_m_tbl_termtaxonomy.term_taxonomy_id = rel_product_taxonomy_pa_j_m_tbl.term_taxonomy_id
) AS product_taxonomy_pa_j_m_tbl ON product_taxonomy_pa_j_m_tbl.ID = wp_posts.id
WHERE
1 = 1
AND wp_posts.post_type = 'product'
如何改进代码以便按产品类别进行过滤?
代码的操作见网站https://server515851.nazwa.pl/wordpress/wpn_hutniczy/o-magazynie/
这个想法是按页面左侧树中的类别进行过滤。
【问题讨论】:
-
问题:为什么要直接查询数据库而不是使用WP_Query类?
-
我是初学者我要WP_Query代码
-
好的,请检查下面的答案,如果它有助于考虑marking it as accepted。
标签: mysql sql wordpress woocommerce