Shopify Flow'daki koşullar

Shopify Flow'da durumlar, tetikleyiciler bir iş akışı başlattıktan sonra işlem gerçekleştirilip gerçekleştirilmediğini belirler. Bir koşul belirlediğinizde mağazanızdaki verilerden alınan bir değer ve mantıksal operatör seçip bunları karşılaştıracağınız değeri manuel olarak ayarlarsınız.

Flow ile kullanılan veri türleri

Herhangi bir Flow koşulunda ilk değer, mağazanızdan alınan verilerdir ve GraphQL Admin API'sinden alınır.

Flow aşağıdaki veri türlerini destekler:

  • Reel Sayı: Reel sayı değerleri ondalık miktarı olan sayılardır. Örneğin 4,25.
  • Tam Sayı: Tam sayı değerleri, ondalık miktarı olmayan sayılardır. Örneğin 42.
  • Tarih: Tarih değerleri, tarihin sayısal temsilidir. Örneğin, 01012021.
  • Dize: Dize değerleri metindir. Dize değerleri kullanılarak yapılan karşılaştırmalar büyük/küçük harfe duyarlı değildir.
  • Boole: Boole değerleri doğru veya yanlıştır.
  • Enum: Enum değerleri, bir değişkenin önceden tanımlanmış sabitler kümesi olmasına izin veren veri gruplarıdır.

Flow'da kullanılan mantıksal operatörler

Mantıksal operatörler, koşulunuzun nasıl uygulandığını tanımlar. Koşullar, bir siparişin toplamının belirli bir tutarın üzerinde olup olmadığı veya müşterinin pazarlama kabul edip etmediği gibi basit özellikleri kontrol eder. Mantıksal operatörler daha karmaşık özellikleri de kontrol edebilir.

Flow aşağıdaki operatörleri kullanabilir:

Şuna eşit:

Şuna eşit, aynı olup olmadıklarını görmek için değerleri karşılaştırır. Aşağıdaki örnekte, order.currentTotalDiscountsSet.shopMoney.amount değeri mağaza verilerinizden alınmış ve ikinci değer olan 50 ile karşılaştırılmıştır.

Alınan veri 50'ye eşitse siparişi iptal etmek için

İlk değer 50'ye eşitse koşul doğru olur. Sipariş iptal edilir.

Şuna eşit değil:

Şuna eşit değil, aynı olup olmadıklarını görmek için değerleri karşılaştırır. Aşağıdaki örnekte, order.currentTotalDiscountsSet.shopMoney.amount değeri mağaza verilerinizden alınmış ve ikinci değer olan 50 ile karşılaştırılmıştır.

Alınan veri 50'ye eşit değilse siparişi iptal etmek için

İlk değer 93'e eşitse koşul doğru olur. Sipariş iptal edilir.

"Şu değerden yüksek" ve "Şu değerden yüksek veya ona eşit"

Şu değerden yüksek ve Şu değerden yüksek veya ona eşit, ilk değerin ikinci değerden yüksek veya yüksek ya da eşit olup olmadığını görmek için değerleri karşılaştırır. Aşağıdaki örnekte, order.currentTotalDiscountsSet.shopMoney.amount değeri mağaza verilerinizden alınmış ve ikinci değer olan 50 ile karşılaştırılmıştır.

Alınan veri 50'den yüksekse siparişi iptal etmek için

Mağazanızdan alınan değer 137 ise 137 50'den yüksek olduğundan koşul doğrudur. Sipariş iptal edilir.

"Şu değerden düşük" ve "Şu değerden düşük veya ona eşit"

Şu değerden düşük ve Şu değerden düşük veya ona eşit, ilk değerin ikinci değerden düşük veya düşük ya da eşit olup olmadığını görmek için değerleri karşılaştırır. Aşağıdaki örnekte, order.currentTotalDiscountsSet.shopMoney.amount değeri mağaza verilerinizden alınmış ve ikinci değer olan 50 ile karşılaştırılmıştır.

Alınan veri 50'ye eşit veya 50'den düşükse siparişi iptal etmek için

Mağazanızdan alınan değer 47 ise 47 50'den düşük veya ona eşit olduğundan koşul doğrudur. Sipariş iptal edilir.

Herhangi biri

Herhangi bir operatörü, birinci değer girişinin ikinci değer girişindeki herhangi bir değeri içerip içermediğini görmek için bir veri dizisindeki değerleri karşılaştırır. Kontrol edilecek değerler ayrı ayrı girilip ardından enter tuşuna basılmalıdır. Herhangi bir operatörünün boş bir dizide kullanılması, yanlış bir değerlendirmeyle sonuçlanır. Aşağıdaki örnekte, order.lineitem.product.title değeri mağaza verilerinizden alınmış ve şu ikinci değer kümesiyle karşılaştırılmıştır: ananas, guava, kivi.

Alınan veri ananas, guava veya kivi içeriyorsa siparişi iptal etmek için

Mağazanızdan alınan değer guavaysa guava, ananas, guava ve kivi dizisinin içinde yer aldığından koşul doğrudur. Sipariş iptal edilir.

Herhangi biri değil

Herhangi biri değil, birinci değer girişinin ikinci değer girişindeki herhangi bir değeri içerip içermediğini görmek için veri dizisindeki değerleri karşılaştırır. Kontrol edilecek değerler ayrı ayrı girilip ardından enter tuşuna basılmalıdır. Aşağıdaki örnekte, order.lineitem.product.title değeri mağaza verilerinizden alınmış ve şu ikinci değer kümesiyle karşılaştırılmıştır: ananas, guava, kivi.

Alınan veri ananas, guava veya kivi içermiyorsa siparişi iptal etmek için

Mağazanızdan alınan değer ahududuysa ahududu, ananas, guava ve kivi dizisinin içinde yer almadığından koşul doğrudur. Sipariş iptal edilir.

Şunu içerir:

Şunu içerir, ilk değer girişinin ikinci değer girişindeki verileri içerip içermediğini görmek için değerleri karşılaştırır. Aşağıdaki örnekte, order.lineitem.product.title değeri mağaza verilerinizden alınmış ve ikinci değer olan "scrape" ile karşılaştırılmıştır.

Alınan veri

Mağaza verilerinizden alınan değer "skyscraper" ise koşul doğrudur. Çünkü "scrape" dizesinin tümü "skyscraper" dizesinin içinde yer alır. Sipariş iptal edilir.

Şunu içermez:

Şunu içermez, ilk değer girişinin ikinci değer girişindeki verileri içerip içermediğini görmek için değerleri karşılaştırır. Aşağıdaki örnekte, order.lineitem.product.title değeri mağaza verilerinizden alınmış ve ikinci değer olan "scrape" ile karşılaştırılmıştır.

Alınan veri

Mağaza verilerinizden alınan değer "scrap-metal" ise koşul doğrudur çünkü scrape dizesinin tümü "scrap-metal" dizesinin içinde yer almaz. Sipariş iptal edilir.

Şununla başlar:

Şununla başlar, ilk değerin, ikinci değerdeki verilerle başlayıp başlamadığını görmek için değerleri karşılaştırır. Aşağıdaki örnekte, order.shippingAddress.country değeri mağaza verilerinizden alınmış ve ikinci değer olan "Birleşik" ile karşılaştırılmıştır.

Alınan veriler Birleşik dizesi ile başlıyorsa siparişi iptal etmek için

Mağazanızdan alınan değer Birleşik Krallık ise Birleşik dizesi, Birleşik Krallık dizesini başlattığından koşul doğru olur. Sipariş iptal edilir.

Şununla başlamaz:

Şununla başlamaz, ilk değerin, ikinci değerdeki verilerle başlayıp başlamadığını görmek için değerleri karşılaştırır. Aşağıdaki örnekte, order.shippingAddress.country değeri mağaza verilerinizden alınmış ve ikinci değer olan "Birleşik" ile karşılaştırılmıştır.

Alınan veriler

Mağazanızdan alınan değer Kanada ise, Kanada dizesi Birleşik Krallık'ı başlatmadığından koşul doğrudur. Sipariş iptal edilir.

Şununla biter:

Şununla biter, ilk değerin, ikinci değerdeki verilerle bitip bitmediğini görmek için değerleri karşılaştırır. Aşağıdaki örnekte, order.lineitems.product.title değeri mağaza verilerinizden alınmış ve ikinci değer olan "last-available" ile karşılaştırılmıştır.

Alınan veriler

Mağazanızdan alınan değer "athletic socks last-available" ise "athletic socks last-available" dizesi "last-available" ile bittiğinden koşul doğrudur. Sipariş iptal edilir.

Şununla bitmez:

Şununla bitmez, ilk değerin, ikinci değerdeki verilerle bitip bitmediğini görmek için değerleri karşılaştırır. Aşağıdaki örnekte, order.lineitems.product.title değeri mağaza verilerinizden alınmış ve ikinci değer olan "last-available" ile karşılaştırılmıştır.

Alınan veriler son olarak

Mağazanızdan alınan değer "athletic socks new" ise "athletic socks new" dizesi "last-available" ile bitmediğinden koşul doğrudur. Sipariş iptal edilir.

Sipariş koşulları

Her biri farklı işlemlere neden olabilecek birden fazla koşul içeren iş akışları oluşturabilirsiniz. Koşulların sırası önemlidir. Koşul kontrolü iş akışının başlangıcında başlar ve her koşul üzerinden sistematik olarak ilerler. Bir koşul sağlandığında kontrol durur.

Birden fazla koşulu karşılama

Bir koşul belirlediğinizde, birkaç ölçüt belirleyip Flow'un tüm koşullar karşılandığında mı yoksa koşullardan herhangi biri karşılandığında mı koşulu doğru kabul edip etmeyeceğini belirleyebilirsiniz.

Tüm koşullar karşılanırsa

Tüm koşullar karşılanırsa seçeneğini belirlemek, yalnızca belirlediğiniz ölçütlerden tamamının doğru olması hâlinde koşulun doğru olmasıyla sonuçlanır.

Örneğin, Kanada'da bulunan ve tek bir siparişte 500 USD'den fazla harcama yapan müşterileri etiketleyecek bir iş akışı oluşturdunuz.

İş akışı, müşteriyi yalnızca Kanada'da bulunuyorsa ve siparişte 500 USD'den fazla harcama yaptıysa etiketler. Bu koşullardan biri yanlışsa müşteri etiketlenmez.

Koşullardan herhangi biri karşılanırsa

Koşullardan herhangi biri karşılanırsa seçeneğini belirlemek, belirlediğiniz ölçütlerden herhangi birinin doğru olması hâlinde koşulun doğru olmasıyla sonuçlanır.

Örneğin, yüksek veya orta düzeyde riskli kabul edilen siparişleri etiketlemek için bir iş akışı oluşturdunuz.

İş akışı, siparişi yüksek veya orta düzeyde riskliyse etiketler. Bu koşullardan biri doğru olduğu sürece sipariş etiketlenir.

Koşulları ve işlemleri birleştirme

Bir büyük koşul yapmak için koşulları birleştirebilirsiniz. Koşullar birleştirildiğinde, koşulun tamamen doğru olması için koşulların tümünün karşılanması gerekir. Herhangi bir koşul karşılanmazsa tüm koşul yanlış olur. Aşağıdaki örnekte müşteri, pazarlama materyallerini kabul etmeli ve siparişin toplam fiyatı belirli bir eşiğe ulaşmış olmalıdır.

Müşterinin toplam harcama tutarını kontrol eden ve etiket ekleyen bir iş akışı örneği

Benzer şekilde, birden fazla eylemin çalıştırılabilmesi için eylemleri birleştirebilirsiniz. Bu örnekte, bir müşterinin, mağazada harcadığı toplam tutara göre bağlılık programı için uygun olup olmadığını denetlemek üzere birden fazla koşul kullanılır. Yukarıda verilen örnekte aşağıdaki koşullar, göründüğü sırayla denetlenir:

  1. Toplam fiyat 1000 USD değerinden büyükse ve müşteri, pazarlama amaçlı iletişimleri almayı kabul ediyorsa müşteriyi Gold etiket ile etiketleyin.
  2. Toplam fiyat 1000 USD değerinden düşük ancak 500 USD'den yüksekse ve müşteri, pazarlama amaçlı iletişimleri almayı kabul ediyorsa müşteriyi Silver etiket ile etiketleyin.
  3. Müşteri 200 USD'den fazla harcama yapmışsa ve pazarlama amaçlı iletişimleri almayı kabul ediyorsa müşteriyi Bronze etiket ile etiketleyin.

Koşullardaki statik ve dinamik veriler

Genellikle, bir koşuldaki ikinci değer, manuel olarak girilen statik bir değerdir. Bu değer, her iş akışı çalıştırmasında aynı kalır.

İkinci değerin alanı </> simgesini gösteriyorsa dinamik değerler kullanabilirsiniz. Dinamik değerler, her iş akışı çalıştırmasında mağaza verilerinizden alınır. Dinamik bir değer kullanmak için </> simgesine tıklayın ve kontrol etmek istediğiniz değeri seçin. Dinamik değerler tüm alanlarda kullanılamaz.

Örneğin, siparişin fatura adresindeki ülke, kargo adresindeki ülkeyle eşleştiğinde siparişi etiketleyen bir iş akışı oluşturdunuz.

Müşterinin fatura ve kargo ülkelerinin aynı olup olmadığını kontrol etmek için RHS verilerini kullanarak siparişi etiketleyen bir iş akışı örneği.

Bu örnekte, ikinci değer için kontrol edilecek statik bir dizeyi manuel olarak belirtmek yerine, hem birinci hem de ikinci değerler mağazanızın verilerinden alınır. Müşteri tarafından sağlanan fatura adresindeki ülke, müşterinin kargo adresinde belirttiği ülkeyle aynıysa koşul doğrudur ve sipariş etiketlenir.

Shopify ile satış yapmaya hazır mısınız?

Ücretsiz olarak dene