カスタム列で使用できる関数の一覧と一般的な概要については、カスタム列内の関数についての記事をご覧ください。
テンプレート関連のカスタム列の式を作成する際、[関数] メニューにコンテキスト依存のサブメニュー オプションが表示されます。オプションに入力デバイスを重ねると、追加情報が表示されます。式内で右クリックすると、現在のコンテキストで有効な関数のメニューが表示されます。
テンプレートのカスタム列標準関数
次のようなオプションがあります。
- 論理 - 標準論理関数のオプション(
if
、and
、not
、or
、if_error
、is_error
、is_not_finite
など)。 - テキスト - テキスト関数のオプション(
concat
、is_empty
、trim
、starts_with
、ends_with
、search
、substitute
、right
、left
、contains
、upper
、lower
、length
、clean_keyword
、string_len_byte
、regex_extract
、regex_match
、regex_replace
、search_byte
、bmm
、reduce_word
、title_case
、unescape
、substitute_all
など) - 算術 - 算術関数のオプション(
round
、ceiling
、floor
など) - 変換 - 変換関数のオプション(
to_text
、to_number
、extract_percentage
など)。 - 日付 - 日付関数のオプション(
date
、day
、month
、quarter
、year
、weekday
、weeknum
、daynum
、days_between
、offset_days
、offset_months
、offset_years
、today
、yesterday
、week_start_sunday
、week_start_monday
、month_start
、year_start
など)(カスタム列内の関数で説明) - 集計 - 集計関数のオプション(
min
、max
、any
など)。
テンプレートのカスタム列関数
テンプレートのコンテキストでは、さまざまなカスタム列関数を利用できます。次の表に、これらの関数を示します。
備考
- これらの関数はテンプレート機能で使用できます。
- "value" という単語が引用符で囲まれている場合は、テキスト値が必要です。
- needle、needles、haystack という用語が、次の表の関数で使用されます。needle または needles は、一連の値である haystack 内にある特定の値または複数の値を示します。
サブメニュー | 戻り値の型 | 自動関数の式 | 説明 |
---|---|---|---|
論理 | ブール値または数値 | is_not_finite(value, alternate) |
value を評価します。value が数値または有限数ではない場合、alternate を評価します。それ以外の場合は、value を返します。 |
ブール値、数値、テキスト | if_error(value, error_value) |
value を評価します。value がエラーを返した場合、error_value で定義されている代替値を評価します。それ以外の場合、value を返します。 |
|
ブール値、数値、テキスト | is_error(value) |
value がエラーの場合、true と評価します。 |
|
テキスト | テキスト | clean_keyword(“text”, “replacement”) |
文字列をスキャンし、広告プラットフォームでキーワード text としてサポートされていない文字を replacement テキスト値に置き換えます。 |
数値 | string_len_byte(“value”) |
フィード属性またはテキスト値のバイト数を返します。 | |
テキスト | regex_extract(“value”, “regular_expression”) |
value を検索し、regular_expression に一致するテキストを返します。 |
|
ブール値 | regex_match(“value”, “regular_expression”) |
value が regular_expression のすべてまたは一部と一致する場合に true と評価します。この関数は if 関数の条件として使用します。 |
|
テキスト | regex_replace(“value”, “regular_expression”, “replacement”) |
value で regular_expression に一致するテキストを検索し、一致するテキストを replacement に置き換えます。 |
|
数値または null | search_byte(“needle”, “haystack”) |
haystack 内の最初の needle の開始位置をバイトで返します。needle が haystack 内にない場合は null を返します。カウントは 1 から開始されます(0 ではありません)。 常に広告主の言語に沿った方向でカウントされます。 主に、ラテン文字セットを使用しない言語(日本語や中国語など)で利用します。 |
|
テキスト | reduce_word(“value”, length, “delimiter”) |
max_length を上限として、文字列の先頭から区切り文字まで可能な限り多くの文字を返します(区切り文字自体は含みません)。value が max_length の範囲に収まっている場合、渡された value をそのまま返します。 |
|
テキスト | title_case(“value”) |
value の語頭を大文字に変換します。フィード属性または静的なテキスト値を指定できます。 |
|
テキスト | unescape(“value”) |
URL エンコードされた URL をデコードします。 | |
テキスト | substitute_all(“haystack”, replacement, “needles”) |
属性の複数の値を 1 つの値に置き換えます。 | |
変換 | 数値 | extract_percent(“x%”) |
比率、数値、テキスト値をパーセントに変換します。 |
集計 | ブール値、数値、テキスト | max(value) |
テンプレートによって選択されたアイテムのうち、数値フィード属性の最大 value を返します。 |
ブール値、数値、テキスト | min(value) |
テンプレートによって選択されたアイテムのうち、数値フィード属性の最小 value を返します。 |
|
ブール値、数値、テキスト | any(value) |
テンプレートによって選択されたいずれかのアイテムから属性の value を選択します。この関数では、実行ごとに異なる value が出力される可能性があります。 |
フィードとテンプレートのカスタム列に関数を使用する
フィードとテンプレートのカスタム列で関数を使用する手順は次のとおりです。
- メニューから関数を選択します。メニューの関数に入力デバイスを重ねると、その関数の詳細が表示されます。
- 式に含める関数を選択します。関数の書式設定されたテキストは、黒いプレースホルダー要素で表示されます。
- プレースホルダー要素をユースケースに固有の情報に置き換えます。例については、If 論理関数と Concat テキスト関数をご覧ください。
緑色
のテキストは編集しないでください。これは関数に必須の要素です。
テンプレートを作成する際、現在のコンテキストで有効な関数だけが表示されます。
If 論理関数
if(condition, if_true, if_false)
これは、定義された条件を true または false として評価し、条件が true か false かに応じて if_true
と if_false
で指定された値を出力します。
condition
を編集して、評価する条件を定義します。if_true
を編集して、条件が true の場合の動作を定義します。if_false
を編集して、条件が false の場合の動作を定義します。
テキスト関数の連結
concat("text1", “text2”)
これは、2 つ以上の値のコンテンツを結合するテキスト関数です。値を追加するには、カンマとその後に値を追加します。値はテキストでなければなりませんが、他の関数から取得できます。関数 text_to
は、列の値をテキストに変換します。
concat(“Origin “, f:"Origin"),” Destination ”, f:"Destination_country", f:"Destination_name”,” - ”, text_to(f:"Price"))
関数の値のエラーに対応する
空の値または無効な値が返されると、キャンペーンや広告などのアイテムが生成されません。エラーに対処するには、次のオプションを使用するとトラブルシューティングを行えます。
-
if_error(parameter,alternate)
で関数をラップします。
パラメータは、関数、フィード列、テキスト、またはそれらの組み合わせのいずれかです。関数がエラーまたは空の値を返した場合、代わりにalternate
が返されます。
例:if_error(f:"brand", "Unbranded")
結果: 値がある場合はf:"brand"
が、値がない場合は"Unbranded"
が返されます。
通常、パラメータが無効な場合、関数全体も無効になります。
例:if(f:"product_type" = "shoes", 1, 2)
フィード アイテムにproduct_type
がない場合、if 式全体が無効です。if_error
関数でif
関数をラップします。
例:if_error(if(f:'product_type" = "shoes", 1, 2), 3)
結果:product_type
がフィード アイテムで定義されていない場合、"3" が返されます。
-
is_error
の関数をラップします。
if(is_error(parameter), alternate, value)
を使用します。
パラメータにフィード列参照を含めることができます。f:”column_name”
はフィード列を参照します。
エラーが返される場合(フィード列が空の場合など)は、alternate
が使用されます。それ以外の場合は、value
が使用されます。
- 集計を使用します。
min(value)
、max(value)
またはany(value)
を使用します(各広告グループの属性の値が 1 つのみの場合を除く)。広告グループ内に価格が異なる商品がある場合は、max(f:”price")
を指定します。
論理エラーに対処する
論理エラーに対処するには、if(condition, true, false)
関数を使用して、望ましくない結果をフィルタまたは変更します。たとえば、if
関数を使用して長すぎるテキストを短くします。