אחד הפי'צרים הכי פשוטים ליישום שלא קיימים כרגע באלמנטור הוא ניקוי/ריקון עגלה.
אז בואו נתחיל:
- נכניס את הקוד הבא, אפשר בתבנית ואפשר דרך Elementor Code:
$( document ).on( 'click', '#clear-cart', function() {
let el = $( this );
let elHtml = el.html();
el.html( elHtml + ' <i class="fas fa-spinner fa-spin"></i>' );
let data = {
action: 'my_clear_cart',
security: el.attr( 'data-security' ),
}
$.post( woocommerce_params.ajax_url, data, function( response ) {
el.html( elHtml );
if( response.success ) {
$( 'body' ).trigger( 'wc_cart_emptied' );
$( 'body' ).trigger( 'wc_fragment_refresh' );
$( 'body' ).trigger( 'update_checkout' );
}
} );
} );
Code language: JavaScript (javascript)
- נכניס את הקוד הבא בקובץ functions.php של התבנית או ע"י תוסף הזנת קודים כמו Code Snippets למשל:
function my_clear_cart() {
if( !isset( $_POST['security'] ) || !wp_verify_nonce( $_POST['security'], 'my_clear_cart' ) ) {
wp_send_json_error( [ 'message' => 'אירעה שגיאה בעת שליחת הטופס.' ] );
}
WC()->cart->empty_cart();
wp_send_json_success();
}
add_action( 'wp_ajax_my_clear_cart', 'my_clear_cart' );
add_action( 'wp_ajax_nopriv_my_clear_cart', 'my_clear_cart' );
function my_woocommerce_before_mini_cart() {
?>
<span id="clear-cart" data-security="<?php echo wp_create_nonce( 'my_clear_cart' ); ?>">רוקן עגלה</span>
<?php
}
add_action( 'woocommerce_before_mini_cart_contents', 'my_woocommerce_before_mini_cart' );
Code language: PHP (php)
*טיפ: לווקומרס יש מנגנון קאש (זכרון מטמון) שזוכר את התבניות של ווקומרס, אם תזינו את הקוד שהוצג (ספציפית הפונקציה: woocommerce_before_mini_cart_contents, לא תראו את הכפתור ריקון עגלה עדין, על מנת לפתור את זה יש להיכנס לווקומרס > מצב > כלים > למחוק את מטמון התבנית -> נקה
- נוסיף קצת CSS כדי להציג את הכפתור ניקוי עגלה בחלק העליון:
#clear-cart {
position: absolute;
top: 20px;
right: 30px;
z-index: 10;
text-decoration: underline;
cursor: pointer;
}
Code language: CSS (css)
זהו, עכשיו אתם יכולים להינות מכפתור לריקון העגלה ✌🏻
2 תגובות
הנקודה הכי חשובה בכל הנושא הזה של ריקון עגלה בלחיצה אחת
היא הנקודה שהכי משמעותית לבעל האתר –
לא לתת ללקוח הזדמנות להתחרט ולבצע ביטול רכישה כל כך מהר
וכך ההזמנה לא תתבצע והמוכר לא ירוויח כלום בסופו של דבר.
כמה שפחות לתת קיצורי דרך של תהליך ביטול הזמנה…
היי נועה, תודה על התגובה.
1. אם הלקוח לא מעוניין להזמין אז מה זה משנה אם יש כפתור ריקון עגלה או לא?
2. לא מדובר כאן על ביטול רכישה, אלא על ניקוי עגלה מהמוצרים הקיימים בה. קרה לי עם כמה לקוחות שביקשו את הפיצ'ר הזה, יש מקרים שלקוח חוזר לאתר אחרי שבוע ורוצה להזמין שוב אבל יש לו מוצרים בעגלה עוד מקודם אז כפתור כזה יכול לעזור.