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 vuorovaikutuksessatoimituksenkanssa, 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.

Yleiset menetelmät

Seuraavat menetelmät ovat käytettävissä missä tahansa komentosarjassa:

Syöttää

Komentosarjan syötetavat
Tapa Palautustyyppi Kuvaus
.cart Ostoskori Palauttaa muutettavan ostoskorin kohteen.
.locale merkkijono Palauttaa asiakkaan sijainnin. Esimerkiksienfrtaipt-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.

Komentosarjamenetelmät, joissa käytetään ostoskorin kohdetta
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:

discount_codeon käytössä, jos ostoskoriin on sovellettu alennusta. Tämä ei välttämättä tarkoita sitä, että ostoskorin hinta muuttuu. Jos alennus koskee esimerkiksi yli $50 ostoskoreja, ja komentosarja laskee ostoskorin hinnan alle $50,discount_codeon edelleen olemassa, mutta ostoskorin hinta ei muutu.

Katso esimerkki:discount_code.

.line_items Luettelo Palauttaa luettelon, joka sisältää ostoskorissa olevat rivikohdat.
.presentment_currency Luettelo 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

Komentosarjamenetelmät, joissa käytetään CartDiscount::FixedAmount -kohdetta
Tapa Palautustyyppi Kuvaus
.code Merkkijono Palauttaa alennuskoodin, jolla alennusta sovelletaan.
.amount Raha Palauttaa alennuksen rahasumman.
.reject({ message: String }) Nil Hylkää ostoskoriin sovellettavan alennuskoodin.messagevaaditaan.
.rejected? Totuusarvo Palauttaa, josko alennuskoodi on hylätty.

CartDiscount::Percentage

Komentosarjamenetelmät, joissa käytetään CartDiscount::Percentage -kohdetta
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.messagevaaditaan.
.rejected? Totuusarvo Palauttaa, josko alennuskoodi on hylätty.

CartDiscount:: Shipping

Komentosarjamenetelmät, joissa käytetään CartDiscount:: Shipping-objektia
Tapa Palautustyyppi Kuvaus
.code Merkkijono Palauttaa alennuskoodin, jolla alennusta sovelletaan.
.reject({ message: String }) Nil Hylkää ostoskoriin sovellettavan alennuskoodin.messagevaaditaan.
.rejected? Totuusarvo Palauttaa, josko alennuskoodi on hylätty.

Asiakas

Komentosarjamenetelmät Asiakasobjektin avulla
Tapa Palautustyyppi Kuvaus
.id Kokonaisluku Palauttaa asiakkaan tunnusnumeron.
.email Merkkijono Palauttaa asiakkaan sähköpostiosoitteen.
.tags Luettelo 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-objekti

grammat Palauttaa rivikohdan kokonaispainon.
Komentosarjamenetelmät, joissa käytetään LineItem-objektia
Tapa Palautustyyppi Kuvaus
.grams
.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 tuoteversiomyydään tilauksena.

Luettelo

Komentosarjamenetelmät Luetteloobjektin avulla
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. KatsoRubyndelete_if-menetelmän asiakirjat.
jä? Totuusarvo

Palauttaatrue, jos luettelossa ei ole elementtejä.

.first Elementti tai nolla

Palauttaa ensimmäisen elementin tainilJos luettelo on tyhjä.

.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 tainilJos luettelo on tyhjä.

.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

Komentosarjamenetelmät käyttämällä ShippingAddress-objektia
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

Komentosarjamenetelmät käyttämällä Rahankohdetta
Tapa Palautustyyppi Kuvaus
. derived_from_presentment (customer_cents:X) Raha Muuntaa summan (senttiä) asiakkaan paikallisesta (esitys-) valuutasta kaupan valuuttaan. Tämä menetelmä hyväksyycustomer_centsparametrin, joka hyväksyy luvun senttejä. EsimerkiksiMoney.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ää kaksiMoneyobjektia.
- Raha Vähentää yhdenMoneyobjektin toisesta sovelluksesta.
* Raha KertaaMoneyobjektin numerolla.

Esimerkkejarahankäytöstä

Money.new(cents:1000)

LuoMoneyobject, joka edustaa 1000 senttiä tai $10.

Money.new(cents:100)*50

LuoMoneyobject, joka edustaa $1, ja sitten kertoo, että summa on 50. PalauttaaMoneyobject, joka edustaa $50.

Versio

Komentosarjamenetelmät, joissa käytetään versioobjektia
Tapa Palautustyyppi Kuvaus
.id Kokonaisluku Palauttaa version tunnusnumeron.
.price Raha Palauttaa version yksikköhinnan.
.product Tuote Palauttaa tuoteversion liittyvän tuotteen.
.SKUs Luettelo Palauttaa tuoteversion SKU-koodit, joita käytetään usein varaston seurannassa.
.title Merkkijono Palauttaa version nimen.

Tuote

Komentosarjamenetelmät tuoteobjektin avulla
Tapa Palautustyyppi Kuvaus
.id Kokonaisluku Palauttaa tuotteen tunnusnumeron.
.gift_card? Totuusarvo Palauttaa, onko tuote lahjakortti.
.tags Luettelo 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

Kernelon 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ä.

Komentosarjamenetelmät, joissa käytetään ydinobjektia
Tapa Palautustyyppi Kuvaus
.exit Mikään Lopettaa senhetkisenkomentosarjan suorituksen ilman virhettä. Jos tämä suoritetaan ennen kuin jotain on määritettyOutput.cart, komentojonolla ei ole vaikutusta. Tämä on hyödyllinen tapa poistua komentosarjasta, esimerkiksi jos asiakas ei ole oikeutettu suorittamaan komentosarjaa.

Ytimen esimerkki

customer=Input.cart.customerifcustomer&&customer.email.end_with吗?("@mycompany.com")# Employees are not eligible for this promotion.exitend

Rivikohtaiset menetelmät

Seuraavat menetelmät ovat käytettävissä vainRivikohtien komentosarjoissa:

Ostoskori

Komentosarjaobjekti käyttämällä rivikohdan komentosarjoja Ostoskorisesoluissa
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

Komentosarjamenetelmät, joissa käytetään Linekohde-objektia Rivikohtien komentosarjoissa
Tapa Palautustyyppi Kuvaus
.change_line_price(Moneynew_price, { message:String}) Raha Muuta rivikohdan hintaa määritettyyn summaan. Amessageon pakollinen. onnew_priceoltava 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(hashnew_properties, { message:String}) Hash Asettaa rivikohtaa varten uusia ominaisuuksia. Alkuperäisten ominaisuuksien hajautus tallennetaanproperties_waskohteeseen, 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.takemäärittää, mitä määrä poistetaan alkuperäisestä rivikohdasta uuden rivikohdan luomiseksi.

.split-esimerkki

Tämä esimerkkijono jakaa rivikohdan nimeltäoriginal_line_iteminto 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".

iforiginal_line_item.quantity>=3new_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_itemend

Versio

Komentosarjamenetelmät, joissa käytetään versiokohdetta Rivikohtien komentosarjoissa
Tapa Palautustyyppi Kuvaus
.compare_at_price Raha Palauttaa version vertailuhinnan. Palautettu arvo onnolla, jos versiolla ei ole vertailuhintaa.

Toimitustavat

Seuraavat menetelmät ovat käytettävissätoimituskomentosarjoissa:

Syöttää

Komentojonotavat Syöttöobjektin käyttäminen lähetyskomentosarjoissa
Tapa Palautustyyppi Kuvaus
.shipping_rates ShippingRateList Palauttaa luettelon kaikista toimitushinnoista.

ShippingRateList

Komentosarjamenetelmät, joissa käytetään ShippingRateList-objektia lähetyskomentosarjoissa
Tapa Palautustyyppi Kuvaus
.delete_if ShippingRateList Poista toimitusmaksut käyttämällä valinnaista koodilohkoa. KatsoRubydelete_if-menetelmändokumentaatio.
lajitella! ShippingRateList Lajittele toimituskulut vertailuoperaattorin käyttämällä tai käytä valinnaista koodilohkoa. KatsoRubysort!-menetelmändokumentaatio.
.sort_by! ShippingRateList Lajittele toimitusmaksut käyttämällä valinnaista koodilohkoa. KatsoRubysort_by!-menetelmändokumentaatio.

ShippingRate

Komentosarjamenetelmät, jotka käyttävät Lähetyskomentosarjat ShippingRate-objektia
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(Stringnew_name) Merkkijono Muuttaa toimituskulujen nimeä (enintään 255 merkkiä). Lähteen muuttaminen, poistaminen tai piilottaminen ei ole mahdollista.
.apply_discount(Moneydiscount, { 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 Palauttaatrue上,乔斯puhelinnumero pakollinen toimitusmaksun年代aadakseen taifalseJos puhelinnumeroa ei tarvita.

Maksutavat

Seuraavat menetelmät ovat käytettävissämaksukomentosarjoissa:

Syöttää

Komentojonomenetelmät Syöttöobjektin käyttäminen maksukomentosarjoissa
Tapa Palautustyyppi Kuvaus
.payment_gateways PaymentGatewaysList Palauttaa luettelon kaikista kaupan maksuportaaleja.

PaymentGatewayList

Script Methods-maksukomentosarja-objektin käyttäminen maksukomentosarjoissa
Tapa Palautustyyppi Kuvaus
.delete_if PaymentGatewayList Poista maksuportaaleja käyttämällä valinnaista koodilohkoa. KatsoRubydelete_if-menetelmändokumentaatio.
lajitella! PaymentGatewayList Lajittele maksuportaaleja vertailuoperaattoria käyttäen tai käytä valinnaista koodilohkoa. KatsoRubysort!-menetelmändokumentaatio.
.sort_by! PaymentGatewayList Voit lajitella maksuportaaleja käyttämällä valinnaista koodilohkoa. KatsoRubysort_by!-menetelmändokumentaatio.

Maksuportaalia

Tapa Palautustyyppi Kuvaus
.name Merkkijono Palauttaa maksuportaalin nimen.
.enabled_card_brands Luettelo

Jos maksuportaalissa tuetaan luottokortteja, se palauttaa luettelon luottokortyypeistä, jotka kauppa hyväksyy. Jos maksuportaali ei tue luottokortteja, funktio palauttaa tyhjän luettelon.

.change_name(Stringnew_name) Merkkijono Muuttaa maksuportaalin nimen. Logoilla varustettuja maksuportaaleja ei voi nimetä uudelleen.

Esimerkkeja

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:

Asiakas = syötteet. Asiakassyöte line_items. Jokainen do | Line | Tuote = Line seuraava, jos tuote gift_card? Line _ change_line_price (Line line_price-raha. uusi (sentti-900), viesti: asiakas. total_spent) Lopeta lähtö. cart = syöttö.

Lisätietoja

Lisätietoja aiheesta:

Valmiina aloittamaan Shopifyssa?

Kokeile ilmaiseksi