Αναφορά API για το Shopify Scripts
Τα σενάρια συντάσσονται με ένα API της Ruby που σας παρέχει μεγάλο βαθμό ελέγχου και ευελιξίας.
Υπάρχουν διάφοροι τύποι σεναρίων. Ένας τύπος αντιστοιχίζεται σε ένα σενάριο όταν το δημιουργείτε στην εφαρμογή Script Editor, ανάλογα με το πρότυπο σεναρίου που θα επιλέξετε για να ξεκινήσετε:
Σενάρια στοιχείων γραμμής
Τα σενάρια στοιχείων γραμμής επηρεάζουν τα στοιχεία γραμμής στο καλάθι και μπορούν να αλλάξουν τις τιμές και να χορηγήσουν εκπτώσεις. Αυτά τα σενάρια εκτελούνται όταν γίνεται κάποια αλλαγή στο καλάθι.
Τα σενάρια στοιχείων γραμμής που εφαρμόζουν έκπτωση σε μια συνδρομή ισχύουν μόνο για την πρώτη πληρωμή της συνδρομής. Οι επόμενες πληρωμές δεν λαμβάνουν έκπτωση από το σενάριο.
Ορισμένες μέθοδοι μπορούν να χρησιμοποιηθούν μόνο σε σενάρια στοιχείων γραμμής.
Σενάρια αποστολής
Τα σενάρια αποστολής αλληλεπιδρούν με την αποστολή και μπορούν να αλλάξουν τις μεθόδους αποστολής και να χορηγήσουν εκπτώσεις στα έξοδα αποστολής. Αυτά τα σενάρια εκτελούνται όταν η ολοκλήρωση αγοράς φτάσει στη σελίδα επιλογών αποστολής.
Τα σενάρια αποστολής που εφαρμόζουν έκπτωση στα έξοδα αποστολής μιας συνδρομής ισχύουν μόνο για την πρώτη πληρωμή της συνδρομής. Οι επόμενες πληρωμές δεν λαμβάνουν έκπτωση από το σενάριο.
<p>Some methods <a href="#shipping-methods">can only be used in shipping scripts</a>.</p>Σενάρια πληρωμών
Τα σενάρια πληρωμών αλληλεπιδρούν με τις πληρωμές και μπορούν να μετονομάσουν, να αποκρύψουν και να αναδιατάξουν τις πύλες πληρωμών. Σημειώστε ότι τα σενάρια πληρωμών δεν αλληλεπιδρούν με τις πύλες πληρωμών που εμφανίζονται πριν από την οθόνη ολοκλήρωσης αγοράς, όπως το Apple Pay. Αυτά τα σενάρια εκτελούνται όταν η ολοκλήρωση αγοράς φτάσει στη σελίδα πληρωμής.
Ορισμένες μέθοδοι μπορούν να χρησιμοποιηθούν μόνο σε σενάρια πληρωμών.
Σε αυτή τη σελίδα
Γενικές μέθοδοι
Οι παρακάτω μέθοδοι μπορούν να χρησιμοποιηθούν σε οποιονδήποτε τύπο σεναρίου:
Είσοδος
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .cart | Καλάθι | Επιστρέφει ένα μεταβλητό αντικείμενο καλαθιού. |
| .locale | συμβολοσειρά | Επιστρέφει τις τοπικές ρυθμίσεις του πελάτη. Για παράδειγμα, en, fr ή pt-BR. |
Καλάθι
Το αντικείμενο του καλαθιού είναι διαθέσιμο μόνο στο διαδικτυακό κατάστημα. Ορισμένες εγκαταλελειμμένες ολοκληρώσεις αγοράς έχουν πρόσβαση στο αντικείμενο του καλαθιού. Ωστόσο, αν μια ολοκλήρωση αγοράς έχει κλείσει και στη συνέχεια ένας πελάτης επισκεφθεί την εγκαταλελειμμένη ολοκλήρωση αγοράς, τότε αποστέλλεται στην προ-συμπληρωμένη ολοκλήρωση αγοράς και το αντικείμενο του καλαθιού δεν υπάρχει πλέον. Αυτό συμβαίνει επειδή το ηλεκτρονικό κατάστημα παρακάμφθηκε από το email εγκαταλελειμμένης ολοκλήρωσης αγοράς.
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .customer | Πελάτης | Επιστρέφει τον κάτοχο του καλαθιού (εάν υπάρχει). |
| .shipping_address | Διεύθυνση αποστολής | Επιστρέφει τη διεύθυνση αποστολής του κατόχου του καλαθιού (εάν υπάρχει). |
| .discount_code | ποικίλλει |
Επιστρέφει:
Το |
CartDiscount::FixedAmount
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .code | Συμβολοσειρά | Επιστρέφει τον κωδικό έκπτωσης που χρησιμοποιήθηκε για την εφαρμογή της έκπτωσης. |
| .amount | Χρηματικό ποσό | Επιστρέφει το χρηματικό ποσό της έκπτωσης. |
| .reject({ message: Συμβολοσειρά }) | nil | Απορρίπτει τον κωδικό έκπτωσης που εφαρμόστηκε στο καλάθι. Απαιτείται ένα message. |
| .rejected; | Δυαδική τιμή | Επιστρέφει εάν ο κωδικός έκπτωσης απορρίφθηκε. |
CartDiscount::Percentage
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .code | Συμβολοσειρά | Επιστρέφει τον κωδικό έκπτωσης που χρησιμοποιήθηκε για την εφαρμογή της έκπτωσης. |
| .percentage | Δεκαδικός | Επιστρέφει το ποσοστιαίο ποσό της έκπτωσης. |
| .reject({ message: Συμβολοσειρά }) | nil | Απορρίπτει τον κωδικό έκπτωσης που εφαρμόστηκε στο καλάθι. Απαιτείται ένα message. |
| .rejected; | Δυαδική τιμή | Επιστρέφει εάν ο κωδικός έκπτωσης απορρίφθηκε. |
CartDiscount::Shipping
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .code | Συμβολοσειρά | Επιστρέφει τον κωδικό έκπτωσης που χρησιμοποιήθηκε για την εφαρμογή της έκπτωσης. |
| .reject({ message: Συμβολοσειρά }) | nil | Απορρίπτει τον κωδικό έκπτωσης που εφαρμόστηκε στο καλάθι. Απαιτείται ένα message. |
| .rejected; | Δυαδική τιμή | Επιστρέφει εάν ο κωδικός έκπτωσης απορρίφθηκε. |
Πελάτης
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .id | Ακέραιος αριθμός | Επιστρέφει τον αριθμό αναγνωριστικού του πελάτη. |
| Συμβολοσειρά | Επιστρέφει τη διεύθυνση email του πελάτη. | |
| .tags | List<Ετικέτα> | Επιστρέφει μια λίστα συμβολοσειρών που αντιπροσωπεύουν τυχόν ετικέτες που έχουν οριστεί για έναν πελάτη. |
| .orders_count | Ακέραιος αριθμός | Επιστρέφει τον συνολικό αριθμό παραγγελιών που έχει υποβάλει ένας πελάτης. |
| .total_spent | Χρηματικό ποσό | Επιστρέφει το συνολικό ποσό που έχει δαπανήσει ο πελάτης σε όλες τις παραγγελίες. |
| .accepts_marketing; | Δυαδική τιμή | Επιστρέφει αν ο πελάτης αποδέχεται το μάρκετινγκ. |
Στοιχείο γραμμής
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .grams | grams | Επιστρέφει το συνολικό βάρος του στοιχείου γραμμής. |
| .line_price | Χρηματικό ποσό | Η τιμή του στοιχείου γραμμής. |
| .discounted; | Δυαδική τιμή | Επιστρέφει αν η τιμή ενός στοιχείου γραμμής έχει μειωθεί από ένα script ή από μια έκπτωση που εφαρμόστηκε μη αυτόματα. Η χρήση κωδικών έκπτωσης δεν επηρεάζει την τιμή επιστροφής. |
| .properties | hash | Επιστρέφει τις ιδιότητες που καθορίστηκαν για αυτά τα στοιχεία γραμμής. |
| .variant | Variant | Επιστρέφει την εκάστοτε παραλλαγή προϊόντος που αντιπροσωπεύεται από το στοιχείο γραμμής. |
| .quantity | Ακέραιος αριθμός | Επιστρέφει την ποσότητα αυτού του στοιχείου γραμμής. |
| .selling_plan_id | Ακέραιος αριθμός | Επιστρέφει το αναγνωριστικό του σχεδίου πώλησης για το στοιχείο γραμμής. Αυτή η μέθοδος είναι χρήσιμη όταν το κατάστημα πωλεί συνδρομές και θέλετε το script να ανιχνεύει πότε μια παραλλαγή προϊόντος πωλείται ως συνδρομή. |
Λίστα
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .new | List | Δημιουργεί ένα νέο αντικείμενο για την αναπαράσταση μιας λίστας. |
| .[] | Στοιχείο ή nil |
Επιστρέφει το στοιχείο στον καθορισμένο δείκτη. |
| .& | List |
Επιστρέφει μια νέα λίστα που περιέχει στοιχεία κοινά στις δύο λίστες, χωρίς διπλότυπα. |
| .delete_if | List | Διαγραφή στοιχείων με χρήση προαιρετικού τμήματος κώδικα. Δείτε την τεκμηρίωση για τη μέθοδο delete_if της Ruby. |
| .empty; | Δυαδική τιμή |
Επιστρέφει |
| .first | Στοιχείο ή nil |
Επιστρέφει το πρώτο στοιχείο ή |
| .index(*args, &block) | int ή nil |
Επιστρέφει τον δείκτη του πρώτου στοιχείου της λίστας. Αν δοθεί ένα τμήμα κώδικα αντί για όρισμα, επιστρέφει τον δείκτη του πρώτου στοιχείου για το οποίο το τμήμα κώδικα είναι αληθές. |
| .rindex(*args, &block) | int ή nil |
Επιστρέφει τον δείκτη του τελευταίου στοιχείου της λίστας. Αν δοθεί ένα τμήμα κώδικα αντί για όρισμα, επιστρέφει τον δείκτη του πρώτου στοιχείου για το οποίο το τμήμα κώδικα είναι αληθές. |
| .last | Στοιχείο ή nil |
Επιστρέφει το τελευταίο στοιχείο ή |
| .length | int |
Επιστρέφει τον αριθμό των στοιχείων στη λίστα. |
| .size | int |
Ψευδώνυμο για το length. |
| .each(*args, &block) | List |
Καλεί ένα τμήμα κώδικα μία φορά για κάθε στοιχείο στη λίστα, μεταβιβάζοντας το στοιχείο ως παράμετρο στο τμήμα κώδικα. |
Διεύθυνση αποστολής
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .name | συμβολοσειρά | Επιστρέφει το όνομα του ατόμου που σχετίζεται με τη διεύθυνση αποστολής. |
| .address1 | συμβολοσειρά | Επιστρέφει το τμήμα της διεύθυνσης οδού της διεύθυνσης αποστολής. |
| .address2 | συμβολοσειρά | Επιστρέφει το προαιρετικό επιπλέον πεδίο του τμήματος της διεύθυνσης οδού της διεύθυνσης αποστολής. |
| .phone | συμβολοσειρά | Επιστρέφει τον αριθμό τηλεφώνου της διεύθυνσης αποστολής. |
| .city | συμβολοσειρά | Επιστρέφει την πόλη της διεύθυνσης αποστολής. |
| .zip | συμβολοσειρά | Επιστρέφει τον ΤΚ της διεύθυνσης αποστολής. |
| .province | συμβολοσειρά | Επιστρέφει την επαρχία/πολιτεία της διεύθυνσης αποστολής. |
| .province_code | συμβολοσειρά | Επιστρέφει τη συντομογραφία της επαρχίας/πολιτείας της διεύθυνσης αποστολής. |
| .country_code | συμβολοσειρά | Επιστρέφει τη συντομογραφία της χώρας της διεύθυνσης αποστολής. |
Χρήματα
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .derived_from_presentment(customer_cents:X) | Χρηματικό ποσό | Μετατρέπει ένα ποσό (σε σεντ) από το τοπικό νόμισμα του πελάτη (νόμισμα εμφανιζόμενης τιμής προϊόντος) στο νόμισμα του καταστήματός σας. Αυτή η μέθοδος δέχεται την παράμετρο customer_cents, η οποία δέχεται έναν αριθμό σε σεντ. Για παράδειγμα, Money.derived_from_presentment(customer_cents: 500). |
| .new | Χρηματικό ποσό | Δημιουργεί ένα νέο αντικείμενο για την αναπαράσταση μιας τιμής. |
| .zero | Χρηματικό ποσό |
Δημιουργεί ένα νέο αντικείμενο με μηδενική τιμή. |
| + | Χρηματικό ποσό | Προσθέτει δύο αντικείμενα Χρήματα. |
| - | Χρηματικό ποσό | Αφαιρεί ένα αντικείμενο Χρήματα από ένα άλλο. |
| * | Χρηματικό ποσό | Πολλαπλασιάζει ένα αντικείμενο Χρήματα με έναν αριθμό. |
Παραδείγματα για το «Χρήματα»
Money.new(cents: 1000)Δημιουργεί ένα αντικείμενο Χρήματα που αντιπροσωπεύει 1000 σεντ ή 10 $.
Money.new(cents: 100) * 50Δημιουργεί ένα αντικείμενο Χρήματα που αντιπροσωπεύει 1 $, και στη συνέχεια πολλαπλασιάζει αυτό το ποσό με το 50. Επιστρέφει ένα αντικείμενο Χρήματα που αντιπροσωπεύει 50 $.
Παραλλαγή
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .id | Ακέραιος αριθμός | Επιστρέφει τον αριθμό αναγνωριστικού της παραλλαγής. |
| .price | Χρηματικό ποσό | Επιστρέφει την τιμή μονάδας της παραλλαγής. |
| .product | Product | Επιστρέφει το συσχετισμένο προϊόν της παραλλαγής. |
| .skus | List<String> | Επιστρέφει τις μονάδες διατήρησης αποθεμάτων (κωδικούς SKU) της παραλλαγής, οι οποίες χρησιμοποιούνται συχνά για την παρακολούθηση του αποθέματος. |
| .title | Συμβολοσειρά | Επιστρέφει τον τίτλο της παραλλαγής. |
Προϊόν
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .id | Ακέραιος αριθμός | Επιστρέφει τον αριθμό αναγνωριστικού του προϊόντος. |
| .gift_card? | Δυαδική τιμή | Επιστρέφει αν το προϊόν είναι δωροκάρτα. |
| .tags | List<Ετικέτα> | Επιστρέφει μια λίστα συμβολοσειρών που αντιπροσωπεύουν τις ετικέτες που έχουν οριστεί για αυτό το προϊόν. |
| .product_type | Συμβολοσειρά | Μια κατηγοριοποίηση με την οποία μπορεί να επισημανθεί ένα προϊόν με ετικέτα, που χρησιμοποιείται συνήθως για φιλτράρισμα και αναζήτηση. |
| .vendor | Συμβολοσειρά | Επιστρέφει τον αποκλειστικό πωλητή αυτού του προϊόντος. |
Kernel
Το Kernel είναι ένα module της Ruby που περιλαμβάνεται σε κάθε κλάση. Ως αποτέλεσμα, οι μέθοδοί του είναι διαθέσιμες σε κάθε αντικείμενο. Αυτές οι μέθοδοι λειτουργούν με τον ίδιο τρόπο που λειτουργούν οι καθολικές συναρτήσεις σε άλλες γλώσσες.
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .exit | καμία | Τερματίζει την εκτέλεση του τρέχοντος script χωρίς σφάλμα. Αν εκτελεστεί πριν ανατεθεί οτιδήποτε στο Output.cart, το script δεν έχει κανένα αποτέλεσμα. Αυτός είναι ένας χρήσιμος τρόπος για έξοδο από τα script, για παράδειγμα, εάν ο πελάτης δεν πληροί τις προϋποθέσεις για την εκτέλεση του script. |
Παράδειγμα Kernel
customer = Input.cart.customer
if customer && customer.email.end_with?("@mycompany.com")
# Employees are not eligible for this promotion.
exit
endΜέθοδοι στοιχείων γραμμής
Οι παρακάτω μέθοδοι μπορούν να χρησιμοποιηθούν μόνο σε script στοιχείων γραμμής:
Καλάθι
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .subtotal_price_was | Χρηματικό ποσό | Επιστρέφει τη μερική συνολική τιμή του καλαθιού πριν από την εφαρμογή οποιωνδήποτε εκπτώσεων. |
| .subtotal_price_changed? | Δυαδική τιμή | Επιστρέφει εάν η μερική συνολική τιμή έχει αλλάξει. |
Στοιχείο γραμμής
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .change_line_price(Money new_price, { message: String }) | Χρηματικό ποσό | Αλλάζει την τιμή του στοιχείου γραμμής στο καθορισμένο ποσό. Απαιτείται ένα message. Η new_price πρέπει να είναι χαμηλότερη από την τρέχουσα τιμή. |
| .original_line_price | Χρηματικό ποσό | Επιστρέφει την αρχική τιμή του στοιχείου γραμμής πριν από την εφαρμογή των script και των εκπτώσεων. |
| .line_price_was | Χρηματικό ποσό | Επιστρέφει την τιμή του στοιχείου γραμμής πριν από την εφαρμογή αλλαγών από το τρέχον script. |
| .line_price_changed? | Δυαδική τιμή | Επιστρέφει εάν η τιμή του στοιχείου γραμμής έχει αλλάξει. |
| .change_properties(hash new_properties, { message: String }) | hash | Ορίζει νέες ιδιότητες για ένα στοιχείο γραμμής. Ο αρχικός πίνακας hash ιδιοτήτων αποθηκεύεται στο properties_was και ο πίνακας hash ιδιοτήτων που μεταβιβάζεται στη μέθοδο γίνεται οι νέες ιδιότητες για το στοιχείο γραμμής. |
| .properties_was | hash | Επιστρέφει τον αρχικό πίνακα hash ιδιοτήτων του στοιχείου γραμμής πριν από την εφαρμογή οποιωνδήποτε αλλαγών. |
| .properties_changed? | Δυαδική τιμή | Επιστρέφει εάν οι ιδιότητες για το στοιχείο γραμμής έχουν αλλάξει. |
| .split({ take: Integer }) | LineItem | Διαιρεί ένα στοιχείο γραμμής σε δύο στοιχεία γραμμής. Το take καθορίζει την ποσότητα που θα αφαιρεθεί από το αρχικό στοιχείο γραμμής για να δημιουργηθεί το νέο στοιχείο γραμμής. |
Παράδειγμα .split
Αυτό το παράδειγμα script διαιρεί ένα στοιχείο γραμμής που ονομάζεται original_line_item σε δύο στοιχεία γραμμής. Το νέο στοιχείο γραμμής έχει ποσότητα 1 (καθορίζεται από το take: 1). Στη συνέχεια, το script εφαρμόζει μια εκπτωτική τιμή στο νέο στοιχείο γραμμής με το μήνυμα «Τρίτο καπέλο για 5 δολάρια».
if original_line_item.quantity >= 3
new_line_item = original_line_item.split(take: 1)
new_line_item.change_line_price(Money.new(cents: 500), message: "Third hat for 5 dollars")
cart.line_items << new_line_item
endΠαραλλαγή
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .compare_at_price | Χρηματικό ποσό | Επιστρέφει την τιμή σύγκρισης της παραλλαγής. Επιστρέφει nil εάν η παραλλαγή δεν έχει τιμή σύγκρισης. |
Μέθοδοι αποστολής
Οι παρακάτω μέθοδοι μπορούν να χρησιμοποιηθούν σε script αποστολής:
Είσοδος
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .shipping_rates | ShippingRateList | Επιστρέφει μια λίστα με όλα τα έξοδα αποστολής. |
ShippingRateList
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .delete_if | ShippingRateList | Διαγραφή εξόδων αποστολής με τη χρήση προαιρετικού τμήματος κώδικα. Ανατρέξτε στην τεκμηρίωση για τη μέθοδο delete_if της Ruby. |
| .sort! | ShippingRateList | Ταξινόμηση των εξόδων αποστολής με τη χρήση του τελεστή σύγκρισης ή ενός προαιρετικού τμήματος κώδικα. Ανατρέξτε στην τεκμηρίωση για τη μέθοδο sort! της Ruby. |
| .sort_by! | ShippingRateList | Ταξινόμηση των εξόδων αποστολής με τη χρήση ενός προαιρετικού τμήματος κώδικα. Ανατρέξτε στην τεκμηρίωση για τη μέθοδο sort_by! της Ruby. |
ShippingRate
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .code | Συμβολοσειρά | Επιστρέφει τον κωδικό των εξόδων αποστολής. |
| .markup | Χρηματικό ποσό | Επιστρέφει το ποσοστό κέρδους για τα έξοδα αποστολής, εφόσον ισχύει. |
| .name | Συμβολοσειρά | Επιστρέφει το όνομα των εξόδων αποστολής. Μπορεί να τροποποιηθεί με τη χρήση της μεθόδου change_name. |
| .price | Χρηματικό ποσό | Επιστρέφει την τιμή των εξόδων αποστολής. |
| .source | Συμβολοσειρά | Επιστρέφει την πηγή (τον μεταφορέα) που σχετίζεται με τα έξοδα αποστολής, κατά περίπτωση. Δεν μπορεί να τροποποιηθεί. |
| .change_name(String new_name) | Συμβολοσειρά | Αλλάζει το όνομα (μέχρι 255 χαρακτήρες) για τα έξοδα αποστολής. Δεν είναι δυνατή η αλλαγή, η διαγραφή ή η απόκρυψη της πηγής. |
| .apply_discount(Money discount, { message: String }) | Χρηματικό ποσό | Εφαρμόζει μια έκπτωση του καθορισμένου σταθερού ποσού. Η τιμή δεν μπορεί να μειωθεί κάτω από το 0. Απαιτείται μήνυμα. |
| .phone_required?; | Δυαδική τιμή | Επιστρέφει true εάν απαιτείται αριθμός τηλεφώνου για τη λήψη των εξόδων αποστολής ή false εάν δεν απαιτείται αριθμός τηλεφώνου. |
Μέθοδοι πληρωμής
Οι ακόλουθες μέθοδοι μπορούν να χρησιμοποιηθούν σε σενάρια πληρωμής:
Είσοδος
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .payment_gateways | PaymentGatewaysList | Επιστρέφει μια λίστα με όλες τις πύλες πληρωμών στο κατάστημα. |
PaymentGatewayList
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .delete_if | PaymentGatewayList | Διαγραφή πυλών πληρωμών με τη χρήση προαιρετικού τμήματος κώδικα. Ανατρέξτε στην τεκμηρίωση για τη μέθοδο delete_if της Ruby. |
| .sort! | PaymentGatewayList | Ταξινόμηση των πυλών πληρωμών με τη χρήση του τελεστή σύγκρισης ή ενός προαιρετικού τμήματος κώδικα. Ανατρέξτε στην τεκμηρίωση για τη μέθοδο sort! της Ruby. |
| .sort_by! | PaymentGatewayList | Ταξινόμηση των πυλών πληρωμών με τη χρήση ενός προαιρετικού τμήματος κώδικα. Ανατρέξτε στην τεκμηρίωση για τη μέθοδο sort_by! της Ruby. |
PaymentGateway
| Μέθοδος | Τύπος επιστροφής | Περιγραφή |
|---|---|---|
| .name | Συμβολοσειρά | Επιστρέφει το όνομα της πύλης πληρωμών. |
| .enabled_card_brands | List<String> |
Εάν η πύλη πληρωμών υποστηρίζει πιστωτικές κάρτες, επιστρέφει μια λίστα με τους τύπους πιστωτικών καρτών που δέχεται το κατάστημα. Εάν η πύλη δεν υποστηρίζει πιστωτικές κάρτες, επιστρέφει μια κενή λίστα. |
| .change_name(String new_name) | Συμβολοσειρά | Αλλάζει το όνομα της πύλης πληρωμών. Οι πύλες πληρωμών με λογότυπα δεν μπορούν να μετονομαστούν. |
Παραδείγματα
Στο ακόλουθο παράδειγμα σεναρίου στοιχείου γραμμής, όταν ένας πελάτης παραγγέλνει ένα προϊόν που δεν είναι δωροκάρτα, τότε η τιμή του προϊόντος μειώνεται κατά 9 $. Επίσης, εμφανίζεται το συνολικό ποσό που έχει ξοδέψει ο πελάτης σε όλες τις επισκέψεις του στο κατάστημά σας:
customer = Input.cart.customer
Input.cart.line_items.each do |line_item|
product = line_item.variant.product
next if product.gift_card?
line_item.change_line_price(line_item.line_price - Money.new(cents: 900), message: customer.total_spent)
end
Output.cart = Input.cart
Μάθετε περισσότερα
Μάθετε περισσότερα για τα εξής: