찾다
CMS 튜토리얼Word누르다우연한 작업 및 필터는 카트를 조작합니다

우연한 작업 및 필터는 카트를 조작합니다 Woocommerce 동작 및 필터 마스터링에 관한 시리즈의 두 번째 기사에 오신 것을 환영합니다. 이전 기사에서는 매우 기본적 이었지만 고객의 청구 및 배송 주소를 처리하는 것뿐만 아니라 고객이 WooCommerce를 통해 등록 할 때 발생하는 일이 발생하여 Salesforce와 같은 타사 웹 사이트로 보냅니다.

이 두 번째 기사에서는 Woocommerce를 사용하여 전자 상거래 웹 사이트를 작성하는 동안 발생할 수있는 실제 시나리오를 사용하여 몇 가지 영리한 방법으로 카트를 조작합니다. 키 테이크 아웃

이 기사는 프로그램 및 필터를 프로그래밍 방식으로 추가 및 제거하고 카트를 비우고 인센티브 제품 시스템 설정을 포함하여 작업 및 필터를 사용하여 Woocommerce 카트를 조작하는 방법에 대한 자세한 지침을 제공합니다.

. 카트에 제품을 프로그래밍 방식으로 추가하면 한 줄의 코드 만 있으면되지만 Template_Redirect 작업과 같이 모든 페이지에서 실행되는 작업 에서이 작업을 실행하지 않는 것이 중요합니다. 카트에서 제품을 제거하는 것은 프로그래밍 방식으로 제품을 추가하는 것보다 더 복잡합니다. 제공된 코드는 카트에서 각 제품을 순환하고 지정된 제품을 제거합니다.

이 기사는 woocommerce_proceed_to_checkout 동작을 사용하여 카트를 프로그래밍 방식으로 비우는 버튼을 만드는 방법을 보여줍니다. 이 기사는 인센티브 제품 시스템을 구축하는 실제 시나리오를 제공합니다. 인센티브 제품 시스템을 구축하는 시나리오는 특정 범주의 주문 또는 제품의 최소 금액을 갖는 등 특정 요구 사항을 충족하는 고객에게 제품이 제공됩니다.

카트에 제품을 프로그램 적으로 추가하는 카트에 제품을 추가하면 프로그래밍 방식으로 한 줄의 코드 만 필요합니다. 당신이 할 유일한 브레인 스토밍은 언제 또는 왜 그렇게하고 싶은지 결정하는 것입니다. 우리는 실제 세계 시나리오에서 작업 할 때이 기사의 세 번째 부분에서 이것에 대해 더 많이 이야기 할 것입니다. 카트에 제품을 추가하는 데 필요한 모든 것이 다음과 같습니다. 주의 사항에 따라 Template_Redirect 작업과 같이 모든 페이지에서 실행되는 작업에서 실행하지 마십시오. 그렇지 않으면 모든 페이지로드 또는 다시로드마다 이러한 제품 중 하나를 카트에 추가 할 수 있습니다. 가능할 때 마다이 작업을 피하십시오 :
    <span><span><?php </span></span><span><span>// Takes the Product ID and the Quantity
    </span></span><span><span>WC()->cart->add_to_cart( 73, 1 );</span></span></span>
    카트에서 제품을 프로그래밍 방식으로 제거하는 나는이 질문에 답이 거의없는 다양한 포럼과 웹 사이트에서 무한한 횟수를 묻는 것을 보았습니다. 다음에 카트에서 제품을 제거하고 싶을 때 도움이되기를 바랍니다. 다음 코드는 누구나 상점에서 제품을 체크 아웃하지 못하게합니다. 왜 그런 일을하고 싶은지 모르겠지만 카트에서 제품을 카트에 추가했을 때 이전 예제만큼 간단하지 않은 카트에서 제품을 제거하기위한 단계를 보여줍니다. 카트를 프로그래밍 방식으로 비우십시오 카트를 프로그래밍 방식으로 비우는 방법을 더 잘 설명하려면 카트에 버튼을 추가하여 고객이 클릭하고 카트를 제거 할 수 있도록하겠습니다.

    woocommerce_proceed_to_checkout 동작을 사용하여 현재 고객의 카트를 지울 수있는 우리 자신의 '제출'버튼을 사용해 보겠습니다.

    다음 단계는 버튼을 클릭하여 클릭하면 카트를 지우도록하는 것입니다. 이를 위해, 우리는 template_redirect action에 연결할 것입니다.
    <span><span><?php </span></span><span><span>// template_redirect runs once for every page so you'll be
    </span></span><span><span>// increasing the quantity by one on every page load
    </span></span><span><span>add_action( 'template_redirect', 'add_random_product' );
    </span></span><span><span>function add_random_product() {
    </span></span><span>    <span>WC()->cart->add_to_cart( 73, 1 );
    </span></span><span><span>}</span></span></span>

    이제 버튼을 누른 후 Cart-empty.php가 일반 템플릿 대신 표시됩니다.

    이제 카트에서 제품을 추가하거나 제거하는 방법을 확립 했으므로 카트를 완전히 비우도 심지어 이런 종류의 물건을 아는 큰 차이가있는 실제 시나리오를 구축하는 것으로 넘어갑니다.

    . 인센티브 제품

    실제 시나리오에서는 모든 고객에게 인센티브로 제품을 제공 할 수있는 시스템을 구축 하여이 모든 것이 작동하도록합니다. 글쎄, 모든 고객에게는 정확히가 아니라 특정 요구 사항에 따라 자격을 갖춘 고객만이. 우연한 작업 및 필터는 카트를 조작합니다 문제 우리는 고객에게 인센티브로 선택한 제품을 제공 할 수 있어야합니다.

    솔루션 다음을 기반으로 인센티브 제품을 제공 할 수있는 시스템을 구축하십시오.
    <span><span><?php </span></span><span><span>add_action( 'template_redirect', 'remove_product_from_cart' );
    </span></span><span><span>function remove_product_from_cart() {
    </span></span><span>    <span>// Run only in the Cart or Checkout Page
    </span></span><span>    <span>if( is_cart() || is_checkout() ) {
    </span></span><span>        <span>// Set the product ID to remove
    </span></span><span>        <span>$prod_to_remove = 56;
    </span></span><span>
    </span><span>        <span>// Cycle through each product in the cart
    </span></span><span>        <span>foreach( WC()->cart->cart_contents as $prod_in_cart ) {
    </span></span><span>            <span>// Get the Variation or Product ID
    </span></span><span>            <span>$prod_id = ( isset( $prod_in_cart['variation_id'] ) && $prod_in_cart['variation_id'] != 0 ) ? $prod_in_cart['variation_id'] : $prod_in_cart['product_id'];
    </span></span><span>
    </span><span>            <span>// Check to see if IDs match
    </span></span><span>            <span>if( $prod_to_remove == $prod_id ) {
    </span></span><span>                <span>// Get it's unique ID within the Cart
    </span></span><span>                <span>$prod_unique_id = WC()->cart->generate_cart_id( $prod_id );
    </span></span><span>                <span>// Remove it from the cart by un-setting it
    </span></span><span>                <span>unset( WC()->cart->cart_contents[$prod_unique_id] );
    </span></span><span>            <span>}
    </span></span><span>        <span>}
    </span></span><span>
    </span><span>    <span>}
    </span></span><span><span>}</span></span></span>

    카트에 특정 제품이있는

    <span><span><?php </span></span><span><span>add_action( 'woocommerce_proceed_to_checkout', 'insert_empty_cart_button' );
    </span></span><span><span>function insert_empty_cart_button() {
    </span></span><span>    <span>// Echo our Empty Cart button
    </span></span><span>    <span>echo '<input type="submit" name="empty_cart" value="Empty Cart">';
    </span></span><span><span>}</span></span></span>
    주문에 대한 최소 총 금액

    카트에서 최소 무게를 갖는 우연한 작업 및 필터는 카트를 조작합니다

    특정 카테고리에서 제품을 갖는

    우리는 이것을 올바른 방법으로 구축 할 것이기 때문에, 당신은 이러한 기준 중 하나에 자격을 갖춘 고객을위한 제품을 줄 수있을뿐만 아니라, 이것들을 혼합하고 실제로 좁을 수도 있습니다. 누가 제품을 얻고 그렇지 않은 사람.

    당신은 그러한 기준 중 하나에 자격을 갖추면 고객에게 인센티브 제품을 제공 할 수있을뿐만 아니라 그들을 결합 할 수있는 힘을 가질 것입니다. 예를 들어, 순서대로 카트에 총 100 달러 이상이 있고 '의류'카테고리의 제품을 테스트 할 수 있습니다.
    우리가 1 분 안에 쓸 기능과 문제/솔루션 시나리오에서 무엇을하는지 간단히 살펴 보자.

    get_id_from_product ($ product, $ check_variations = true) - 제품 ID를 가져 와서 반환합니다. 변형 ID를 고려하여 실제 제품 ID를 확인하기 전에이를 확인합니다. Qualifies_basedon_specific_product ($ product_required) - 지정된 제품 ID를 카트의 항목 중 하나로 사용하여 인센티브에 대한 자격이 있는지 확인하십시오. Qualifies_basedon_weight ($ weight_required) - 카트에 최소 무게를 가짐으로써 고객이 인센티브에 대한 자격을 갖추는 지 여부를 확인합니다. Qualifies_basedon_cart_total ($ total_required) - 세금이 계산되기 전에 최소 총 금액을 가질 때 인센티브에 대한 자격이 있는지 여부를 확인합니다.

    Qualifies_basedon_product_category ($ category) - 카트에 특정 카테고리에서 제품을 보유하여 인센티브에 대한 자격이 있는지 여부를 확인합니다. add_incentive_to_cart ($ product_id) - 고객이 자격을 갖춘 경우 인센티브 제품을 카트에 추가합니다

    . remove_incentive_from_cart ($ product_id) - 고객이 제품에 대한 자격을 갖추지 못하면 인센티브 제품을 카트로 제거합니다. Qualifies_for_incentive () - 고객이 인센티브 자격을 갖추기 위해 일치 해야하는 규칙을 갖기 때문에 마술이 일어날 곳입니다. 이 기능은 인센티브 프로그램의 논리를 처리합니다.

    위 내용은 우연한 작업 및 필터는 카트를 조작합니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    WordPress는 전자 상거래에 적합합니까?WordPress는 전자 상거래에 적합합니까?May 13, 2025 am 12:05 AM

    예, WordPress는 전자 상거래에 매우 적합합니다. 1) WooCommerce 플러그인을 사용하면 WordPress는 완전히 기능적인 온라인 상점이 될 수 있습니다. 2) 성능 최적화 및 보안에주의를 기울이십시오. 캐시 및 보안 플러그인의 정기적 인 업데이트 및 사용이 핵심입니다. 3) WordPress는 사용자 경험을 향상시키고 SEO를 크게 최적화하기위한 풍부한 사용자 정의 옵션을 제공합니다.

    Yandex 웹 마스터 도구에서 WordPress 사이트를 추가하는 방법Yandex 웹 마스터 도구에서 WordPress 사이트를 추가하는 방법May 12, 2025 pm 09:06 PM

    웹 사이트를 Yandex Webmaster 도구에 연결 하시겠습니까? Google Search Console, Bing 및 Yandex와 같은 웹 마스터 도구를 사용하면 웹 사이트를 최적화하고 트래픽을 모니터링하고 Robots.txt를 관리하고 웹 사이트 오류 확인 등을 확인할 수 있습니다. 이 기사에서는 WordPress 웹 사이트를 Yandex 웹 마스터 도구에 추가하여 검색 엔진 트래픽을 모니터링하는 방법을 공유합니다. Yandex는 무엇입니까? Yandex는 Google 및 Bing과 유사한 러시아에 기반을 둔 인기있는 검색 엔진입니다. Yandex에서 탁월 할 수 있습니다

    WordPress에서 HTTP 이미지 업로드 오류를 수정하는 방법 (간단함)WordPress에서 HTTP 이미지 업로드 오류를 수정하는 방법 (간단함)May 12, 2025 pm 09:03 PM

    WordPress에서 HTTP 이미지 업로드 오류를 수정해야합니까? 이 오류는 WordPress에서 컨텐츠를 만들 때 특히 실망 스러울 수 있습니다. 일반적으로 내장 된 WordPress 미디어 라이브러리를 사용하여 이미지 또는 기타 파일을 CMS에 업로드 할 때 발생합니다. 이 기사에서는 WordPress에서 HTTP 이미지 업로드 오류를 쉽게 수정하는 방법을 보여줍니다. WordPress 미디어 업로드 중에 HTTP 오류의 이유는 무엇입니까? WordPress 미디어 업 로더를 사용하여 파일을 WO에 업로드하려고 할 때

    WordPress에서 미디어 버튼 추가가 작동하지 않는 문제를 해결하는 방법WordPress에서 미디어 버튼 추가가 작동하지 않는 문제를 해결하는 방법May 12, 2025 pm 09:00 PM

    최근에 독자 중 한 명이 WordPress 사이트의 미디어 추가 버튼이 갑자기 작동을 멈췄다 고보고했습니다. 이 고전적인 편집기 문제는 오류 나 경고가 표시되지 않으므로 사용자가 "미디어 추가"버튼이 작동하지 않는 이유를 알지 못합니다. 이 기사에서는 작동하지 않는 WordPress에서 미디어 추가 버튼을 쉽게 수정하는 방법을 보여줍니다. WordPress "Media Add"버튼이 작동하지 않도록 원인은 무엇입니까? 오래된 Classic WordPress 편집기를 사용하는 경우 미디어 추가 버튼을 사용하면 이미지, 비디오 등을 블로그 게시물에 삽입 할 수 있습니다.

    WordPress 쿠키를 설정, 받기 및 삭제하는 방법 (전문가와 같은)WordPress 쿠키를 설정, 받기 및 삭제하는 방법 (전문가와 같은)May 12, 2025 pm 08:57 PM

    WordPress 웹 사이트에서 쿠키를 사용하는 방법을 알고 싶습니까? 쿠키는 사용자 브라우저에 임시 정보를 저장하는 데 유용한 도구입니다. 이 정보를 사용하여 개인화 및 행동 타겟팅을 통해 사용자 경험을 향상시킬 수 있습니다. 이 Ultimate Guide에서는 전문가처럼 WordPressCookies를 설정, 받기 및 삭제하는 방법을 보여 드리겠습니다. 참고 : 이것은 고급 튜토리얼입니다. HTML, CSS, WordPress 웹 사이트 및 PHP에 능숙해야합니다. 쿠키는 무엇입니까? 쿠키는 사용자가 웹 사이트를 방문 할 때 생성 및 저장됩니다.

    WordPress 429 너무 많은 요청 오류를 수정하는 방법WordPress 429 너무 많은 요청 오류를 수정하는 방법May 12, 2025 pm 08:54 PM

    WordPress 웹 사이트에서 "429 너무 많은 요청"오류가 표시됩니까? 이 오류 메시지는 사용자가 웹 사이트 서버에 너무 많은 HTTP 요청을 보내고 있음을 의미합니다. 이 오류는 오류의 원인을 찾기가 어렵 기 때문에 매우 실망 스러울 수 있습니다. 이 기사에서는 "WordPress429ToOmanyRequests"오류를 쉽게 수정하는 방법을 보여줍니다. WordPress429에 대한 요청이 너무 많은 원인은 무엇입니까? "429toomanyRequests"오류의 가장 일반적인 원인은 사용자, 봇 또는 스크립트가 웹 사이트로 이동하려고 시도하기 때문입니다.

    대형 웹 사이트의 CMS로서 WordPress는 얼마나 확장 가능한가?대형 웹 사이트의 CMS로서 WordPress는 얼마나 확장 가능한가?May 12, 2025 am 12:08 AM

    WordPressCanhandlelArgeWebsites와 함께 확보 및 최적으로 최적화 된 경우 1) USECACHINGTOREDUCESERVERLOWN.2) 최적화 최적화

    WordPress는 얼마나 사용자 정의 할 수 있습니까?WordPress는 얼마나 사용자 정의 할 수 있습니까?May 11, 2025 am 12:11 AM

    WordPress는 매우 사용자 정의되어 있으며 다양한 유연성과 사용자 정의 가능성을 제공합니다. 1) 테마 및 플러그인 생태계를 통해 2) 프론트 엔드 개발에 RESTAPI를 사용하십시오. 그러나 사용자 정의에는 PHP, JavaScript, CSS 등과 같은 마스터 링 기술이 필요하며 잠재적 인 문제를 피하기 위해 성능 최적화 및 플러그인 선택에주의를 기울여야합니다.

    See all articles

    핫 AI 도구

    Undresser.AI Undress

    Undresser.AI Undress

    사실적인 누드 사진을 만들기 위한 AI 기반 앱

    AI Clothes Remover

    AI Clothes Remover

    사진에서 옷을 제거하는 온라인 AI 도구입니다.

    Undress AI Tool

    Undress AI Tool

    무료로 이미지를 벗다

    Clothoff.io

    Clothoff.io

    AI 옷 제거제

    Video Face Swap

    Video Face Swap

    완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

    뜨거운 도구

    SublimeText3 영어 버전

    SublimeText3 영어 버전

    권장 사항: Win 버전, 코드 프롬프트 지원!

    SecList

    SecList

    SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

    드림위버 CS6

    드림위버 CS6

    시각적 웹 개발 도구

    메모장++7.3.1

    메모장++7.3.1

    사용하기 쉬운 무료 코드 편집기

    SublimeText3 Mac 버전

    SublimeText3 Mac 버전

    신 수준의 코드 편집 소프트웨어(SublimeText3)