programing

WooCommerce의 추가 정보 탭에서 제품 특성 숨기기

newsource 2023. 3. 11. 09:01

WooCommerce의 추가 정보 탭에서 제품 특성 숨기기

단일 제품 페이지에서 특정 사용자 지정 제품 속성을 숨기려면 어떻게 해야 합니까?

주의: 모든 것을 숨기고 싶지 않습니다.특정 속성만 있으면 됩니다.

예를 들어 숨기고 싶은 경우"pa_size"이름만 대면.

이것만 찾았는데, 무게에 맞는 제품이에요.

add_filter( 'woocommerce_product_get_weight' , '__return_false' );

모든 커스텀 제품 속성에 대해 제품 설정 > 속성 탭에서 "제품 페이지에 표시됨" 옵션을 선택 취소하기만 하면 추가 정보 탭에서 숨길 수 있습니다.

여기에 이미지 설명 입력

1) 제품 치수를 제거하려면 다음 코드를 사용하여 치수를 비활성화하십시오.

add_filter( 'woocommerce_product_get_dimensions', '__return_false' );

2) 탭에서 모든 항목(중량, 치수 및 커스텀 속성)을 삭제하려면 다음을 사용합니다.

remove_action( 'woocommerce_product_additional_information', 'wc_display_product_attributes', 10 );

3) 표시할 내용을 미세 조정하려면:

덮어쓸 수 있습니다.single-product/product-attributes.php이 제품 탭의 모든 내용을 표시하는 활성 하위 테마(또는 활성 테마)를 통해 템플릿을 생성할 수 있습니다.

따라서 이러한 상세 내용을 표시하는 HTML 블록을 삭제하거나 커스터마이즈할 수 있습니다.


공식 문서:템플릿 구조 및 테마를 통한 템플릿 덮어쓰기

같은/비슷한 문제에 대한 답변을 찾고 있었는데, 추가 정보 탭을 삭제하고 싶었습니다.woocommerce_product_tabs 필터를 사용하여 이 게시물을 발견했습니다.

나는 그것을 함수에 추가했습니다.php 및 추가 정보 탭은 더 이상 페이지에 추가되지 않습니다.

사용방법functions.php배송에 문제가 있을 수 있습니다.https://github.com/woocommerce/woocommerce/issues/5985#issuecomment-322541850 를 참조해 주세요.

복사만 하면wp-content/plugins/woocommerce/templates/single-product/product-attributes.php로.wp-content/themes/YOUR_CHILD_THEME/woocommerce/single-product/product-attributes.php를 추가합니다.ifAtribut을 클릭합니다.(#3에서 Loic Theaztec이 언급한 바와 같이)

이것은 WooCommerce 4.4.1의 내용입니다.

<?php
/**
 * Product attributes
 *
 * Used by list_attributes() in the products class.
 *
 * This template can be overridden by copying it to yourtheme/woocommerce/single-product/product-attributes.php.
 *
 * HOWEVER, on occasion WooCommerce will need to update template files and you
 * (the theme developer) will need to copy the new files to your theme to
 * maintain compatibility. We try to do this as little as possible, but it does
 * happen. When this occurs the version of the template file will be bumped and
 * the readme will list any important changes.
 *
 * @see https://docs.woocommerce.com/document/template-structure/
 * @package WooCommerce/Templates
 * @version 3.6.0
 */

defined( 'ABSPATH' ) || exit;

if ( ! $product_attributes ) {
    return;
}
?>
<table class="woocommerce-product-attributes shop_attributes">
    <?php foreach ( $product_attributes as $product_attribute_key => $product_attribute ) : ?>
        <?php // Hide weight attribute in frontend ?>
        <?php if ( esc_attr( $product_attribute_key ) !== 'weight' ): ?>
            <tr class="woocommerce-product-attributes-item woocommerce-product-attributes-item--<?php echo esc_attr( $product_attribute_key ); ?>">
                <th class="woocommerce-product-attributes-item__label"><?php echo wp_kses_post( $product_attribute['label'] ); ?></th>
                <td class="woocommerce-product-attributes-item__value"><?php echo wp_kses_post( $product_attribute['value'] ); ?></td>
            </tr>
        <?php endif; ?>
    <?php endforeach; ?>
</table>

언급URL : https://stackoverflow.com/questions/47960405/hide-product-attributes-from-additional-information-tab-in-woocommerce