HubL関数

Last updated:

HubLの関数は、パラメーターを受け入れて値を生成するという点でフィルターに似ています。ただし、全ての関数を初期テンプレート値に適用する必要はありません。HubLの関数は、HubSpot環境の他の領域と相互作用するためです。

古いウェブサイトを維持している場合は、非推奨となったHubL関数のリストもご確認ください。

この記事では、各HubL関数とその構文についての詳細を確認できます。

append

リストの末尾に1つの項目を追加します。

{% set numbers_under_5 = [1,2,3] %} {% do numbers_under_5.append(4) %} {{numbers_under_5}}[1, 2, 3, 4]
ParameterTypeDescription
item
Any

リストに付加する項目。

blog_all_posts_url

blog_all_posts_url関数は、指定されたブログ内の全てのブログ記事のリストページを指す完全なURLを返します。 

以下の例は、この関数をアンカーのhrefとして使用する方法を示しています。

<a href="{{ blog_all_posts_url("default") }}">All Marketing blog posts</a><a href="http://www.hubspot.com/marketing/all">All Marketing blog posts</a>
ParameterTypeDescription
selected_blog
Blog id or "default"

どのブログを使用するかを指定します。ブログIDはモジュールのブログフィールドによって返されます。

blog_author_url

blog_author_url関数は、指定されたブログ執筆者のリストページを指す完全なURLを返します。

以下の例は、この関数をアンカーのhrefとして使用する方法を示しています。これをblog_authors関数と組み合わせる例については、blog_authors関数の説明を参照してください。

<a href="{{ blog_author_url("default", "brian-halligan") }}">Brian Halligan</a><a href="http://blog.hubspot.com/marketing/author/brian-halligan">Brian Halligan</a>
ParameterTypeDescription
selected_blog
Blog ID or "default"

執筆者のリストページがどのブログにあるかを指定します。特定の執筆者を指定する場合はIDを、既定のブログを指定する場合は"default"を使用します。ブログIDはモジュールのブログフィールドによって返されます。

author_slug
String or HubL Var

どの執筆者にリンクするかを指定します。content.blog_post_author.slugまたはハイフン付きの小文字の名前を使用できます。例:"jane-doe"

blog_authors

blog_authorsは、指定されたブログのブログ執筆者オブジェクトからなるシーケンスを、スラッグの昇順に並べ替えて返します。このシーケンスを変数の中に保存して反復処理すると、カスタム執筆者記事フィルターを作成できます。

各執筆者による公開中の記事の数にアクセスするには、author.live_postsを使用できます。

注:この関数では執筆者数の上限が250に制限されています。この関数には1ページあたり10回の呼び出しという上限もあります。

{{ blog_authors("default", 250) }} {% set my_authors = blog_authors("default", 250) %} <ul> {% for author in my_authors %} <li><a href="{{ blog_author_url(group.id, author.slug) }}">{{ author }}</a></li> {% endfor %} </ul>[ Brian Halligan, Dharmesh Shah, Katie Burke, Kipp Bodnar] <ul> <li><a href="http://blog.hubspot.com/marketing/author/brian-halligan">Brian Halligan</a></li></li> <li><a href="http://blog.hubspot.com/marketing/author/dharmesh-shah">Dharmesh Shah</a></li></li> <li><a href="http://blog.hubspot.com/marketing/author/katie-burke">Katie Burke</a></li></li> <li><a href="http://blog.hubspot.com/marketing/author/kipp-bodnar">Kipp Bodnar</a></li></li> </ul>
ParameterTypeDescription
selected_blog
Blog ID or "default"

どのブログを使用するかを指定します。特定のブログを指定する場合はIDを、既定のブログを指定する場合は"default"を使用します。ブログIDはモジュールのブログフィールドによって返されます。

limit
Integer

取得する執筆者数の上限を設定します。

以下の例の第1行は、この関数によって執筆者オブジェクトのシーケンスがどのように返されるかを示しています。例の残りの部分では、シーケンスを変数の中に保存し、執筆者オブジェクトを反復処理して執筆者オブジェクトのリンクをいくつか出力する例を示しています。この例では、ブログに4人の執筆者がいることを想定しています。

blog_by_id

blog_by_id関数はID別にブログを返します。以下のコード例は、この関数を使ってハイパーリンクされたリスト項目を生成する方法を示しています。

注:この関数には1ページあたり10回の呼び出しという上限があります。

{% set my_blog = blog_by_id(47104297) %} <ul> <li> <a href="{{ my_blog.absolute_url }}">{{my_blog.html_title}}</a> </li> </ul><ul> <li> <a href="http://blog.bikinginearnest.com/outdoors">Outdoor biking for the earnest</a> </li> </ul>
ParameterTypeDescription
selected_blog
Blog ID or "default"

どのブログを使用するかを指定します。特定のブログを指定する場合はIDを、既定のブログを指定する場合は"default"を使用します。ブログIDはモジュールのブログフィールドによって返されます。

blog_page_link関数は、ページ番号付きのブログリスト表示のURLを生成します。この関数は1つの数値パラメーターを受け入れ、これによって現在のページ、次のページ、前のページ、または特定のページのリンクを生成できます。この関数は通常、ページ番号付きアンカータグのhref属性で使用され、ブログ一覧テンプレートでこの関数を使用する必要があります。

以下に示す例では、アンカーhrefとしてこの関数を使用しています。最初の例では、現在のページを出力します。2番目の例では、第7ページを指定する数値7をパラメーターとして受け入れています。3番目の例では、現在のページからの相対ページ番号のリンクを生成する目的でnext_page_num変数を使用しています(前のページを指定するにはlast_page_num変数を使用できます)。最後の例では、current_page_num変数と+演算子を使用して、現在のページより4つ大きい番号へのリンクを作成しています。

<a href="{{ blog_page_link(current_page_num) }}">Current page</a> <a href="{{ blog_page_link(7) }}">Page 7</a> <a href="{{ blog_page_link(next_page_num) }}">Next</a> <a href="{{ blog_page_link(current_page_num + 4) }}">Page Plus 4</a><a href="http://designers.hubspot.com/blog/page/1">Page 1</a> <a href="http://designers.hubspot.com/blog/page/7">Page 7</a> <a href="http://designers.hubspot.com/blog/page/2">Next</a> <a href="http://designers.hubspot.com/blog/page/5">Page Plus 4</a>
Use this table to describe parameters / fields
ParameterTypeDescription
page
Number or HubL variable

ページ番号のURLまたはHubL変数の生成に使用するページ番号。

blog_popular_posts関数は、特定数の人気のある記事をシーケンスとしてレンダリングします。この記事シーケンスを変数の中に保存することができ、forループでそれを反復処理すると、人気のある記事を示すカスタム記事リストを作成できます。 

この関数の結果は6時間キャッシュされます。キャッシュを使用せずにHubLでブログ記事を取得するには、代わりにblog_recent_tag_postsを使用することをお勧めします。

以下のサンプルコードでは、最初の行にこの関数でシーケンスを取得する方法が示されています。シーケンスは変数として保存されます。以下のコードでは、変数を使用してシーケンスをループ処理しています。ブログ記事の変数では例外なく、contentではなく個々のループ項目の名前を使用する必要があります。この例では、pop_post.nameが使用されています。この手法は、ブログテンプレートやウェブサイトページに対して使用できます。

注:この関数では記事数の上限が200に制限されています。この関数には1ページあたり10回の呼び出しという上限もあります。

{% set pop_posts = blog_popular_posts("default", 5, ["marketing-tips", "sales-tips"], "popular_past_month") %} {% for pop_post in pop_posts %} <div class="post-title">{{ pop_post.name }}</div> {% endfor %}[Popular post title 1, Popular post title 2, Popular post title 3, Popular post title 4, Popular post title 5] <div class="post-title">Popular post title 1</div> <div class="post-title">Popular post title 2</div> <div class="post-title">Popular post title 3</div> <div class="post-title">Popular post title 4</div> <div class="post-title">Popular post title 5</div>
Use this table to describe parameters / fields
ParameterTypeDescription
selected_blog
Blog ID or "default"

どのブログを使用するかを指定します。特定のブログを指定する場合はIDを、既定のブログを指定する場合は"default"を使用します。

limit
Integer

シーケンスに追加する投稿数(最大200)を指定します。指定しない場合は、既定で10に設定されます。

tag_slug
Array

投稿を絞り込むための任意のタグのリスト。

time_frame
String

アナリティクス上で投稿を絞り込むための任意の期間。"popular_past_year"が既定です。"popular_all_time""popular_past_year""popular_past_six_months""popular_past_month"のいずれかにする必要があります。 

blog_post_archive_url

blog_post_archive_url関数は、指定されたブログ上の特定の日付値に関するアーカイブリストページの完全なURLを返します。この関数には2つの必須パラメーターと2つの任意指定パラメーターがあります。最初のパラメーターはブログIDまたは単純なキーワード"default"です。2番目は、どの年のアーカイブされた記事を表示するかを指定します。

任意指定パラメーターには、それぞれどの月および日のアーカイブされた記事を表示するかが格納されます。

以下の例は、この関数をアンカーのhrefとして使用する方法を示しています。

<a href="{{ blog_post_archive_url("default", 2017, 7, 5) }}">Posts from July 5th, 2017</a><a href="http://blog.hubspot.com/marketing/archive/2017/07/05">Posts from July 5th, 2017</a>
Use this table to describe parameters / fields
ParameterTypeDescription
selected_blog
Blog ID or "default"

どのブログを使用するかを指定します。特定のブログを指定する場合はIDを、既定のブログを指定する場合は"default"を使用します。

year
Integer

年。

month
Integer

月(任意)。

day
Integer

日(任意)。

blog_recent_author_posts

blog_recent_author_posts関数は、指定された執筆者のブログ記事オブジェクトからなるシーケンスを、新しい順に並べ替えて返します。この記事シーケンスを変数の中に保存することができ、forループでそれを反復処理すると、特定の執筆者のカスタム記事リストを作成できます。 

この関数は3つのパラメーターを受け入れます。最初のパラメーターはどのブログから執筆者の記事を収集するかを指定します。値は"default"、または(ブログダッシュボードのURLで取得できる)特定のブログのIDです。2番目のパラメーターは、どの執筆者を使用するかを指定します。このパラメーターでcontent.blog_post_author.slugを使用すると、現在の記事の執筆者が指定されます。または、"brian-halligan"などのハイフン付きの小文字の名前を受け入れることもできます。3番目のパラメーターは取得する記事数を指定します。 

以下の例の第1行は、関数がどのように執筆者の記事シーケンスを返すかを示しています。この例では、執筆者名を正確に指定する代わりに現在の記事執筆者が使用されています。シーケンスは1つの変数に保存され、ループ処理されます。ブログ記事変数では、contentではなく個々のループ項目の名前を使用する必要があります。この例ではauthor_post.nameが使用されています。この手法はブログテンプレートとページテンプレートで使用できます。

注:この関数には1ページあたり200件の記事数、10回の呼び出しという上限があります。

{{ blog_recent_author_posts("default", content.blog_post_author.slug, 5 ) }} {% set author_posts = blog_recent_author_posts("default", content.blog_post_author.slug, 5) %} {% for author_post in author_posts %} <div class="post-title">{{ author_post.name }}</div> {% endfor %}[Post by author title 1, Post by author title 2, Post by author title 3, Post by author title 4, Post by author title 5] <div class="post-title">Post by author title 1</div> <div class="post-title">Post by author title 2</div> <div class="post-title">Post by author title 3</div> <div class="post-title">Post by author title 4</div> <div class="post-title">Post by author title 5</div>
Use this table to describe parameters / fields
ParameterTypeDescription
selected_blog
Blog ID or "default"

どのブログを使用するかを指定します。ブログIDはモジュールのブログフィールドによって返されます。

author_slug
String

絞り込む執筆者を指定します。

limit
Integer

シーケンスに追加する投稿数(最大200)を指定します。

blog_recent_posts

blog_recent_posts関数は、指定されたブログでのブログ記事オブジェクトからなるシーケンスを、新しい順に並べ替えて返します。この記事シーケンスを変数の中に保存することができ、forループでそれを反復処理すると、人気のある記事を示すカスタム記事リストを作成できます。 

この関数は2つのパラメーターを受け入れます。最初のパラメーターは、どのブログから人気のある記事を収集するかを指定します。値は"default"、または(ブログダッシュボードのURLで取得できる)特定のブログのIDです。2番目のパラメーターは取得する記事数を指定します。 

以下の例の第1行は、関数がどのようにシーケンスを返すかを示しています。シーケンスは1つの変数に保存され、ループ処理されます。ブログ記事の変数では例外なく、contentではなく個々のループ項目の名前を使用する必要があります。この例ではrec_post.nameが使用されています。この手法は、ブログテンプレートだけでなく通常のページに対しても使用できます。

注:この関数には1ページあたり200件の記事数、10回の呼び出しという上限があります。

{{ blog_recent_posts("default", 5) }} {% set rec_posts = blog_recent_posts("default", 5) %} {% for rec_post in rec_posts %} <div class="post-title">{{ rec_post.name }}</div> {% endfor %}[Recent post title 1, Recent post title 2, Recent post title 3, Recent post title 4, Recent post title 5] <div class="post-title">Recent post title 1</div> <div class="post-title">Recent post title 2</div> <div class="post-title">Recent post title 3</div> <div class="post-title">Recent post title 4</div> <div class="post-title">Recent post title 5</div>
Use this table to describe parameters / fields
ParameterTypeDescription
selected_blog
Blog ID or "default"

どのブログを使用するかを指定します。特定のブログを指定する場合はIDを、既定のブログを指定する場合は"default"を使用します。ブログIDはモジュールのブログフィールドによって返されます。

limit
Integer

シーケンスに追加する投稿数を指定します(最大200件)。

blog_recent_tag_posts

blog_recent_tag_posts関数は、指定されたタグ(複数可)のブログ記事オブジェクトからなるシーケンスを、新しい順に並べ替えて返します。この記事シーケンスを変数の中に保存することができ、forループでそれを反復処理すると、特定のタグのカスタム記事リストを作成できます。

この関数は3つのパラメーターを受け入れます。最初のパラメーターは、どのブログから記事を収集するかを指定します。値は"default"、または(ブログダッシュボードのURLで取得できる)特定のブログのIDです。

2番目のパラメーターはどのタグを使用するかを指定します。1つのタグ、またはカンマで区切った最大10個のタグの配列を指定できます。このパラメーターでは、content.tag_listからの特定のタグを示すtag.slugを使用できます。または"marketing-tips"などのハイフン付きの小文字の名前を受け入れることもできます。タグ名のスペースはハイフンに変換する必要があります。

3番目のパラメーターは取得する記事数を指定します。 

以下の例の第1行は、関数がどのようにタグの記事シーケンスを返すかを示しています 第2行で使われている関数は、後でループ処理する目的でシーケンスを変数に保存します。ブログ記事の変数では例外なく、contentではなく個々のループ項目の名前を使用する必要があります。この例ではtag_post.nameが使用されています。この手法は、ブログテンプレートだけでなく通常のページに対しても使用できます。 

個々のブログ記事レイアウトの関連記事セクションの基礎として、この関数を使用できます。関連する記事セクションの作成については、こちらのチュートリアルをご覧ください

注:この関数には1ページあたり200件の記事数、10回の呼び出しという上限があります。

{{ blog_recent_tag_posts("default", "marketing-tips", 5 ) }} {% set tag_posts = blog_recent_tag_posts("default", ["marketing", "fun", "inbound"], 3) %} {% for tag_post in tag_posts %} <div class="post-title">{{ tag_post.name }}</div> {% endfor %}[Post about Marketing 1, Post about Marketing 2, Post about Marketing 3, Post about Marketing 4, Post about Marketing 5] <div class="post-title">Post about Marketing</div> <div class="post-title">Post about Fun</div> <div class="post-title">Post about Inbound</div>
Use this table to describe parameters / fields
ParameterTypeDescription
selected_blog
Blog ID or "default"

どのブログを使用するかを指定します。特定のブログを指定する場合はIDを、既定のブログを指定する場合は"default"を使用します。ブログIDはモジュールのブログフィールドによって返されます。

tag_slug
String

絞り込むタグを指定します。

limit
Integer

シーケンスに追加する投稿数を指定します。

blog_tag_url

blog_tag_url関数は、指定されたブログタグのリストページを指す完全なURLを返します。

この関数は2つのパラメーターを受け入れます。最初のパラメーターは、そのタグのリストページがどのブログ内に存在するかを指定します。2番目のパラメーターは、どのタグにリンクするかを指定します。このパラメーターでは、content.topic_listからの特定のタグを示すtopic.slugを使用できます。または"marketing-tips"などのハイフン付きの小文字の名前を受け入れることもできます。

以下の例は、この関数をアンカーのhrefとして使用する方法を示しています。

<a href="{{ blog_tag_url("default", "inbound-marketing") }}">Inbound Marketing</a><a href="http://blog.hubspot.com/marketing/tag/inbound-marketing">Inbound Marketing</a>
Use this table to describe parameters / fields
ParameterTypeDescription
selected_blog
Blog ID or "default"

どのブログを使用するかを指定します。特定のブログを指定する場合はIDを、既定のブログを指定する場合は"default"を使用します。

tag_slug
String

どのタグにリンクするかを指定します。

blog_tags

blog_tags関数は、(関連するブログ記事数に基づき)指定したブログに関連する特によく使用される250個のタグのシーケンスを、ブログ記事カウントで並べ替えて返します。

このシーケンスを変数の中に保存して反復処理すると、カスタムタグ記事フィルターを作成できます。各タグの記事数にアクセスするには、tag.live_postsを使用できます。

この関数は2つのパラメーターを受け入れます。最初のパラメーターは、どのブログからタグを取得するかを指定します。2番目のパラメーターは、取得されるタグ数の上限を設定します。

以下の例の第1行は、関数がどのようにタグオブジェクトのシーケンスを返すかを示しています。例の残りの部分では、シーケンスを変数の中に保存し、タグオブジェクトを反復処理して執筆者タグのリンクをいくつか出力する例を示しています。この例では、ブログに4つのタグがあることを想定しています。 

注:この関数ではタグ数の上限が250に制限されています。

{{ blog_tags("default", 250) }} {% set my_tags = blog_tags("default", 250) %} <ul> {% for item in my_tags %} <li><a href="{{ blog_tag_url(group.id, item.slug) }}">{{ item }}</a></li> {% endfor %} </ul>[ Blogging, Inbound Marketing, SEO, Social Media] <ul> <li><a href="http://blog.hubspot.com/marketing/tag/blogging"></a></li></li> <li><a href="http://blog.hubspot.com/marketing/tag/inbound-marketing">Inbound Marketing</a></li></li> <li><a href="http://blog.hubspot.com/marketing/tag/seo">SEO</a></li> <li><a href="http://blog.hubspot.com/marketing/tag/social-media">Social Media</a></li></li> </ul>
Use this table to describe parameters / fields
ParameterTypeDescription
selected_blog
Blog ID or "default"

どのブログを使用するかを指定します。ブログIDはモジュールのブログフィールドによって返されます。

limit
Integer

返されるタグの最大数。

blog_total_post_count

この関数は、指定されたブログでの公開済み記事の総数を返します。パラメーターを指定しない場合、既定のブログ記事をカウントします。あるいは、"default"を指定したり、カウントする別のブログのIDを指定することもできます。ブログIDは、特定のブログのブログダッシュボードのURLで得られます。

注:この関数には1ページあたり10回の呼び出しという上限があります。

{{ blog_total_post_count }} {{ blog_total_post_count(359485112) }}16 54
Use this table to describe parameters / fields
ParameterTypeDescription
selected_blog
Blog ID or "default"

どのブログをカウントするかを指定します。ブログIDはモジュールのブログフィールドによって返されます。

clear

リストの全ての項目を削除します。pop()とは異なり、返されるデータはありません。

{% set words = ["phone","home"] %} {% do words.clear() %} {{words}}[]

color_variant

この関数は、16進数値または色変数の明暗を指定の程度だけ調整します。最初のパラメーターは16進数表記の色(例えば#FFDDFF)、つまり16進数値を格納する変数です。2番目のパラメーターでは、調整の程度を0~255の範囲で指定します。この関数をCSSファイルで使用すると、色のバリエーションを作成できます。別のケースとして、色モジュールの色パラメーターでこれを使用すると、色バリエーションを自動生成する基本色をユーザーが指定できます。

以下の例では、base_colorという変数に16進数表記の色#3A539Bが格納されます。色が-80調整され、より濃い青(#00034B)になります。

{% set base_color ="#3A539B" %} {{ color_variant(base_color, -80) }}#00034b
Use this table to describe parameters / fields
ParameterTypeDescription
base_color
HEX color string

変更の始点となる色(例:#F7F7F7)。

brightness_offset
Integer
ベースカラーの濃淡に使用するプラスまたはマイナスの数値。

content_by_id

content_by_id関数は、IDを基準にしてランディングページ、ウェブサイトページまたはブログ記事を返します。この関数が受け入れるパラメーターは、数値のコンテンツIDのみです。

以下のコード例は、この関数を使ってハイパーリンクされたリスト項目を生成する方法を示しています。

注:この関数には1ページあたり10回の呼び出しという上限があります。
{% set my_content = content_by_id(4715624297) %} <ul> <li> <a href="{{ my_content.absolute_url }}">{{my_content.title}}</a> </li> </ul><ul> <li> <a href="http://www.hubspot.com/blog/articles/kcs_article/email/how-do-i-create-default-values-for-my-email-personalization-tokens">How do I create default values for my email or smart content personalization tokens?</a> </li> </ul>
Use this table to describe parameters / fields
ParameterTypeDescription
id
ID

検索するコンテンツのID。

content_by_ids

特定のIDリストを基準にして、これらのIDにマッチするランディングページ、ウェブサイトページまたはブログ記事からなるディクショナリー(辞書型)を返します。

この関数は1つのパラメーター、つまり検索するページまたはブログ記事のIDからなるリスト(配列)を受け入れます。最大で100個のコンテンツオブジェクトを渡すことができます。以下のコード例は、この関数を使ってハイパーリンクされたリスト項目のリストを生成する方法を示しています。

注:この関数には1ページあたり10回の呼び出しという上限があります。 

{% set contents = content_by_ids([4715624297, 4712623297, 5215624284]) %} <ul> {% for content in contents %} <li> <a href="{{ content.absolute_url }}">{{content.title}}</a> </li> {% endfor %} </ul><ul> <li> <a href="http://www.hubspot.com/blog/articles/kcs_article/email/how-do-i-create-default-values-for-my-email-personalization-tokens">How do I create default values for my email or smart content personalization tokens?</a> </li> <li> <a href="https://blog.hubspot.com/marketing/content-marketing-strategy-guide">Content Marketing Strategy: A Comprehensive Guide for Modern Marketers</a> </li> </ul>
Use this table to describe parameters / fields
ParameterTypeDescription
ids
List

検索するページまたはブログ記事のIDのリスト。最大で100個のコンテンツオブジェクトを渡すことができます。

copy

リストのシャローコピーを返します。a[:]と同等の機能です。

シャローコピーでは新しい複合オブジェクトが構築され、元のコピー内のオブジェクトへの参照が(可能な限り)それに挿入されます。

{% set a = ["ham"] %} {% set b = a.copy() %} a: {{a}} b: {{b}} After Append {% do a.append("swiss") %} a: {{a}} b: {{b}}a: [ham] b: [ham] After Append a: [ham, swiss] b: [ham]

count

ある変数がリスト内に出現する回数を返します。

{% set attendees = ["Jack","Jon","Jerry","Jessica"] %} {% set jon_count = attendees.count("Jon") %} There are {{jon_count}} Jon's in the list. <p>After append:</p> {% do attendees.append("Jon") %} {% set jon_count_after_append = attendees.count("Jon") %} There are now {{jon_count_after_append}} Jon's in the list.There are 1 Jon's in the list. <p>After append:</p> There are now 2 Jon's in the list.

crm_associations

レコードID、関連付けカテゴリー、関連付け定義IDによって別のレコードに関連付けられているCRMレコードのリストを取得します。

この関数は、オブジェクトおよび属性has_moretotaloffsetresultsを返します。

  • has_moreは、このバッチに含まれるよりも多い結果が存在することを示しています(total > offset)。
  • totalは、得られる結果の総数です。
  • offsetは、この次の結果バッチに使用されるオフセットです。
  • resultsは、関数のパラメーターに一致する特定の関連オブジェクトからなる配列を返します。

注:セキュリティー上の理由から、HubSpot標準オブジェクトタイプのうち、誰でもアクセスできるページでは、productオブジェクトとmarketing_eventオブジェクトのみの取得が可能です。それ以外の標準オブジェクトタイプは、パスワードで保護されたページ、またはCMSメンバーシップログインを必要とするページでホスティングされる必要があります。カスタムオブジェクトには同様の制約はありません。

{% set associated_contacts = crm_associations(847943847, "HUBSPOT_DEFINED", 2, "limit=3&years_at_company__gt=2&orderBy=email", "firstname,email", false) %} {{ associated_contacts }}{has_more=true, offset=3, total=203, results=[{firstname=Aimee, id=905, email=abanks@company.com}, {firstname=Amy, id=1056, email=abroma@company.com}, {firstname=Abigael, id=957, email=adonahu@company.com}]}

注:この関数は、1ページあたり最大10回まで呼び出すことができます。それぞれのcrm_associations呼び出しで、最大100個のオブジェクトを返すことができます。既定の制限は10個のオブジェクトです。

Use this table to describe parameters / fields
ParameterTypeDescription
id
必須
ID

関連付けの検索元となるレコードのID

association category
必須
String

関連付け定義のカテゴリー。有効な値は、HUBSPOT_DEFINEDUSER_DEFINEDINTEGRATOR_DEFINEDです。このパラメーターは、HubSpotによって定義済みの標準の関連付けタイプの場合は省略できます。

association type id
必須
Integer

使用する関連付け定義のID。HubSpotでサポートされる標準オブジェクトについては、使用する関連付けタイプのIDを参照してください。
それ以外の場合、この関連付けIDはCRMオブジェクトスキーマAPIで確認できます。

query
String

&で区切った、レコードのidまたはクエリー文字列。全ての式はANDで互いに結合されます。サポートされる演算子はeq(既定)、neqltltegtgteis_nullnot_nullinnot_incontains(複数値のプロパティーにのみ適用可能)です。

クエリーには次のパラメーターを含めることができます。

  • limit:レスポンスとして返される結果の最大数。例:limit=50
  • offset:返される結果の数がlimitパラメーターを超えている場合の、結果ページ送りに使用。例:offset=51
  • orderBy:特定のプロパティーに基づいて結果を並べ替えます。例:orderBy=email
properties
String

任意。返されるカンマ区切りリストのプロパティー。既定では、一般的なプロパティーからなる小さなセットが返されます。IDプロパティーは常に返されます。

プロパティーの一覧は全てのコンタクトプロパティーの取得全ての会社プロパティーの取得のエンドポイントにて確認できます。

formatting
Boolean

任意。日付や通貨などの値をポータル設定に従って書式設定します。文字列を未加工のままにするには、これを省略するかfalseを渡します。

crm_object

クエリーまたはIDを使用して1つのCRMレコードを取得します。レコードは、プロパティーと値からなるディクショナリーとして返されます。

この関数はカスタムオブジェクトおよびインテグレーターオブジェクトで使用することもできます。

注:セキュリティー上の理由から、HubSpot標準オブジェクトタイプのうち、誰でもアクセスできるページでは、productオブジェクトとmarketing_eventオブジェクトのみの取得が可能です。それ以外の標準オブジェクトタイプは、パスワードで保護されたページ、またはCMSメンバーシップログインを必要とするページでホスティングされる必要があります。カスタムオブジェクトには同様の制約はありません。

incontainsにはどのような違いがありますか?

inは、プロパティー値が、指定された値のうちいずれかの値と一致するかどうかを返します。一方、containsは、複数選択プロパティー値が、指定された全ての値を含むかどうかを返します。

<!-- by query --> {% set contact = crm_object("contact", "email=contact@company.com", "firstname,lastname", false) %} <!-- by id --> {% set contact = crm_object("contact", 123) %} {{ contact.firstname }} {{ contact.lastname }}Brian Halligan

注:この関数を呼び出せるのは、1ページあたり最大10回に限られます。

Use this table to describe parameters / fields
ParameterTypeDescription
object_type
String

オブジェクトタイプ名。オブジェクトタイプ名では大文字と小文字が区別されます。
サポートされるオブジェクトタイプ。 

アカウントで使用できるアカウント固有オブジェクトタイプとインテグレーター オブジェクト タイプの名前を調べるには、CRMオブジェクトスキーマAPIを使用してタイプ定義を取得し、名前プロパティーを探します。このプロパティーには、関数内で使用する内部オブジェクトタイプの名前が含まれています

組み込みオブジェクトと同名のインテグレーター オブジェクト タイプとアカウント固有オブジェクトタイプの場合は、オブジェクトの0完全修飾名(FQN)を使用します。

query
String

任意。&で区切った、レコードのidまたはクエリー文字列。全ての式はANDで互いに結合されます。以下の演算子がサポートされます:

  • eq(デフォルト)
  • neq
  • lt
  • lte
  • gt
  • gte
  • is_null
  • not_null
  • in
  • not_in
  • contains(複数値のプロパティーにのみ適用されます)。

クエリーには次のパラメーターを含めることができます。

  • limit:レスポンスとして返される結果の最大数。例:limit=50
  • offset:返される結果の数がlimitパラメーターを超えている場合の、結果ページ送りに使用。例:offset=51
  • orderBy:特定のプロパティーに基づいて結果を並べ替えます。例:orderBy=email
properties
String

任意。返されるカンマ区切りリストのプロパティー。既定では、一般的なプロパティーからなる小さなセットが返されます。IDプロパティーは常に返されます。

プロパティーの一覧は全てのコンタクトプロパティーの取得全ての会社プロパティーの取得のエンドポイントにて確認できます。

formatting
Boolean

任意。日付や通貨などの値をポータル設定に従って書式設定します。文字列を未加工のままにするには、falseを渡します。

注:クエリーを作成する時、rangedistinctndistinct、およびstartswithの値は予約済みのキーワードです。これらの名前のいずれかを使用するプロパティーを照会するには、次の形式を使用する必要があります:range__eq=range=ではない)。

crm_objects

特定のオブジェクトタイプのレコードをHubSpot CRMから取得して一覧表示します。

この関数は、オブジェクトおよび属性has_moretotaloffsetresultsを返します。

  • has_moreは、このバッチに含まれる結果以外の結果も存在することを示しています(total > offset)。
  • totalは、返された結果の総数です。
  • offsetは、この次の結果バッチに使用されるオフセットです。
  • resultsは、関数のパラメーターに一致する特定のオブジェクトからなる配列を返します。
クエリーで少なくとも1つの順序パラメーターを使用することで、結果を並べ替えることができます。例えばcrm_objects("contact", "firstname=Bob&order=lastname&order=createdate")の場合、"Bob"という名(ファーストネーム)のコンタクトがまず姓の順序、次にcreatedate順で並べ替えられます。逆順で並べ替えるには、例えばorder=-createdateのようにプロパティー名の前に-を付加します。CRMオブジェクト関数はカスタムオブジェクトおよびインテグレーターオブジェクトで使用することもできます。

注:セキュリティー上の理由から、HubSpot標準オブジェクトタイプのうち、誰でもアクセスできるページでは、productオブジェクトとmarketing_eventオブジェクトのみの取得が可能です。それ以外の標準オブジェクトタイプは、パスワードで保護されたページ、またはCMSメンバーシップログインを必要とするページでホスティングされる必要があります。カスタムオブジェクトには同様の制約はありません。

{% set objects = crm_objects("contact", "firstname__not_null=&limit=3", "firstname,lastname") %} {{ objects }}{has_more=true, offset=3, total=331, results=[{firstname=Brian, id=44151, lastname=Halligan}, {firstname=Dharmesh, id=44051, lastname=Shah}, {firstname=George, id=88551, lastname=Washington}]}

注:この関数は、1ページあたり最大10回まで呼び出すことができます。それぞれのcrm_objects呼び出しで、最大100個のオブジェクトを取得できます。既定の制限は10個のオブジェクトです。

Use this table to describe parameters / fields
ParameterTypeDescription
object_type
String

名前で示されるオブジェクトのタイプ。オブジェクトタイプ名では大文字と小文字が区別されます。標準的なオブジェクトタイプでは、単数形と複数形を使用できます(例:contactcontacts)。サポート対象のオブジェクトタイプの詳細をご確認ください。 

アカウントで使用できるアカウント固有オブジェクトタイプとインテグレーター オブジェクト タイプの名前を調べるには、CRMオブジェクトスキーマAPIを使用してタイプ定義とnameプロパティーを取得します。

組み込みオブジェクトと同名のインテグレーター オブジェクト タイプとアカウント固有オブジェクトタイプの場合は、オブジェクトの完全修飾名(FQN)を使用します。

query
String

任意。&で区切った、レコードのIDまたはクエリー文字列。全ての式はANDで互いに結合されます。

サポートされる演算子はeq(既定)、neqltltegtgteis_nullnot_nullinnot_incontainsです。

例:"email=contact@company.com"

注:containsは、複数の値を持つプロパティーにのみ適用されます。

properties
String

任意。返されるカンマ区切りリストのプロパティー。既定では、一般的なプロパティーからなる小さなセットが返されます。IDプロパティーは常に返されます。プロパティーの一覧は全てのコンタクトプロパティーの取得全ての会社プロパティーの取得のエンドポイントにて確認できます。

レコードIDは、プロパティーリストに明示的に追加されていないとしても、返されるオブジェクトプロパティーに常に含まれます。

formatting
Boolean

任意。日付や通貨などの値をポータル設定に従って書式設定します。文字列を未加工のままにするには、falseを渡します。

注:クエリーを作成する時、rangedistinctndistinct、およびstartswithの値は予約済みのキーワードです。これらの名前のいずれかを使用するプロパティーを照会するには、次の形式を使用する必要があります:range__eq=range=ではない)。

crm_property_definition

指定したオブジェクトタイプとプロパティー名のプロパティー定義を取得します。

サポート対象のオブジェクトタイプは、HubSpot標準オブジェクト(コンタクトなど)、ポータル固有のオブジェクト、インテグレーターオブジェクトです。

注:セキュリティー上の理由から、HubSpot標準オブジェクトタイプのうち、誰でもアクセスできるページでは、productオブジェクトとmarketing_eventオブジェクトのみの取得が可能です。それ以外の標準オブジェクトタイプは、パスワードで保護されたページ、またはCMSメンバーシップログインを必要とするページでホスティングされる必要があります。カスタムオブジェクトには同様の制約はありません。

{{ crm_property_definition("house_listing", "agent_name") }}
Use this table to describe parameters / fields
ParameterTypeDescription
object_type
String

オブジェクトタイプ名。オブジェクトタイプ名では大文字と小文字が区別されます。サポートされるオブジェクトタイプ。 

アカウントで使用できるアカウント固有オブジェクトタイプとインテグレーター オブジェクト タイプの名前を調べるには、CRMオブジェクトスキーマAPIを使用してタイプ定義を取得し、名前プロパティーを探します。このプロパティーには、関数内で使用する内部オブジェクトタイプの名前が含まれています

組み込みオブジェクトと同名のインテグレーター オブジェクト タイプとアカウント固有オブジェクトタイプの場合は、オブジェクトの0完全修飾名(FQN)を使用します。

property_name
String

定義を取得するプロパティーの名前。大文字と小文字は区別されません。

crm_property_definitions

指定されたオブジェクトタイプと一連のプロパティー名のプロパティー定義を取得します。

サポート対象のオブジェクトタイプは、HubSpot標準オブジェクト(コンタクトなど)、ポータル固有のオブジェクト、インテグレーターオブジェクトです。

注:セキュリティー上の理由から、HubSpot標準オブジェクトタイプのうち、誰でもアクセスできるページでは、productオブジェクトとmarketing_eventオブジェクトのみの取得が可能です。それ以外の標準オブジェクトタイプは、パスワードで保護されたページ、またはCMSメンバーシップログインを必要とするページでホスティングされる必要があります。カスタムオブジェクトには同様の制約はありません。

{{ crm_property_definitions("house_listing", "agent_name,address") }}
Use this table to describe parameters / fields
ParameterTypeDescription
object_type
String

オブジェクトタイプ名。オブジェクトタイプ名では大文字と小文字が区別されます。サポートされるオブジェクトタイプ。 

アカウントで使用できるアカウント固有オブジェクトタイプとインテグレーター オブジェクト タイプの名前を調べるには、CRMオブジェクトスキーマAPIを使用してタイプ定義を取得し、名前プロパティーを探します。このプロパティーには、関数内で使用する内部オブジェクトタイプの名前が含まれています

組み込みオブジェクトと同名のインテグレーター オブジェクト タイプとアカウント固有オブジェクトタイプの場合は、オブジェクトの0完全修飾名(FQN)を使用します。

property_name
String

任意。カンマで区切られた、定義を取得するプロパティーの名前(名前では大文字と小文字は区別されません)。空白の場合、全てのプロパティーの定義が取得されます。

cta

CTAモジュールには、コードバリエーションを含むパラメーターが多数あるので、cta関数を使用するとテンプレート、ページ、Eメールの中に特定のCTAを簡単に生成できます。リッチテキストエディターを使ってCTAを追加するとき、エディターはこの関数を使用します。

{{ cta("ccd39b7c-ae18-4c4e-98ee-547069bfbc5b") }} {{ cta("ccd39b7c-ae18-4c4e-98ee-547069bfbc5b", "justifycenter") }}<span class="hs-cta-wrapper" id="hs-cta-wrapper-ccd39b7c-ae18-4c4e-98ee-547069bfbc5b"> <span class="hs-cta-node hs-cta-ccd39b7c-ae18-4c4e-98ee-547069bfbc5b" id="hs-cta-ccd39b7c-ae18-4c4e-98ee-547069bfbc5b" style="visibility: visible;"> <a id="cta_button_158015_19a9097a-8dff-4181-b8f7-955a47f29826" class="cta_button " href="//cta-service-cms2.hubspot.com/ctas/v2/public/cs/c/?cta_guid=19a9097a-8dff-4181-b8f7-955a47f29826&placement_guid=ccd39b7c-ae18-4c4e-98ee-547069bfbc5b&portal_id=158015&redirect_url=APefjpH34lXcq1H4FhyHhE3DNeHPNigbBluiv6t07-N80GLkyj2Dn9PizhW8bo4ecrS47RmyslLg7QQKWLG7n2oNkvrumL9dWUjMMEjVYvStZ-IMyulMBvdU8AddI6nFXL0G_VPP_VXmnFi66RKPPjPvx6kbyPO6k566noP4CTZMyADHkGsGBf4S95YdTNtTTFabShT62cVAiV_oWlXbpfPWQc4G3IvkoDoAhmpQVW-ggUcKa4Ft_5A&hsutk=683eeb5b499fdfdf469646f0014603b4&utm_referrer=http%3A%2F%2Fwww.davidjosephhunt.com%2F%3Fhs_preview%3DNVkCLfFf-2857453560&canon=http%3A%2F%2Fwww.davidjosephhunt.com%2F-temporary-slug-63bb220d-eda6-44d0-9738-af928e787237" style="" cta_dest_link="http://www.hubspot.com/free-trial" title="Start a HubSpot trial"> Start a HubSpot trial </a> </span> <script charset="utf-8" src="//js.hscta.net/cta/current.js"></script> <script type="text/javascript"> hbspt.cta.load(158015, 'ccd39b7c-ae18-4c4e-98ee-547069bfbc5b'); </script> </span> <span class="hs-cta-wrapper" id="hs-cta-wrapper-ccd39b7c-ae18-4c4e-98ee-547069bfbc5b"> <span class="hs-cta-node hs-cta-ccd39b7c-ae18-4c4e-98ee-547069bfbc5b" id="hs-cta-ccd39b7c-ae18-4c4e-98ee-547069bfbc5b" style="display: block; text-align: center; visibility: visible;"> <a id="cta_button_158015_19a9097a-8dff-4181-b8f7-955a47f29826" class="cta_button " href="//cta-service-cms2.hubspot.com/ctas/v2/public/cs/c/?cta_guid=19a9097a-8dff-4181-b8f7-955a47f29826&placement_guid=ccd39b7c-ae18-4c4e-98ee-547069bfbc5b&portal_id=158015&redirect_url=APefjpH34lXcq1H4FhyHhE3DNeHPNigbBluiv6t07-N80GLkyj2Dn9PizhW8bo4ecrS47RmyslLg7QQKWLG7n2oNkvrumL9dWUjMMEjVYvStZ-IMyulMBvdU8AddI6nFXL0G_VPP_VXmnFi66RKPPjPvx6kbyPO6k566noP4CTZMyADHkGsGBf4S95YdTNtTTFabShT62cVAiV_oWlXbpfPWQc4G3IvkoDoAhmpQVW-ggUcKa4Ft_5A&hsutk=683eeb5b499fdfdf469646f0014603b4&utm_referrer=http%3A%2F%2Fwww.davidjosephhunt.com%2F%3Fhs_preview%3DNVkCLfFf-2857453560&canon=http%3A%2F%2Fwww.davidjosephhunt.com%2F-temporary-slug-63bb220d-eda6-44d0-9738-af928e787237" style="" cta_dest_link="http://www.hubspot.com/free-trial" title="Start a HubSpot trial"> Start a HubSpot trial </a> </span> <script charset="utf-8" src="//js.hscta.net/cta/current.js"></script> <script type="text/javascript"> hbspt.cta.load(158015, 'ccd39b7c-ae18-4c4e-98ee-547069bfbc5b'); </script> </span>
Use this table to describe parameters / fields
ParameterTypeDescription
guid
String

レンダリングするCTAのID。この固有IDは、CTAの詳細画面のURLに含まれています。

align_opt
Enumeration

CTAの位置を調整します。値としてjustifyleftjustifycenterjustifyrightjustifyfullがあります。

datetimeformat(非推奨)

注:このフィルターは非推奨になりました。代わりに、より標準化された構文を使用するformat_datetime関数を使用してください。
{{ datetimeformat(content.publish_date_local_time, "%B %e, %Y") }} May 13, 2015

extend

反復可能オブジェクトの全ての項目を付加することで、リストを拡張します。言い換えると、あるリストの全ての項目を別のリストに挿入します。

{% set vehicles = ["boat","car","bicycle"] %} {% set more_vehicles = ["airplane","motorcycle"] %} {% do vehicles.extend(more_vehicles) %} {{vehicles}}[boat, car, bicycle, airplane, motorcycle]

file_by_id

この関数は、IDを基準にファイルのメタデータを返します。唯一のパラメーターとして、検索するファイルを示す数値IDを受け入れます。

注:この関数の呼び出しは、1ページあたり10回に制限されています。

{% set file = file_by_id(123) %} {{ file.friendlyUrl }}https://www.hubspot.com/hubfs/HubSpot_Logos/HSLogo_color.svg
Use this table to describe parameters / fields
ParameterTypeDescription
file_id
ID

検索するファイルのID。

{% set fm = follow_me_links() %} {{ fm }}[FollowMeLink{type=URL, id=5142734, altName=RSS, followMeUrl=http://website.com/rss.xml, iconName=rss, name=http://website.com/rss.xml}]

format_address

コンテキストのロケールに基づいて住所を書式設定します。 

{{ format_address('en-us', { address: "25 First Street", address2: "2nd Floor", city: "Cambridge", state: "MA", country: "United States", zip: "02141"}) }}[25 First Street, 2nd Floor, Cambridge, MA 02141, United States]
Use this table to describe parameters / fields
ParameterTypeDescription Default
locale
必須
String

住所の書式設定に適用するロケール。

address
必須
String

番地。

address2
任意
String

住所の2行目(階数、アパート番号など)。

city
必須
String

住所の市区町村。

state
必須
String

住所の都道府県。

country
必須
String

住所の国。

zip
必須
String

住所の郵便番号。

format_company_name

必要に応じて、日本語の敬称を追加して会社名を書式設定します。

{{ format_company_name("companyName", addJapaneseHonorifics) }}HubSpot
Use this table to describe parameters / fields
ParameterTypeDescription Default
companyName
必須
String

会社の名前。

useHonorificIfApplicable
必須
Boolean

trueに設定されている場合、コンテキストの言語が日本語であれば、必要に応じて会社名に日本語の敬称が追加されます。 

format_name

必要に応じて個人の名前を書式設定するために、姓の後に名を続けて日本語の敬称を追加します。
{{ format_name("firstName", "surname", addJapaneseHonorifics) }}Hobbes Baron
Use this table to describe parameters / fields
ParameterTypeDescription Default
firstName
必須
String

個人の名。

surname
必須
String

個人の姓。

False
useHonorificIfApplicable
必須
Boolean

trueに設定されている場合、コンテキストの言語が日本語であれば、必要に応じて日本語の敬称が追加されます。 

format_datetime

format_datetime HubLフィルターと同様に、日付オブジェクトの日付と時刻の両方のコンポーネントを書式設定します。この関数は、非推奨のdatetimeformat関数に置き換わるものです。

{{ format_datetime(content.publish_date, "short", "America/New_York", "en") }} 12/31/69 7:00 PM
Use this table to describe parameters / fields
ParameterTypeDescription Default
format
必須
String

使用する形式。次のいずれかになります。

  • short
  • medium
  • long
  • full
  • Unicode LDMLに従ったカスタムパターン
timeZone
任意
String

IANA TZDB形式で出力される日付のタイムゾーン。

locale
任意
String

ロケール対応の形式に使用するロケール。

geo_distance

この関数には4つのパラメーターがあり、地球上の2地点間の楕円2D距離を計算します。この関数は、HubDBデータを取得するためのフィルタークエリーとして使用します。

{% for row in hubdb_table_rows(1234567, "geo_distance(loc,1.233,-5.678,mi)__gt=500") %} {{row.name}} <br> {% endfor %}Cambridge, MA<br> Salem, MA<br> San Diego, CA<br> Chicago, IL<br>
Use this table to describe parameters / fields
ParameterTypeDescription
point1
Location

HubDB列からの場所。

point2_lat
Latitude

point2の緯度。

point2_long
Longitude

point2の経度。

units
String

戻り値の単位。オプションとしてFT(フィート)、MI(マイル)、M(メートル)、KM(キロメートル)があります。

get_asset_url

この関数は、指定したテンプレートまたはコードファイルの公開URLを返します。この関数のパラメーターは、デザインマネージャー内でのアセットのパスです。コードファイルURLは、公開されるたびに更新されます。したがって、この関数を使用すると常にファイルの最新バージョンを使用していることを確認できます。

ファイルを右クリックして[公開URLをコピー]を選択するか、[アクション]をクリックして[公開URLをコピー]を選択することで、アプリ内でこの関数を自動的に生成できます。

以下の例では、デザインマネージャーで作成されたJavaScriptファイルのURLを取得します。これを<script>タグのsrcとして含めることができます。

copy-public-url
{{ get_asset_url("/custom/styles/style.css") }} //cdn2.hubspot.net/hub/1234567/hub_generated/template_assets/1565970767575/custom/styles/style.min.css
Use this table to describe parameters / fields
ParameterTypeDescription
path
String

デザインマネージャー内でのテンプレートまたはファイルのパス。

get_public_template_url_by_id

この関数の動作はget_public_template_urlと同様で、指定したテンプレートまたはコードファイルの公開URLを返します。唯一の違いは、この関数のパラメーターがデザインマネージャー内でのパスではなく、テンプレートIDであることです(このIDはテンプレートまたはコードファイルのURLで判別できます)。

{{ get_public_template_url_by_id("2778457004") }} //cdn2.hubspot.net/hub/327485/hub_generated/style_manager/1431479563436/custom/page/Designers_2015/designer-doc-2105.min.js
Use this table to describe parameters / fields
ParameterTypeDescription
template_id
ID

ファイルのテンプレートのID番号。

hubdb_table

HubDBは、CMS Hub ProfessionalおよびEnterpriseでご利用いただける機能です。

テーブルの名前、列、最終更新日などの情報を取得するには、hubdb_table()関数を使用できます。 

適切な属性を呼び出すことで、次のような情報を取得できます。

  • ID:テーブルのID。
  • name:テーブルの名前。
  • columns:列情報のリスト。
  • created_at:テーブルが初めて作成された時点のタイムスタンプ。
  • published_at:このテーブルが公開された時点のタイムスタンプ。
  • updated_at: このテーブルの最終更新時点のタイムスタンプ。
  • row_count:テーブルの行数。
{% set table_info = hubdb_table(1548215) %} {{ table_info.row_count }}25

注:この関数には1ページあたり10回の呼び出しという上限があります。

Use this table to describe parameters / fields
ParameterTypeDescription
table_id
String

テーブルのIDまたは名前。

hubdb_table_column

HubDBは、CMS Hub ProfessionalおよびEnterpriseでご利用いただける機能です。

hubdb_table_column関数を使用すると、テーブルの列に関する情報(ラベル、タイプ、オプションなど)を取得できます。この関数は2つのパラメーターを受け入れます。 

適切な属性を呼び出すことで、列に関する次のような情報を取得できます。

  • ID:列のID。
  • name:列の名前。
  • label:列に使用されるラベル。
  • type:列のタイプ。
  • options:タイプがselectの列の場合、これはoptionIdからoption情報へのマップです。
  • foreignIds:"foreignId"列タイプの場合、これはforeignIdのリストです(idプロパティーとnameプロパティーを含む)。

上記の属性に加えて、getOptionByName("<option name>")というメソッドを呼び出すこともできます。"select"タイプの列の場合、これによりオプションの名前を基準にoption情報が取得されます。

列名では大文字と小文字が区別されません。例えば、HS_IDhs_idはどちらも有効です。

{% set column_info = hubdb_table_column(123456, 6) %} {{ column_info.label }}role
Use this table to describe parameters / fields
ParameterTypeDescription
table_id
String

テーブルのIDまたは名前。

column
String

列のIDまたは名前。

hubdb_table_row

HubDBは、CMS Hub ProfessionalおよびEnterpriseでご利用いただける機能です。

hubdb_table_row関数を使用すると、HubDBテーブルから1つの行を取得できます。この行に関して、該当する属性を呼び出すことで各テーブルセルから次のような情報を取得できます。 

  • hs_id:この行のグローバルに固有のID。
  • hs_created_at:この行が作成された時点を示すタイムスタンプ。
  • hs_path:動的ページで使用される場合、この文字列はページのURLパスの最後のセグメントです。
  • hs_name:動的ページで使用される場合、これはページのタイトルです。
  • <column name>または["<column name>"]:列のnameを基準に、この行の列の値を取得します。

列名では大文字と小文字が区別されません。例えば、HS_IDhs_idはどちらも有効です。

{% set row = hubdb_table_row(1548264, 6726439331) %} {{ row.role }}CTO

注:この関数には1ページあたり10回の呼び出しという上限があります。

Use this table to describe parameters / fields
ParameterTypeDescription
table_id
String

テーブルのIDまたは名前。

row_id
Integer
テーブルの行のID。

hubdb_table_rows

HubDBは、CMS Hub ProfessionalおよびEnterpriseでご利用いただける機能です。

hubdb_table_rows関数を使用すると、反復処理用にHubDBテーブルの行のリストを取得できます。hubdb_table_rows()の1回の呼び出しでは、1ページあたり10件のテーブルスキャンに制限されています。

既定では、この関数は最大1,000行を返します。これよりも多くの行を取得するには、以下のコードに示されているようにクエリー内でlimitを指定します。

注:この関数でランダムフィルターを使用すると、ページが定期的にプリレンダリングされることになります。つまり、フィルタリングされたコンテンツは、ページの再読み込みのたびに更新されるわけではありません

{% for row in hubdb_table_rows(1546258, "years_at_company__gt=3&orderBy=count&limit=1500") %} the value for row {{ row.hs_id }} is {{ row.name }} {% endfor %}the value for row 6726439331 is Brian Halligan the value for row 8438997836 is Dharmesh Shah
Use this table to describe parameters / fields
ParameterTypeDescription
table_id
String

問い合わせるテーブルのIDまたは名前。

query
String

URLクエリー文字列と同じ形式のクエリー。指定しない場合、全ての行が返されます。HubDBテーブル行を照会するために使用できるフィルターについての詳細はこちらをご参照ください。

並べ替え順序を逆にするには、列名に-を追加します(orderBy=-bar)。このパラメーターを複数指定することにより、複数の列を基準に並べ替えができるようになります。

列を基準に並べ替えを行えるだけでなく、次の関数を含めることもできます。

  • geo_distance(location_column_name, latitude, longitude)
    所在地列の名前と座標を受け取り、指定の所在地列の値と指定された座標との距離の順に、行を返します。
  • length(column_name)
    列の名前を受け取り、列の値の長さ(文字列として計算される)の順で行を返します。
  • random()
    ランダムな順序で行を返します。

この関数では逆順もサポートされます。例:
orderBy=-geo_distance(location_column,42.37,-71.07)
最も距離が離れている項目を最初に返します。

注:クエリーを作成する時、rangedistinctndistinct、およびstartswithの値は予約済みのキーワードです。これらの名前のいずれかを使用するプロパティーを照会するには、次の形式を使用する必要があります:range__eq=range=ではない)。

include_default_custom_css

この関数は、プライマリーCSSファイルdefault_custom_style.min.css)を参照するリンクタグを生成します。このファイルはグローバルCSSファイルとして用意され、全てのテンプレートにこれを追加できます。この関数によってレンダリングするには、ブール値パラメーターの値Trueが必要です。

{{ include_default_custom_css(True) }} <link href="//cdn2.hubspot.net/hub/327485/hub_generated/style_manager/1420345777097/custom/styles/default/hs_default_custom_style.min.css" rel="stylesheet">

index

0ベースのarrayの中で最初にマッチする項目の所在地を返します。

この関数は3つのパラメーターを受け入れ、最初のパラメーターは必須です。最初のパラメーターは、array内で検索される項目です。2番目(start)と3番目(end)のパラメーターを使用すると、arrayのスライス内でその項目を検出できます。 

{% set shapes = ["triangle","square","trapezoid","triangle"] %} triangle index: {{shapes.index("triangle")}} <br> trapezoid index: {{shapes.index("trapezoid")}} <hr> adjusted start and end <br> triangle index: {{shapes.index("triangle",1,5)}}triangle index: 0<br> trapezoid index: 2 <hr> adjusted start and end<br> triangle index: 3

insert

リスト内の指定されたインデックス場所に要素を挿入します。

この関数は次の2つのパラメーターを受け入れます。

  • Index:要素を挿入する位置。
  • Element:挿入される項目。
{% set even_numbers = [2,4,8,10] %} {% do even_numbers.insert(2,6) %} {{even_numbers}}[2, 4, 6, 8, 10]

locale_name

言語コードを判読可能な文字列表記として返し、オプションでターゲット言語に翻訳します。

{{ locale_name("es") }} {{ locale_name("es", "en") }}Español Spanish
Use this table to describe parameters / fields
ParameterTypeDescription
language_code
String

言語コード。

target_language_code
String

出力の翻訳先となる言語。

詳細メニューの、ネストしたリンク構造を返します。メニューノードには、返されたオブジェクトで使用できるさまざまなプロパティーがあります。nullをメニュー関数に渡した場合、空のpylistが返されます。名前でメニューを指定することもできます。ほとんどの場合、メニューIDを使用するのが安全です。名前を変更してもIDには影響しないからです。マーケットプレイス用にビルドする場合は、メニューがnullである場合、既定で"default"にするのが理にかなっています。

注:この関数には1ページあたり10回の呼び出しという上限があります。 

{% set node = menu(987) %} {% for child in node.children %} {{ child.label }}<br> {% endfor %} {% set default_node = menu("default") %} {% for child in default_node.children %} {{ child.label }}<br> {% endfor %}page1<br> page2<br> page3<br>

menu()関数を使用してメニューを生成する場合、メニューにアクセスできることを確認する責任はユーザーにあります。

Use this table to describe parameters / fields
ParameterTypeDescription
menu_id
Id

必須数値として渡すメニューID。

root_type
Enumeration

メニューのルートタイプ("site_root""top_parent""parent""page_name""page_id""breadcrumb")。

  • "site_root":静的 - 常に最上位ページがメニューに表示されます。
  • "top_parent":動的(セクション別) - 表示中のセクションに関連するページがメニューに表示されます。
  • "parent":動的(ページ別) - 表示中のページに関連するページがメニューに表示されます。
  • "breadcrumb":パンくず形式のパスメニュー(横フローを使用)
root_key
String

"page_name"または"page_id"を使用する場合のルートキー(IDIまたは名前)。

module_asset_url

[リンク済みファイル]>[その他のファイル]によってカスタムモジュールに付加されるアセットのURLを取得します。

{{ module_asset_url("smile.jpg") }} https://cdn2.hubspot.net/hubfs/6178146/logo-black-color.png
Use this table to describe parameters / fields
ParameterTypeDescription
name
String

アセットの名前。

oembed

特定のリクエストに関するOEmbedデータディクショナリーを返します。Eメールでのみ機能します。
{{ oembed({ url: "https://www.youtube.com/watch?v=KqpFNtbEOh8"}) }}OEmbedResponse{type=video, version=1.0, html=<iframe width="480" height="270" src="https://www.youtube.com/embed/KqpFNtbEOh8?feature=oembed" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>, title=Marketing Is a Marathon — Build a Complete Customer Experience, authorName=HubSpot, authorUrl=https://www.youtube.com/user/HubSpot, providerName=YouTube, providerUrl=https://www.youtube.com/, thumbnailUrl=https://i.ytimg.com/vi/KqpFNtbEOh8/hqdefault.jpg, thumbnailWidth=480, thumbnailHeight=360}
Use this table to describe parameters / fields
ParameterTypeDescription
request
String

リクエストオブジェクト、{url: string, max_width: long, max_height: long}

personalization_token

コンタクトまたはコンタクト関連プロパティーの値、または既定を返します。
Hi {{ personalization_token("contact.firstname", "there") }}!<!-- If the contact is known --> Hi Dharmesh! <!-- If the contact is unknown --> Hi there!
Use this table to describe parameters / fields
ParameterTypeDescription
expression
String

レンダリングするオブジェクトとプロパティーの式。

default
String

任意。式に値がない場合に使用する既定値。

pop

インデックス位置にある項目をリストから削除します。さらに、削除された項目を返します(出力される場合)。
{% set even_numbers = [2,3,4,6,8,9,10] %} {% do even_numbers.pop(1) %} {{even_numbers.pop(4)}} {{even_numbers}}9 [2, 4, 6, 8, 10]

postal_location

postal_location関数は、特定の郵便番号と国コードに対応する所在地緯度/経度ペアを返します(ただし米国、カナダ、英国のみ)。
{{ postal_location("02139") }} {% set location = postal_location("02139", "US") %} {{ location.latitude }} {{ location.longitude }}LatLon{latitude=42.3647, longitude=-71.1042} 42.3647 -71.1042

注:この関数には1ページあたり10回の呼び出しという上限があります。

Use this table to describe parameters / fields
ParameterTypeDescription
postal_code
String

所在地の郵便番号。

country_code
String

郵便番号の国コード。これを指定しない場合、郵便番号から国が推定されます。

range

整数からなる算術数列が入ったリストを返します。rangeで1つのパラメーターを指定すると、0からそのvalue未満までのリストが返されます。rangeで2つのパラメーターを指定すると、最初の値から始まり、1つずつ増えて、2番目のvalue未満までが返されます。3番目のパラメーターは段階的な増分を指定します。全ての値に負の数を指定できます。無効な範囲を指定すると、空のリストが返されます。rangeで生成できる値の数は最大1000個です。

rangeをforループの中で使用すると、実行する反復処理の回数を指定できます。

{{ range(11) }} {{ range(5, 11) }} {{ range(0, 11, 2) }} {% for number in range(11) %} {{ number }} {% endfor %}[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] [5, 6, 7, 8, 9, 10] [0, 2, 4, 6, 8, 10] 0 1 2 3 4 5 6 7 8 9 10

require_css

この関数は、レンダリングされるCSSファイルをhead要素に追加します。全てのCSS linkタグは一緒のグループになり、JavaScriptタグの前にレンダリングされます。HubLは空の行に置換され、その後でlinkタグが{{ standard_header_includes }}に追加されます。ここでは絶対URLが必要とされます。get_asset_url()関数を使用することで、既知の相対URL付きのCMSコンテンツを要求できます。

styleタグ要素を介して、レンダリングされるインラインスタイルをheadに含めるには、styleタグとその中のCSSの代わりに{% require_css %}および{% end_require_css %}タグを使用してください。

2番目のパラメーターは、生成されるタグを変更するためのオプションのディクショナリーです。web.devの記事で紹介されているasync(true/false)がサポートされます。その他のキーと値のペアは、HTML属性としてスタイルタグに追加されます

{{ standard_header_includes }} <!-- more html --> {{ require_css("http://example.com/path/to/file.css") }} {{ require_css(get_asset_url("/relative/path/to/file.css")) }} <!-- you can tell the browser to load the file asynchronously --> {{ require_css(get_asset_url("./style.css"), { async: true }) }}<!-- other standard header html --> <link type="text/css" rel="stylesheet" href="http://example.com/path/to/file.css"> <link type="text/css" rel="stylesheet" href="http://example.com/relative/path/to/file.css"> <!-- you can tell the browser to load the file asynchronously --> <link rel="preload" href="//cdn2.hubspot.net/hub/6333443/hub_generated/template_assets/39079350918/1608661506628/example.css" as="style" onload="this.onload=null;this.rel='stylesheet'"> <noscript><link rel="stylesheet" href="//cdn2.hubspot.net/hub/6333443/hub_generated/template_assets/39079350918/1608661506628/example.css"></noscript> <!-- more html -->

require_js

headまたはfooterでのレンダリングのために、スクリプトをキューに登録するかどうかを指定します(既定)。レンダリングする位置を指定するため、headパラメーターまたはfooterパラメーターをインクルードします。HubLは空の行に置換され、ヘッダーまたはフッターのインクルードのいずれかにインクルードされます。

script要素を使用してフッターにレンダリングされるインラインスクリプトをキューに登録するには、<script>タグを{% require_js %}{% end_require_js %}で囲みます。 

この関数には追加のレンダリングオプションを含めることもできます。これらはスクリプトタグにHTML属性として追加されます。レンダリングオプションには次のものがあります。

  • position: head/footer
  • defer: true/false
  • async: true/false
  • type: string
{{ standard_header_includes }} <!-- more html --> {{ require_js("http://example.com/path/to/footer-file.js", "footer") }} {{ require_js("http://example.com/path/to/head-file.js", "head") }} <!-- you can add async or defer attributes to the tags that are added. --> {{ require_js(get_asset_url("./path/to/file.js"), { position: "footer", async: true }) }} {{ require_js(get_asset_url("./jquery-latest.js"), { position: "footer", defer:true }) }} {{ standard_footer_includes }}<!-- other standard header html --> <script async defer src="//cdn2.hubspot.net/hub/6333443/hub_generated/template_assets/37785718838/1605816776975/jquery-latest.min.js"></script> <script src="http://example.com/path/to/head-file.js"></script> <!-- more html --> <script src="http://example.com/path/to/footer-file.js"></script> <!-- you can add async or defer attributes to the tags that are added. --> <script async src="//cdn2.hubspot.net/hub/######/hub_generated/template_assets/#############/######/jquery-latest.min.js"></script> <script defer src="//cdn2.hubspot.net/hub/######/hub_generated/template_assets/#############/######/jquery-latest.min.js"></script> <!-- other standard footer html -->

resize_image_url

ファイルマネージャーに保存された画像のURLを書き換えて、リクエスト時に画像のサイズを変更するURLにします。この関数は1つの必須パラメーターと5つの任意指定パラメーターを受け入れます。少なくとも1つの任意指定パラメーターを渡す必要があります。

必須

  • URL:HubSpotでホスティングされている画像のURL(文字列)。

任意

  • width:画像の新しい幅(ピクセル単位の数値)。
  • height:画像の新しい高さ(ピクセル単位の数値)。
  • length:画像の新しい長辺(ピクセル単位の数値)。
  • upscale:画像の元の寸法よりも拡大される場合でもサイズ変更後の寸法を使用するかどうかを示すブール値(画像がぼやけて表示される可能性があります)。
  • upsize:元のバイト数よりも増える場合でもサイズ変更後の画像を返すかどうかを示すブール値。

注:高さまたは幅が4096ピクセルを超える画像は、自動的にサイズ変更されません。代わりに、手動で画像のサイズを変更する必要があります。

{{ resize_image_url("http://your.hubspot.site/hubfs/img.jpg", 0, 0, 300) }}http://your.hubspot.site/hubfs/img.jpg?length=300&name=img.jpg
Use this table to describe parameters / fields
ParameterTypeDescription
url
String

HubSpotでホスティングされている画像のURL。

width
Integer (px)

画像の新しい幅(ピクセル単位)。

height
Integer (px)

画像の新しい高さ(ピクセル単位)。

length
Integer (px)

画像の新しい長辺(ピクセル単位)。

upscale
Boolean

画像の元の寸法よりも拡大される場合でもサイズ変更後の寸法を使用するかどうかを示すブール値(画像がぼやけて表示される可能性があります)。

既定値はfalseです。

upsize
Boolean

元のバイト数よりも増える場合でもサイズ変更後の画像を返すかどうかを示すブール値。

既定値はfalseです。

reverse

リスト内の項目の順序を逆にします。パラメーターは取りません。オブジェクトを逆にするか、リスト内を逆に反復処理するイテレーターを返すには、|reverseを使用します。

{% set numbers = [1,2,3,4] %} {% do numbers.reverse() %} {{numbers}}[4, 3, 2, 1]

set_response_code

レスポンスコードを、指定されたコードに設定します。現在、指定できるコードは404だけです。これを使用すると、ページから404エラーが返されます。

{{ set_response_code(404) }} <!-- this will cause the page to result in a 404 error -->
Use this table to describe parameters / fields
ParameterTypeDescription
code
Integer

HTTPレスポンスコード。現在、指定できるコードは404だけです。

super

この関数は、extendsタグを使用して、親テンプレートの内容を子テンプレート内に出力します。

例えば下記のコードでは、sidebarという名前のHubLブロックを使って基本HTMLテンプレートが作成され、parent.htmlとして保存されます。その親ファイルを拡張する2番目のテンプレートファイルが作成されます。通常、<h3>は親HTMLのsidebarブロック内に出力されます。ただし、superを使用すると、親テンプレートsidebarブロックの内容が子テンプレートの内容と結合されます。 

{% extends "custom/page/web_page_basic/parent.html" %} {% block sidebar %} <h3>Table Of Contents</h3> {{ super() }} {% endblock %}<!doctype html> <html> <head> <meta charset="utf-8"> <title>This is the parent template </title> </head> <body> <h3>Table of contents</h3> Sidebar content from parent. </body> </html>

today

今日の始まり(午前0:00)を返します。タイムゾーンを既定のUTCから変更するパラメーターを追加できます(任意)。

{{ today() }} {{ today("America/New_York") }} {{ unixtimestamp(today("America/New_York").plusDays(1)) }}2018-10-23T00:00Z 2018-10-23T00:00-04:00[America/New_York] 1540353600000

to_local_time

HubSpotレポート設定に基づいて、UNIXタイムスタンプをローカル時間に変換します。その後、datetimeformatフィルターを適用して日付を書式設定できます。

{{ to_local_time(eastern_dt) }} 2015-05-13 10:37:31
Use this table to describe parameters / fields
ParameterTypeDescription
date
Datetime

ローカル時間への変換元となるUNIXタイムスタンプ。

topic_cluster_by_content_id

(渡されたコンテンツIDで判別される)コンテンツ部分に関連しているトピッククラスターを表すHubLディクショナリーを返します。これには、関連付けられているピラーページ、コアトピック、サブトピックについてのメタデータが含まれます。これを使用すると、関連ピラーページが存在する場合、それをコンテンツ部分に「自動リンク」させることができます。

取得可能なメタデータがある場所は、attachableContent(現在のコンテンツのメタデータ)、topic(現在のコンテンツの関連トピックメタデータ)、coreTopic(関連クラスターのコアトピックメタデータ)、およびpillarPage(関連ピラーページのメタデータ)です。

可能なプロパティーと属性を全て表示するには、{{ topicCluster|pprint }}を使用してください。

{{ topic_cluster_by_content_id(content.id) }} {%- if content.id -%} {%- set topicCluster = topic_cluster_by_content_id(content.id) -%} {%- if topicCluster.pillarPage.url.value and topicCluster.pillarPage.publishState == "PUBLISHED" -%} <div>Topic: <a href="{{ topicCluster.pillarPage.url.value }}">{{ topicCluster.coreTopic.phrase }}</a></div> {%- endif -%} {%- endif -%}{ attachedContent, topic, coreTopic, pillarPage } (AttachedContentWithContext: {attachedContent=AttachedContent{id=1234, topicId=1234, clusterId=1234, portalId=0, attachable=Attachable{contentId=124, url=ValidatedUri{https://www.hubspot.com/}, attachableType=LANDING_PAGE, title=title, publishState=PUBLISHED, deletedAt=null}, isLinkedToPillarPage=null, isPillarPage=null, createdAt=1547238986475, updatedAt=1547238986475, deletedAt=null}, coreTopic=Optional[Topic{id=1234, portalId=0, clusterId=1234, phrase=TOPIC PHRASE, attachedContent=null, isCoreTopic=false, createdAt=1547157062081, updatedAt=1547232313421, deletedAt=null}], pillarPage=Optional[AttachedContent{id=1234, topicId=1234, clusterId=1234, portalId=0, attachable=Attachable{contentId=null, url=ValidatedUri{https://www.hubspot.com.com/}, attachableType=EXTERNAL_URL, title=null, publishState=PUBLISHED, deletedAt=null}, isLinkedToPillarPage=null, isPillarPage=null, createdAt=1547157062086, updatedAt=1547157062086, deletedAt=null}], topic=Optional[Topic{id=1234, portalId=0, clusterId=8345, phrase=topic phrase, attachedContent=null, isCoreTopic=false, createdAt=1547238962703, updatedAt=1547238962703, deletedAt=null}]}) <div> Topic: <a href="#-link-to-pillar-page-url"> core topic phrase </a> </div>

注:この関数には1ページあたり10回の呼び出しという上限があります。

Use this table to describe parameters / fields
ParameterTypeDescription
content_id
Id

検索するページのID。

truncate

truncate関数の動作はtruncateフィルターとまったく同じですが、フィルター構文ではなく関数構文を使用します。最初のパラメーターは、文字列を指定します。2番目のパラメーターは、どこで切り捨てるかを長さで指定します。最後のパラメーターは、切り捨てが発生した場合に追加する文字を指定します。

{{ truncate("string to truncate at a certain length", 19, false, "...") }} {% set longString = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus sodales ultricies velit sit amet ornare." %} {{ truncate(longString, 40, false, "...") }} string to truncate ... Lorem ipsum dolor sit amet, consectetur ...
Use this table to describe parameters / fields
ParameterTypeDescription
string_to_truncate
String

切り詰められる文字列。

length
integer

テキストをどこで切り詰めるかを長さで指定します(HTML文字を含む)。

killwords
boolean

trueの場合、単語の途中であっても、文字列は指定された長さに切り詰められます。

end
String

テキストが切り詰められた位置を示すために付加される文字。

type

この関数は1つの引数を受け入れ、オブジェクトのタイプを返します。返される値は、"bool""datetime""dict""float""int""list""long""null""str""tuple"のいずれかです。

{{ type("Blog") }} {% set my_type = type("Blog") %} <p>{{my_type}}</p><p>str</p>

unixtimestamp

この関数はUnixタイムスタンプを返します。既定では現在のタイムスタンプが返されますが、オプションで日時オブジェクトを渡すと、それがUnixタイムスタンプに変換されます。

{{ unixtimestamp() }} {{ unixtimestamp(d) }} 1582822133978 1565983117868

update

別のディクショナリーオブジェクトから、または反復可能なキーと値のペアからの要素を使ってディクショナリーを更新します。

{% set dict_var = {"authorName": "Douglas Judy", "authorTitle": "Mastermind" } %} {% do dict_var.update({"authorFriend": "Jake"}) %} {% do dict_var.update({"authorLocation": "unknown"}) %} {{ dict_var }}{authorName=Douglas Judy, authorTitle=Mastermind, authorFriend=Jake, authorLocation=unknown}

参考になりましたか?
こちらのフォームではドキュメントに関するご意見をご提供ください。HubSpotがご提供しているヘルプはこちらでご確認ください。