この記事では、URL構文を使用して、ページのタグ付けでルールを作成する方法について説明します。また、ページのタグ付けルールの編集方法の例とガイダンスが含まれています。ページのタグ付けの概要については、ページのタグ付けを参照してください。
タグ付けの基礎について詳しく知りたい方は、Pendo Academyで関連するビデオチュートリアルをご覧ください。
URL構文
Pendoは標準的なウェブURL構文ルールに従って、ページにタグ付けを行います。URLは複数の部分で構成されています。URLの主要部分は、通信プロトコル、サブドメイン、ドメインもしくはホスト名、およびパスから成ります。たとえば、URL https://www.example.com/category/user/profile.html
は、次のように構成されています。
URL構文 | 説明 |
https:// |
ブラウザがウェブサイトにアクセスするために使用する必要がある通信プロトコルまたはスキーム。 |
www. |
サブドメイン。これはドメインを共有するウェブサイトのさまざまな部分をグループ化したものです。これは、www. である必要はありません。たとえば、https://app.example.com のようにapp. とすることも可能です。 |
example.com |
ドメイン名。これはセカンドレベルドメイン( Pendoはデフォルトでワイルドカード( |
/category/user/profile.html |
ウェブサーバー上のリソースへのパス。ドメインの後にあるものはすべてパスです。これは、ドメイン内の特定のコンテンツやフォルダを識別するものです。以下に例を示します。
ほとんどの場合、パスは大文字と小文字が区別されます。このため、Pendoではタグ付けされたページのケース構文を取り込むことをお勧めします。 |
URLはこれより複雑な場合もあれば、そうでない場合もあります。以下の例を参照してください。
フラグメントの例
フラグメントは、ウェブページ内のセクションを参照する内部ページ参照で、名前付きアンカーと呼ばれることもあります。通常、フラグメントはURLの末尾に表示され、ハッシュタグ(#
)で始まり、その後に識別子が続きます。たとえば、URL https://www.example.com#someHeader
には、次の部分が含まれています。
-
https://
は通信プロトコル -
www.
はサブドメイン -
example.com
はドメイン -
#someHeader
はフラグメント
パスフラグメントの例
パスフラグメントとは、ウェブサイトのウェブフレームワーク技術のルーティングとして使用される内部ページ参照のことです。通常、パスフラグメントはURLの末尾に表示され、ハッシュタグ(#
)で始まり、その後に識別子が続きます。たとえば、URL https://www.example.com#products/widgets/12345
には、次の部分が含まれています。
-
https://
は通信プロトコル -
www.
はサブドメイン -
example.com
はドメイン -
#products/widgets/12345
はパスフラグメント
クエリパラメータの例
クエリパラメータは、URLの末尾で渡されるデータに基づいて、特定のコンテンツやアクションを定義します。通常、クエリパラメータはURLの末尾に表示され、疑問符(?
)で始まり、その後にクエリパラメータが続きます。たとえば、URL https://www.example.com?products=widgets
には、次の部分が含まれます。
-
https://
は通信プロトコル -
www.
はサブドメイン -
example.com
はドメイン -
?products=widgets
はクエリパラメータで、キーと値のペア
疑問符(?
)に続く文字列に複数のクエリパラメータがある場合、通常、キーと値のペアはアンパサンド(&
)で区切られます。例:?products=widgets&source=browser-search
パスフラグメントクエリパラメータの例
URLの末尾には、パス、フラグメント、クエリパラメータを組み合わせて記述することが可能です。たとえば、URL https://www.example.com/#products/widgets?item=12345
には、次の部分が含まれています。
-
https://
は通信プロトコル -
www.
はサブドメイン -
example.com
はドメイン -
#products=widgets
は、ウェブフレームワークのルーティングに使用されるパスフラグメント -
?item=12345
は、パスフラグメントのクエリパラメータで、キーと値のペア
URL構文の例
このセクションでは、ビジュアルデザインスタジオ(Visual Design Studio)でページにタグ付けする際に、ルールビルダー、もしくはカスタムURLオプションを使用してルールを作成する場合に使用できるステートメントと同等の構文の概要と例を示します。これら2つのオプションの詳細については、ページのタグ付けを参照してください。
ルールビルダーのステートメントとURL構文
ビジュアルデザインスタジオ(Visual Design Studio)でページにタグ付けするためのルールビルダーオプションは、タグ付け用に入力したURLの一部にステートメントを適用するオプションを提供することによって、ルールを作成するのに役立ちます。このセクションでは、これらのステートメントについて説明します。
詳細 | 構文 | 説明 |
<Ignore> |
/*/ |
2つのスラッシュ内すべてを無視します。 |
<Ignore after> |
** |
ルールを追加しない限り、2つのアスタリスク後のURL内のすべてを無視します。 |
<Parameter> |
/*parameter*/ |
2つのスラッシュ内すべてを無視します。 |
<Contains> |
~contains: |
後続の特定の文字列が含まれます。 |
search_params=_value |
?parameter= value |
パラメータが指定した値と一致する場合。 |
search_params=<anything> |
?parameter |
パラメータが任意の値と一致する場合。 |
カスタムURL構文の例
ビジュアルデザインスタジオでページのタグ付けに、カスタムURLオプションを使用すると、標準のURL構文を使用してページルールを作成できます。このセクションでは、この構文の例をご紹介します。詳細については、本記事のサポートされているURLのセクションを参照してください。
サブドメインの例
構文 | 説明 | 一致しない |
//~contains:pendo.io/** |
https://app.pendo.io および https://support.pendo.io |
https://mindtheproduct.com |
クエリパラメータの例
構文 | 説明 | 一致しない |
//www.pendo.io/features?language=english |
https://www.pendo.io/features?language=english | https://www.pendo.io/features?language=french |
//www.pendo.io/features?language |
https://www.pendo.io/features?language=english および https://www.pendo.io/features?language=french |
|
//www.pendo.io/features?language=~contains:english |
https://www.pendo.io/features?language=english-ireland および https://www.pendo.io/features?language=australia-english |
https://www.pendo.io/features?language=french-canada |
タグ付けルールの組み合わせ
ユーザーによるアプリケーション操作はイベントの生データとして収集され、Pendoエージェントを通じてPendoに送信されます。Pendoはこれらのイベントを処理し、ページのタグ付け用に作成したルールと照合します。ページのタグ付けルールで定義したイベントのみが、そのページのアナリティクスに取り込まれます。指定したページをベースにセグメント化やフィルタリングを行う場合、Pendoではイベントの生データを1件ずつ検索し、そのページ用に定義されたルールに一致するイベントのみを取り込みます。つまり、複数のルールを組み合わせれば、さらに充実したアナリティクスが実現できます。
Pendoのページは複数のルールで構成でき、ルールには複数のURLを収集するワイルドカードを含めることができます。これにより、イベントの生データの検索精度を高め、同じURLのバリエーションなど、特定のページビューでカウントすべきものを定義できます。また、アプリケーション全体やアプリケーションの各エリアのビューを表すページを作成することもできます。これは、セグメント化やレポートの作成、ガイドのターゲティングに役立ちます。たとえば、Pendoに「すべての連絡先」というページを設け、そこにすべての連絡先情報を収集することも可能です。
1つのページにあるURLのグループだけでなく、他のページにあるそのグループに属する個々のURLも収集できます。これによりアナリティクスの柔軟性が向上し、最も有用なデータにたどり着くことができます。タグ付けされた複数のページ用のタグ付けルールがあり、あるイベントが定義された基準を満たす場合、そのイベントは各ページの指標に取り込まれます。
たとえば、URLのグループ全体を収集する「すべての連絡先」という1つのページに加え、個々の連絡先情報をPendoの個別のページとして収集したいと仮定します。「すべての連絡先」ページと個々の連絡先情報ページの間で複数のタグ付けルールがあったり、同一のルールがあったりしても、お互いに影響することはありません。むしろ、複数または同一のタグ付けルールを持つページは、一致するタグを持つ関連する各ページに対して同じイベントをカウントします。
URLの例 | タグ付けルール | ページ | ページ閲覧数 |
https://www.example.com/contacts |
//*/contacts | 連絡先のランディングページ | 10 |
https://www.example.com/contacts/ steverogers |
//*/contacts/SteveRogers | Steve Rogers | 2 |
https://www.example.com/contacts/ tonystark |
//*/contacts/TonyStark |
Tony Stark |
3 |
https://www.example.com/contacts/jenniferwalters |
//*/contacts/JenniferWalters |
Jennifer Walter |
1 |
https://www.example.com/contacts/thorodinson |
//*/contacts/ThorOdinson |
Thor Odinson |
4 |
https://www.example.com/contacts/natasharomanoff |
//*/contacts/NatashaRomanoff |
Natasha Romanoff |
2 |
上記のすべて |
//*/contacts //*contacts/* |
すべての連絡先 |
22 |
パラメータ化されたURL
Pendoには、URLをパラメータ化する機能があります。Pendoページのパラメータは、アプリケーション内のURLまたはページのさまざまなバリエーションを特定して追跡するのに役立つ特定のクエリパラメータまたはパス変数です。これらのパラメータを使用すると、共通の構造を持ちながら特定の属性によって異なる、動的コンテンツやページでのユーザーインタラクションをより深く理解できます。
これは、作成したPendoのページの下にさまざまなワイルドカードの結果をネストできることを除けば、ワイルドカード*
と同様の機能です。これは便利な機能で、無数のURLを対象に、ひとつのエントリでページルールを作成することができます。
たとえば、以下のような3つのURLがあり、それらのコンテンツが類似していたり、一緒に表示したい場合。
https://www.pendo.io/features/foo/
https://www.pendo.io/features/bar/
https://www.pendo.io/features/ipsum/
次のページルールを使用すると、3つすべてを取得できます。
//*/features/*parameter*/
これらは、サブスクリプション内のページルールの下に、パラメータ値およびページ閲覧数と一緒に表示されます。
上記と同じ構文を使用して、単一のクエリパラメータをページパラメータとして保存できます。例:/*/?first=*parameter*
注:ページルールをパラメータ付きで使用している場合、そのルール内にパラメータのインスタンスを複数入れることはできません。複数入れてしまうと、上位パラメータのデータが正しく表示されなくなります。以下はその例です。
- 正しい使い方:
//*/page/*parameter*
- 誤った使い方:
//*/*parameter*/*parameter*
Pendoは1つのページタグにつき1つのパラメータリストのみを追跡するため、パラメータを含む複数の包含ルールを持つページは、上位パラメータの同じリストに追加されます。データの不一致を避けるために、ルールを適切に構成してください。
パラメータの値は大文字と小文字を区別せず、Pendo UIには上位100個のパラメータのみが表示されます。収集したすべてのページパラメータを分析するには、APIを使用したページパラメータの分析に記載されているAPIを使用します。
URLにUTMパラメータを追加する
UTMとはURLの末尾に追加するタグで、リンクのソースに関する情報を提供します。たとえば、UTMを追加したリンクをメールに埋め込む場合、リンクは www.example.com?utm_source=email
のようになります。URLにutm_source
を追加することで、各ソースからのアクティビティを個別に追跡できます。
UTMパラメータ値に関するアナリティクスを表示するには、UTMパラメータをPendoのページとしてタグ付けする必要があります。Pendoでは、以下の2つのいずれかの方法を使用して、PendoのページとしてUTMパラメータをタグ付けすることを推奨します。
- 各URLにタグを付けて、UTMパラメータ値ごとに1つのページを作成する。
- Pendoのパラメータ機能を使って、有効なすべてのUTM値をする収集する1つのページを作成する。
方法1. UTMパラメータ値ごとにページを作成する
UTMパラメータ値の数が限られている場合や、選択した一部のパラメータ値のみに関心がある場合は、Pendoの個別のページとして各値をタグ付けします。PendoではUTMパラメータ値ごとにページが作成されるため、個々のUTMソースごとに使用状況アナリティクスを表示できます。また、データエクスプローラ、ファネル、パスのレポートなどを含むPendo UI全体で各値を調べることもできます。
たとえば、以下の3つのutm_source
値に関するアクティビティを表示するために、各パラメータ値ごとにPendoのページを作成するといったことが、この方法に該当します。
URL | ページのタグ付けルール |
https://www.pendo.io?utm_source=email |
//*/?utm_source=email |
https://www.pendo.io?utm_source=blog_post |
//*/?utm_source=blog_post |
https://www.pendo.io?utm_source=referral |
//*/?utm_source=referral |
方法2. 複数のUTMパラメータ値を収集するページを作成する
UTMパラメータとして有効な値が多くある場合、Pendoのパラメータ機能を使用して、有効な値すべてをPendoの1つのページに収集するルールを1つ作成します。
たとえば、以下の3つのutm_source
値すべてのアクティビティを表示できるページを、1つのパラメータを持つ1つのルールで作成することができます。これらの値は、そのページの [上位パラメータ(Top Parameters)]の下に表示され、各値の閲覧数もこのパラメータテーブルに表示されます。
URL | ページのタグ付けルール |
https://www.pendo.io?utm_source=email |
//*/?utm_source=*parameter* |
https://www.pendo.io?utm_source=blog_post |
|
https://www.pendo.io?utm_source=referral |
サポートされているURL
次の表に、サポートされている標準のURL構文と例を示します。
構文 | 説明 | 例 |
標準URL | ウェブページの完全なアドレス。 |
https://www.pendo.io/features/platform/index.html |
ワイルドカード(* ) |
URLに含まれる任意の数の文字と一致するようにするために使用されるシンボル。複数のワイルドカードを使用できます。 |
https://www.pendo.io/features/* https://www.pendo.io/features/platform/index.html/*/* |
以降は無視(** ) |
2つのワイルドカードの後はすべて無視します。 | https://www.pendo.io/features/platform/index.html/users/** |
フラグメント(# ) |
内部ページの参照。 |
https://domain.com/#page1 注:ページルールでは、フラグメント( |
パスフラグメント(# もしくは#! ) |
内部ページのルーティング。 |
https://domain.com/#documents/engineering/widgets 注:パスのフラグメントにワイルドカード( |
含む(~contains: ) |
特定の文字列を含めます。 |
https://www.pendo.io/features/platform/index.html/users/~contains:dashboard |
パラメータの存在を照会(? ) |
パラメータが存在するかどうかを照会します。 | https://pendo.io?mobile |
パラメータ値を照会(? および= ) |
パラメータの値を照会します。 |
https://pendo.io?language=english |
複数のクエリパラメータ(? 、& 、および= ) |
複数のパラメータの存在と値を照会します。 | https://pendo.io?mobile&language=english |
Pendoはhttps://domain.com/#page1
とhttps://domain.com/#page2
の違いを認識します。ページルールhttps://*
は、両方のURLと一致します。URLがこのように構成されていて、https://domain.com
のみに対応するページルールが必要な場合は、ロケーションAPIについてのドキュメントを確認してください。
サポートされていないURL
以下の表は、サポートされていないURL構文と例を示します。
構文 | 説明 |
ページパラメータ(; の後、? または# の前のセクション) |
Pendoは、URLで動的に設定されたページパラメータをスキップします。 |
ページルール内のNOT のあらゆる形式 |
PendoはURL構文でNOT をサポートしていません。 |
クエリパラメータ名のクエリ(? )の後に含む(~contains: ) |
Pendoはクエリパラメータ名を評価するURL構文で たとえば、 |
* は、2つのスラッシュの間で文字列の全体を照合する場合にのみワイルドカードとして機能する |
たとえば、https://www.pendo.io/features はhttps://*/* と一致しますが、//*.pendo.io/features や//www.pendo.io/f*s とは一致しません。 |
* は? の後では機能しない
|
ワイルドカードは文字どおりに扱われます。 |
クエリパラメータの順序は、? の後では無視される
|
たとえば、https://www.pendo.io?first=one&second=two とhttps://www.pendo.io?second=two&first=one は、どちらもページルール//www.pendo.io?first=one&second=two と一致します。 |
URLの正規化
正規化により、URLをルールに一致した、一貫性と信頼性が高いフォーマットに変換します。具体的には、スペースに対して%20
や+
などの特別なルールを適用します。これは、URLでスペースが伝達される方法ごとに、複数のルールを作成する必要がないようにするためです。また、パスフラグメントに対しては、#
を#!
に正規化します。これは、フラグメントとパスフラグメントを区別するためのものです。
下の表は、元のURLがどのように正規化され、どのようなルールに一致するのかの例を示しています。
元のURL | 正規化済みURL | 一致ルール |
https://www.example.com/foo%20bar |
https://www.example.com/foo+bar |
//*/foo%20bar |
https://www.example.com/foo+bar |
https://www.example.com/foo%20bar |
|
https://www.example.com/?query=foo%20bar |
https://www.example.com/?query=foo+bar |
|
https://www.example.com/#path/to/page/ |
https://www.example.com/#!/path/to/page |
|
https://www.example.com/#documents/123/widgets/ |
https://www.example.com/#!/documents/123/widgets |
|