Shopifyn komentosarja-API -viite
Komentosarjat on kirjoitettu Ruby-API -kielellä, mikä lisää hallittavuutta ja joustavuutta huomattavasti.
Komentosarjatyyppejä on erilaisia. Kun luot komentosarjan Script Editor -sovelluksessa, komentosarjalle määritetään tyyppi sen perusteella, minkä komentosarjamallin valitset:
Rivikohdan komentosarjat
Rivikohdan komentosarjat vaikuttavat ostoskorissa oleviin riveihin ja voivat muuttaa hintoja sekä myöntää alennuksia. Nämä komentosarjat suoritetaan, kun koriin tehdään muutos.
Rivikohdan komentosarjoja, jotka alentavat tilauksen hintaa, sovelletaan vain tilauksen ensimmäiseen maksuun. Komentosarja ei alenna myöhempiä maksuja.
Joitakin menetelmiä voidaan käyttää vain rivikohdan komentosarjoissa.
Toimituskomentosarjat
Toimituskomentosarjat ovat vuorovaikutuksessa toimituksen kanssa, ja ne voivat muuttaa toimitustapoja sekä myöntää alennuksia toimitushinnoista. Nämä komentosarjat suoritetaan, kun kassalla päädytään toimitusvaihtoehtojen sivulle.
Toimituskomentosarjoja, jotka alentavat tilauksen toimitusmaksua, sovelletaan vain tilauksen ensimmäiseen maksuun. Komentosarja ei alenna myöhempiä maksuja.
Joitakin menetelmiä voidaan käyttää vain toimituskomentosarjoissa.
Maksukomentosarjat
Maksukomentosarjat toimivat yhdessä maksujenkanssa, ja niillä voidaan nimetä uudelleen maksuportaaleja, piilottaa niitä ja järjestää niitä uudelleen. Huomaa, että maksukomentosarjat eivät toimi vuorovaikutuksessa ennen kassan näyttöä näytettävien maksuportaalien kuten Apple payn kanssa. Nämä komentosarjat suoritetaan, kun kassalla päädytään maksusivulle.
Joitakin menetelmiä voidaan käyttää vain maksukomentosarjoissa.
Tällä sivulla
Yleiset menetelmät
Seuraavat menetelmät ovat käytettävissä missä tahansa komentosarjassa:
Syöttää
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.cart | Ostoskori | Palauttaa muutettavan ostoskorin kohteen. |
.locale | merkkijono | Palauttaa asiakkaan sijainnin. Esimerkiksi en fr tai pt-BR . |
Ostoskori
Ostoskorin kohde on käytettävissä vain verkkokaupassa. Joissakin hylätyissä ostoskoreissa on pääsy ostoskorin kohteeseen. Jos maksu on kuitenkin suljettu ja asiakas vierailee hylätyssä ostoskorissa, hänet lähetetään esitäytettyyn maksuvaiheeseen eikä ostoskorin kohdetta enää ole. Tämä johtuu siitä, että myyntipaikka on ohitettu sähköpostilla hylätystä ostoskorista.
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.customer | Asiakas | Palauttaa ostoskorin omistajan (jos sellainen on). |
.shipping_address | Toimitusosoite | Palauttaa ostoskorin omistajan (jos sellainen on) toimitusosoitteen. |
.discount_code | Vaihtelee |
Palautukset:
|
.line_items | Luettelo <LineItem> | Palauttaa luettelon, joka sisältää ostoskorissa olevat rivikohdat. |
.presentment_currency | Luettelo<String> | Palauttaa asiakkaan paikallisen (esitys-) valuutan (ISO 4217 -muodossa). Esimerkiksi USD. |
.subtotal_price | Raha | Palauttaa ostoskorin välisumman hinnan, kun rivikohdan alennukset on sovellettu, mutta ennen kuin alennuskoodeja sovelletaan. |
.total_weight | grammat | Palauttaa kaikkien ostoskorissa olevien rivikohtien kokonaispainon. |
CartDiscount::FixedAmount
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.code | Merkkijono | Palauttaa alennuskoodin, jolla alennusta sovelletaan. |
.amount | Raha | Palauttaa alennuksen rahasumman. |
.reject({ message: String }) | Nil | Hylkää ostoskoriin sovellettavan alennuskoodin. message vaaditaan. |
.rejected? | Totuusarvo | Palauttaa, josko alennuskoodi on hylätty. |
CartDiscount::Percentage
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.code | Merkkijono | Palauttaa alennuskoodin, jolla alennusta sovelletaan. |
.prosentuaalinen summa | Desimaali | Palauttaa alennuksen prosenttimäärän. |
.reject({ message: String }) | Nil | Hylkää ostoskoriin sovellettavan alennuskoodin. message vaaditaan. |
.rejected? | Totuusarvo | Palauttaa, josko alennuskoodi on hylätty. |
CartDiscount:: Shipping
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.code | Merkkijono | Palauttaa alennuskoodin, jolla alennusta sovelletaan. |
.reject({ message: String }) | Nil | Hylkää ostoskoriin sovellettavan alennuskoodin. message vaaditaan. |
.rejected? | Totuusarvo | Palauttaa, josko alennuskoodi on hylätty. |
Asiakas
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.id | Kokonaisluku | Palauttaa asiakkaan tunnusnumeron. |
Merkkijono | Palauttaa asiakkaan sähköpostiosoitteen. | |
.tags | Luettelo <Tag> | Palauttaa luettelon merkkijonoista, jotka edustavat kaikkia asiakkaan tunnisteita. |
.orders_count | Kokonaisluku | Palauttaa asiakkaan tekemän tilauksen kokonaismäärän. |
.total_spent | Raha | Palauttaa kokonaissumman, jonka asiakas on käyttänyt kaikille tilauksille. |
Marketing? | Totuusarvo | Palauttaa, hyväksyykö asiakas markkinoinnin. |
LineItem
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.grams | <tdgrammatPalauttaa rivikohdan kokonaispainon. | |
.line_price | Raha | Rivikohdan hinta. |
tujen? | Totuusarvo | Tämä palauttaa tiedon, onko rivikohdan hintaa alennettu komentosarjalla vai manuaalisesti käytetyllä alennuksella. Alennuskoodien käyttäminen ei vaikuta palautusarvoon. |
.properties | Hash | Palauttaa tämän rivin nimikkeille määritetyt ominaisuudet. |
.variant | Versio | Palauttaa tuoteversion, jota rivikohta edustaa. |
.quantity | Kokonaisluku | Palauttaa tämän rivikohdan määrän. |
.selling_plan_id | Kokonaisluku | Palauttaa rivikohdan myyntisopimuksen tunnuksen. Tämä menetelmä on hyödyllinen, kun kauppa myy tuotetilauksia ja haluat, että komentosarja havaitsee, kun tuoteversio myydään tilauksena. |
Luettelo
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.new | Luettelo | Luo uuden objektin, joka edustaa luetteloa. |
.[] | Elementti tai nolla |
Palauttaa määritetyn indeksin elementin. |
. & | Luettelo |
Palauttaa uuden luettelon, joka sisältää kahta luetteloa varten samat elementit, joissa ei ole kaksoiskappaleita. |
.delete_if | Luettelo | Poista elementtejä käyttämällä valinnaista koodilohkoa. Katso Rubyn delete_if -menetelmän asiakirjat. |
jä? | Totuusarvo |
Palauttaa |
.first | Elementti tai nolla |
Palauttaa ensimmäisen elementin tai |
.index (* args, & lohko) | INT tai Nil |
Palauttaa luettelon ensimmäisen elementin indeksin. Jos argumentin sijasta annetaan lohko, funktio palauttaa sen ensimmäisen elementin indeksin, jonka lohko on tosi. |
.rindex(*args, &block) | INT tai Nil |
Palauttaa luettelon viimeisen elementin indeksin. Jos argumentin sijasta annetaan lohko, funktio palauttaa sen ensimmäisen elementin indeksin, jonka lohko on tosi. |
.last | Elementti tai nolla |
Palauttaa viimeisen elementin tai |
.length | Int. |
Palauttaa luettelon elementtien määrän. |
.size | Int. |
Pituuden alias. |
.each(*args, &block) | Luettelo |
Kutista kunkin luettelon elementin jälkeen lohkon, joka välittää elementin lohkon parametrina. |
Toimitusosoite
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.name | merkkijono | Palauttaa toimitusosoitteeseen liitetyn henkilön nimen. |
.address1 | merkkijono | Palauttaa toimitusosoitteen kadunosoitteen osan. |
.address2 | merkkijono | Palauttaa toimitusosoitteen kadunosoiteosan valinnaisen lisäkentän. |
.phone | merkkijono | Palauttaa toimitusosoitteen puhelinnumeron. |
.city | merkkijono | Palauttaa toimitusosoitteen kaupungin. |
.zip | merkkijono | Palauttaa Toimitusosoitteen postinumero. |
.province | merkkijono | Palauttaa toimitusosoitteen maakunta/osavaltion. |
.province_code | merkkijono | Palauttaa toimitusosoitteen maakunta/osavaltion lyhenidun arvon. |
.country_code | merkkijono | Palauttaa toimitusosoitteen maan lyhenidun arvon. |
Raha
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
. derived_from_presentment (customer_cents:X) | Raha | Muuntaa summan (senttiä) asiakkaan paikallisesta (esitys-) valuutasta kaupan valuuttaan. Tämä menetelmä hyväksyy customer_cents parametrin, joka hyväksyy luvun senttejä. Esimerkiksi Money.derived_from_presentment(customer_cents: 500) . |
.new | Raha | Luo uuden objektin, joka edustaa hintaa. |
.zero | Raha |
Luo uuden objektin, jonka hinta on nolla. |
+ | Raha | Lisää kaksi Money objektia. |
- | Raha | Vähentää yhden Money objektin toisesta sovelluksesta. |
* | Raha | Kertaa Money objektin numerolla. |
Esimerkkejä rahankäytöstä
Luo Money
object, joka edustaa 1000 senttiä tai $10.
Luo Money
object, joka edustaa $1, ja sitten kertoo, että summa on 50. Palauttaa Money
object, joka edustaa $50.
Versio
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.id | Kokonaisluku | Palauttaa version tunnusnumeron. |
.price | Raha | Palauttaa version yksikköhinnan. |
.product | Tuote | Palauttaa tuoteversion liittyvän tuotteen. |
.SKUs | Luettelo<String> | Palauttaa tuoteversion SKU-koodit, joita käytetään usein varaston seurannassa. |
.title | Merkkijono | Palauttaa version nimen. |
Tuote
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.id | Kokonaisluku | Palauttaa tuotteen tunnusnumeron. |
.gift_card? | Totuusarvo | Palauttaa, onko tuote lahjakortti. |
.tags | Luettelo <Tag> | Palauttaa luettelon merkkijonoista, jotka edustavat tälle tuotteelle asetettuja tunnisteita. |
.product_type | Merkkijono | Luokittelus, johon tuote voidaan merkitä, ja sitä käytetään yleisesti suodatus-ja hakutuloksissa. |
.myyjä | Merkkijono | Palauttaa tämän tuotteen myyjän. |
Ytimen
Kernel on Ruby-moduuli, joka sisältyy jokaiseen luokkaan. Tämän takia sen metodit ovat saatavilla jokaiseen kohteeseen. Ne käyttäytyvät samoin kuin globaalit funktiot muissa kielissä.
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.exit | Mikään | Lopettaa senhetkisen komentosarjan suorituksen ilman virhettä. Jos tämä suoritetaan ennen kuin jotain on määritetty Output.cart , komentojonolla ei ole vaikutusta. Tämä on hyödyllinen tapa poistua komentosarjasta, esimerkiksi jos asiakas ei ole oikeutettu suorittamaan komentosarjaa. |
Ytimen esimerkki
Rivikohtaiset menetelmät
Seuraavat menetelmät ovat käytettävissä vain Rivikohtien komentosarjoissa:
Ostoskori
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.subtotal_price_was | Raha | Palauttaa kaupan välisumman, ennen kuin alennuksia on sovellettu. |
.subtotal_price_changed? | Totuusarvo | Palauttaa, onko välisumhinta muuttunut. |
LineItem-objekti
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.change_line_price(Money new_price, { message: String }) | Raha | Muuta rivikohdan hintaa määritettyyn summaan. A message on pakollinen. on new_price oltava alhaisempi kuin nykyisellä hinnalla. |
.original_line_price | Raha | Palauttaa rivikohdan alkuperäisen hinnan, ennen kuin komentosarjat ja alennukset otettiin käyttöön. |
.line_price_was | Raha | Palauttaa rivikohdan hinnan, ennen kuin senhetkinen komentosarja on käyttänyt muutoksia. |
.line_price_changed? | Totuusarvo | Palauttaa, onko rivikohan hinta muuttunut. |
.change_properties(hash new_properties, { message: String }) | Hash | Asettaa rivikohtaa varten uusia ominaisuuksia. Alkuperäisten ominaisuuksien hajautus tallennetaan properties_was kohteeseen, ja menetelmään siirrellä ominaisuuksien hajautus muuttuu rivikohdan uusiksi ominaisuuiksi. |
.properties_was | Hash | Palauttaa rivikohdan alkuperäisten ominaisuuksien hajautuksen ennen muutosten soveltamista. |
.properties_changed? | Totuusarvo | Palauttaa, onko rivikohan ominaisuuksia muutettu. |
.split({ take: Integer }) | LineItem-objekti | Jaot rivikohdan kahteen rivikohtaan. take määrittää, mitä määrä poistetaan alkuperäisestä rivikohdasta uuden rivikohdan luomiseksi. |
.split-esimerkki
Tämä esimerkkijono jakaa rivikohdan nimeltä original_line_item
into kahteen rivikohtaan. Uuden rivikohdan määrä on 1 (take: 1
) määrittämällä. Komentosarja käyttää sitten alennettua hintaa uudelle rivikohtaan, jossa on viesti "kolmas hattu 5 dollariin".
Versio
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.compare_at_price | Raha | Palauttaa version vertailuhinnan. Palautettu arvo on nolla , jos versiolla ei ole vertailuhintaa. |
Toimitustavat
Seuraavat menetelmät ovat käytettävissä toimituskomentosarjoissa:
Syöttää
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.shipping_rates | ShippingRateList | Palauttaa luettelon kaikista toimitushinnoista. |
ShippingRateList
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.delete_if | ShippingRateList | Poista toimitusmaksut käyttämällä valinnaista koodilohkoa. Katso Ruby delete_if -menetelmändokumentaatio. |
lajitella! | ShippingRateList | Lajittele toimituskulut vertailuoperaattorin käyttämällä tai käytä valinnaista koodilohkoa. Katso Ruby sort! -menetelmändokumentaatio. |
.sort_by! | ShippingRateList | Lajittele toimitusmaksut käyttämällä valinnaista koodilohkoa. Katso Ruby sort_by! -menetelmändokumentaatio. |
ShippingRate
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.code | Merkkijono | Palauttaa toimitusmaksun koodin. |
.markup | Raha | Palauttaa toimitusmaksun marginaalin, jos mahdollista. |
.name | Merkkijono | Palauttaa toimituskulun nimen. Voidaan muokata käyttämällä change_name -toimintoa. |
.price | Raha | Palauttaa toimitusmaksun hinnan. |
.lähde | Merkkijono | Palauttaa toimitushintaan liittyvän lähteen (kuljetuspalvelun), jos sellainen on. Sitä ei voi muokata. |
.change_name(String new_name) | Merkkijono | Muuttaa toimituskulujen nimeä (enintään 255 merkkiä). Lähteen muuttaminen, poistaminen tai piilottaminen ei ole mahdollista. |
.apply_discount(Money discount, { message: String }) | Raha | Ottaa käyttöön määritetyn kiinteän summan alennuksen. Hinnan hintaa ei voi vähentää alle 0. Viesti on pakollinen. |
.phone_required? | Totuusarvo | Palauttaa true , jos puhelinnumero on pakollinen toimitusmaksun saadakseen tai false Jos puhelinnumeroa ei tarvita. |
Maksutavat
Seuraavat menetelmät ovat käytettävissä maksukomentosarjoissa:
Syöttää
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.payment_gateways | PaymentGatewaysList | Palauttaa luettelon kaikista kaupan maksuportaaleja. |
PaymentGatewayList
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.delete_if | PaymentGatewayList | Poista maksuportaaleja käyttämällä valinnaista koodilohkoa. Katso Ruby delete_if -menetelmändokumentaatio. |
lajitella! | PaymentGatewayList | Lajittele maksuportaaleja vertailuoperaattoria käyttäen tai käytä valinnaista koodilohkoa. Katso Ruby sort! -menetelmändokumentaatio. |
.sort_by! | PaymentGatewayList | Voit lajitella maksuportaaleja käyttämällä valinnaista koodilohkoa. Katso Ruby sort_by! -menetelmändokumentaatio. |
Maksuportaalia
Tapa | Palautustyyppi | Kuvaus |
---|---|---|
.name | Merkkijono | Palauttaa maksuportaalin nimen. |
.enabled_card_brands | Luettelo<String> |
Jos maksuportaalissa tuetaan luottokortteja, se palauttaa luettelon luottokortyypeistä, jotka kauppa hyväksyy. Jos maksuportaali ei tue luottokortteja, funktio palauttaa tyhjän luettelon. |
.change_name(String new_name) | Merkkijono | Muuttaa maksuportaalin nimen. Logoilla varustettuja maksuportaaleja ei voi nimetä uudelleen. |
Esimerkkejä
Kun asiakas tilaa seuraavasta komentorivikomentosarjasta esimerkin, joka ei ole lahjakortti, tuotteen hintaa alennetaan $9 mennessä. Näkyvillä on myös kokonaissumma, jonka asiakas on käyttänyt kaikkien kauppasi käyntien aikana:
Lisätietoja
Lisätietoja aiheesta: