문제

나는 사용한다 심플카트 내 웹사이트에서 요소를 선택하고 장바구니로 보낼 수 있는 장바구니를 만들려면...다음 단계는 체크아웃 프로세스이지만 비즈니스상의 이유로 체크아웃 프로세스가 추가되지 않으며 이름, 이메일 및 주문 픽업 날짜가 포함된 간단한 양식이 요청됩니다.이제 주문을 완료할 이메일 주소(회사)로 주문을 보내야 합니다.

질문 :장바구니 내용을 이메일 본문이나 첨부 파일로 보내는 방법은 무엇입니까?

도움이 되었습니까?

해결책

SimpleCartJS에 새 계산서를 추가해야합니다.

me.emailCheckout = function() {    

    itemsString = "";
    for( var current in me.items ){ 
        var item = me.items[current];
        itemsString += item.name + " " + item.quantity + " " + item.price + "\n";
    }   

    var form = document.createElement("form");
    form.style.display = "none";
    form.method = "POST";
    form.action = "sendjs.php";
    form.acceptCharset = "utf-8";
    form.appendChild(me.createHiddenElement("jcitems", itemsString));
    form.appendChild(me.createHiddenElement("jctotal", me.total));
    document.body.appendChild(form);
    form.submit();
    document.body.removeChild(form);
}

이렇게하면 새 양식 요소가 생성되고 CART 데이터를 sendjs.php에 제출합니다. SimpleCart 옵션에서 checkoutto = '이메일'을 설정 하여이 결제 방법을 활성화하십시오.

이제 새 sendjs.php 파일을 만듭니다.

<?php
    $to      = 'you@example.com';
    $subject = 'the subject';
    $jcitems = $_POST['jcitems'];
    $headers = 'From: webmaster@example.com' . "\r\n" .
               'Reply-To: webmaster@example.com' . "\r\n" .
               'X-Mailer: PHP/' . phpversion();
    mail($to, $subject, $jcitems, $headers);
    Header('Location: thankyou.html');
?>

이메일 메시지를 보내고 REDIRECT를 작성해야합니다.

다른 팁

그러면 사용자 "전화 및 주소"에 이메일 주문, 추가 필드가 추가됩니다.

CheckOut 중에 사용자가 등록되어 있는지 확인하세요. 그렇지 않으면 등록으로 리디렉션됩니다.

이메일 주문이 성공적으로 전송된 후에만 장바구니가 삭제됩니다.

상점 주인 "shop@domain.com"과 사용자에게 주문을 볼 수 있도록 2개의 이메일을 보냅니다.

주문이 완료된 후 감사 부분을 위한 새 페이지를 만들어야 합니다.

단순카트:288번 라인이 내꺼야

me.emailCheckout = function() {    

    itemsString = "";
    for( var current in me.items ){ 
        var item = me.items[current];
        itemsString += item.name + " " + item.quantity + " " + item.price + "\n";
    }   

    var form = document.createElement("form");
    form.style.display = "none";
    form.method = "POST";
    form.action = "sendjs.php";
    form.acceptCharset = "utf-8";
    form.appendChild(me.createHiddenElement("jcitems", itemsString));
    form.appendChild(me.createHiddenElement("jctotal", me.total));
    document.body.appendChild(form);
    form.submit();
    document.body.removeChild(form); 
}

sendjs.php

 <?php   require( dirname(__FILE__) . '/wp-load.php' );   
   /* cheking is user is logged in*/ 
   if ( is_user_logged_in() ) { 
    get_currentuserinfo(); /* getting user details*/

/* sending e-mail to the shop email */
        $to      = 'shop@domain.com';
        $subject = 'New Order';
        $jcitems =  " Name: " . $current_user->user_lastname .
                    " \n First Name: " . $current_user->user_firstname .
                    " \n Email: " . $current_user->user_email .
                    " \n Phone: " . $current_user->phone .
                    " \n Adress: " . $current_user->adress ;
        $headers = 'From: shop@domain.com' . "\r\n" .
                   'Reply-To: shop@domain.com' . "\r\n" .
                   'X-Mailer: PHP/' . phpversion();
        mail($to, $subject, $jcitems, $headers);

/* sending e-mail with the order to the users email*/        

        $to      = $current_user->user_email;
        $subject = 'Order copy from Domain';
        $jcitems =  "Thank you for you order. Below you have your ordered products".
                    " \n ORDER: \n\n " . $_POST['jcitems'] . "Total: " . $_POST['jctotal'] . " USD" .
                    "\n\n http://www.domain.com \nshop@domain.com";
        $headers = 'From: shop@domain.com' . "\r\n" .
                   'Reply-To: shop@domain.com' . "\r\n" .
                   'X-Mailer: PHP/' . phpversion();
        mail($to, $subject, $jcitems, $headers);
        /*Clearing the cart info after succesfull order is made*/
        setcookie ("simpleCart", "", time() - 3600);
        /*redirecting user to Thank you page from Wordpress*/
    Header('Location: http://www.domain.com/thank_you/');  } 

    else { /*sending user to register*/
        header( 'Location: http://www.domain.com/wp-login.php?action=register' ) ; exit; }   ?>

사용자 "전화 및 주소"에 추가 2개 필드를 추가하려면 WordPress용 Register Plus 플러그인이 필요합니다.
꼭 확인하세요
등록 필드 추가
프로필 필드 추가
필수의

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top