WooCommerce 최근 본 제품 단축 코드를 만드는 방법
게시 됨: 2021-05-05숏코드를 사용하여 최근에 본 상품을 표시하는 방법을 찾고 계십니까? 이 게시물에서는 WooCommerce 최근 본 제품 단축 코드를 만드는 방법을 보여 드리고자 합니다. 기본적으로 WooCommerce에서는 위젯을 사용하여 고객이 최근에 본 제품 목록을 표시할 수 있습니다.
이 내장 솔루션은 매우 효과적이며 곧 구텐베르그 블록이 될 것이라고 믿습니다.
그러나 새 페이지에 관련 제품을 표시할 수 있습니다. 즉, 단축 코드를 생성해야 합니다.
WooCommerce 최근 본 제품 단축 코드
이 간단한 자습서에서는 최근에 본 제품을 표시하기 위한 간단한 단축 코드를 만드는 방법을 공유합니다. 계속하기 전에 이 솔루션에는 코드 처리가 포함된다는 점에 유의해야 합니다.
코드 처리에 익숙하지 않은 경우 자격을 갖춘 WordPress 개발자에게 문의하여 사이트를 엉망으로 만들지 않는 것이 좋습니다.
또한 업데이트 중에 변경 사항이 손실되지 않도록 자식 테마를 만들어야 합니다.
이를 달성할 수 있는 방법을 살펴보겠습니다.
최근 본 제품 단축 코드를 추가하는 단계
단축 코드를 생성하기 위해 기존 [제품] 단축 코드를 활용하고 바퀴를 재발명할 필요 없이 제품 ID를 "전달"합니다.
또는 테마에 단축 코드를 등록하는 플러그인을 만들 수 있습니다. 가장 쉬운 방법이므로 이 방법을 사용합니다.
플러그인 이름으로 새 폴더를 만들어야 합니다.
최근 제품이 표시되지 않으면 최근에 본 제품 위젯을 활성화해야 하기 때문입니다. "woocommerce_recently_viewed" 쿠키는 최근에 본 상품 위젯을 사용 중일 때만 저장됩니다.
우리에게 필요한 가장 중요한 데이터는 $_COOKIE['woocommerce_recently_viewed']라는 쿠키에 저장됩니다.
원하는 경우 쿠키를 추적/생성하는 고유한 코드를 포함할 수 있습니다.
function custom_track_product_view() { if ( ! is_singular( 'product' ) ) { return; } global $post; if ( empty( $_COOKIE['woocommerce_recently_viewed'] ) ) $viewed_products = array(); else $viewed_products = (array) explode( '|', $_COOKIE['woocommerce_recently_viewed'] ); if ( ! in_array( $post->ID, $viewed_products ) ) { $viewed_products[] = $post->ID; } if ( sizeof( $viewed_products ) > 15 ) { array_shift( $viewed_products ); } // Store for session only wc_setcookie( 'woocommerce_recently_viewed', implode( '|', $viewed_products ) ); } add_action( 'template_redirect', 'custom_track_product_view', 20 );
플러그인의 전체 코드는 다음과 같습니다.
function njengah_woocommerce_recently_viewed_products( $atts, $content = null ) { // Get shortcode parameters extract(shortcode_atts(array( "per_page" => '5' ), $atts)); // Get WooCommerce Global global $woocommerce; // Get recently viewed product cookies data $viewed_products = ! empty( $_COOKIE['woocommerce_recently_viewed'] ) ? (array) explode( '|', $_COOKIE['woocommerce_recently_viewed'] ) : array(); $viewed_products = array_filter( array_map( 'absint', $viewed_products ) ); // If no data, quit if ( empty( $viewed_products ) ) return __( 'You have not viewed any product yet!', 'rc_wc_rvp' ); // Create the object ob_start(); // Get products per page if( !isset( $per_page ) ? $number = 5 : $number = $per_page ) // Create query arguments array $query_args = array( 'posts_per_page' => $number, 'no_found_rows' => 1, 'post_status' => 'publish', 'post_type' => 'product', 'post__in' => $viewed_products, 'orderby' => 'rand' ); // Add meta_query to query args $query_args['meta_query'] = array(); // Check products stock status $query_args['meta_query'][] = $woocommerce->query->stock_status_meta_query(); // Create a new query $r = new WP_Query($query_args); // If query return results if ( $r->have_posts() ) { $content = '<ul class="rc_wc_rvp_product_list_widget">'; // Start the loop while ( $r->have_posts()) { $r->the_post(); global $product; $content .= '<li> <a href="' . get_permalink() . '"> ' . ( has_post_thumbnail() ? get_the_post_thumbnail( $r->post->ID, 'shop_thumbnail' ) : woocommerce_placeholder_img( 'shop_thumbnail' ) ) . ' ' . get_the_title() . ' </a> ' . $product->get_price_html() . ' </li>'; } $content .= '</ul>'; } // Get clean object $content .= ob_get_clean(); // Return whole content return $content; } // Register the shortcode add_shortcode("woocommerce_recently_viewed_products", "njengah_woocommerce_recently_viewed_products");
코드를 추가한 후 아무 페이지에나 [woocommerce_recently_viewed_products per_page=”5″]를 추가하세요.
결과는 다음과 같습니다.
결론
이 간단한 자습서에서는 단축 코드를 사용하여 최근에 본 제품을 표시하는 방법을 공유했습니다.
functions.php 파일을 편집할 때 주의해야 합니다. 실수를 하면 치명적인 오류가 표시되기 때문입니다.
유사한 기사
- 100개 이상의 팁, 트릭 및 스니펫 Ultimate WooCommerce Hide Guide
- 예제와 함께 페이지 또는 게시물에서 WordPress 단축 코드를 사용하는 방법
- WooCommerce에서 내 계정 페이지를 만드는 방법
- WooCommerce 로그인 로그아웃 단축 코드를 만드는 방법
- 제품 가져오기 방법 WooCommerce
- kg당 WooCommerce 제품 가격을 설정하는 방법
- 프로그래밍 방식으로 제품을 만드는 방법 WooCommerce
- WooCommerce 비밀 제품을 만드는 방법
- 로그인 후 WooCommerce를 만드는 방법 홈페이지로 리디렉션
- 제품 ID별로 WooCommerce 장바구니에 추가 버튼을 만드는 방법
- 프로그래밍 방식으로 주문을 생성하는 방법 WooCommerce
- WooCommerce 내 계정 페이지 리디렉션을 추가하는 방법
- WooCommerce에서 제품을 내보내는 방법
- WooCommerce에서 제품 SKU를 추가하는 방법
- WooCommerce에서 제품을 복제하는 방법
- WordPress(PHP)에서 do_shortcode를 사용하는 방법
- WooCommerce 사용자 정의 상점 페이지를 만드는 방법
- WooCommerce에서 결제 후 주문 세부 정보를 얻는 방법
- WooCommerce에서 속성에 가격을 추가하는 방법
- WooCommerce에서 최소 지출로 무료 배송을 설정하는 방법