안녕하세요. 현재 우커머스로 상품 등록하고 사용하고 있는데요~
상점 페이지에 등록된 상품이 전부 나오고 있는데요~
특정 카테고리는 나오지 않았으면 좋겠습니다.
방법이 있을까요?
안녕하세요~^^
우커머스 상점 페이지에서 특정 카테고리를 안 보이게 하는 건
우커머스 공식 문서를 참고해보시겠어요?
https://docs.woocommerce.com/document/exclude-a-category-from-the-shop-page/
코드는 테마의 functions.php 파일에 코드를 추가하거나 Code Snippets 플러그인을 사용해서 추가할 수 있습니다.
고맙습니다.
안녕하세요!
알려주신걸로 해보았습니다만,
현재 YITH Woocommerce Multi Vendor 플러그인을 사용중인데요!
알려주신 코드를 입력하게 되면 Vendor 페이지에 있는 상품까지 사라져버립니다.
혹시 특정페이지에서만 사용되게 할 수 있을까요?
http://moduwith.dothome.co.kr/withstore/
위 링크에서만 작동되게 하고싶습니다.
현재 사용중인 코드입니다.
/**
* Exclude products from a particular category on the shop page
*/
function custom_pre_get_posts_query( $q ) {
$tax_query = (array) $q->get( 'tax_query' );
$tax_query[] = array(
'taxonomy' => 'product_cat',
'field' => 'slug',
'terms' => array( 'clothing' ), // Don't display products in the clothing category on the shop page.
'operator' => 'NOT IN'
);
$q->set( 'tax_query', $tax_query );
}
add_action( 'woocommerce_product_query', 'custom_pre_get_posts_query' );
안녕하세요.
워드프레스 get_the_ID() 함수를 사용하면 페이지 ID 값을 가져올 수 있으며
특정 페이지에서만 실행되는 코드를 작성하실 수 있습니다.
get_the_ID() 함수에 대한 자세한 내용은
아래 링크를 참고해보세요.
https://developer.wordpress.org/reference/functions/get_the_id/
워드프레스에서 페이지 ID를 찾는 방법은 아래 블로그 링크를 확인해주세요.
고맙습니다.
답변감사합니다..
어떻게 사용해야하나요?
page ID를 어디에 삽입해야하는지도 감이 안잡힙니다..
get_the_ID() 함수의 경우 if문으로 체크를 해주시면 가능합니다.
현재 페이지가 상점 페이지인지 체크하시려면 is_shop() 함수를 활용해보시겠어요?
아래의 코드처럼 활용해보세요.
/**
* Exclude products from a particular category on the shop page
*/
function custom_pre_get_posts_query( $q ) {
if(is_shop()){
$tax_query = (array) $q->get( 'tax_query' );
$tax_query[] = array(
'taxonomy' => 'product_cat',
'field' => 'slug',
'terms' => array( 'clothing' ), // Don't display products in the clothing category on the shop page.
'operator' => 'NOT IN'
);
$q->set( 'tax_query', $tax_query );
}
}
add_action( 'woocommerce_product_query', 'custom_pre_get_posts_query' );
고맙습니다.
해결 되었습니다!!
항상 감사드립니다!