$p("init")

$p("init"): (String, Object) -> undefined

📘

技術ドキュメント

これは、initi関数に関する技術ドキュメントです。この関数は、LiftIgniterの組み込みにおいて、Javascriptのスニペットをインストールする際に使用します。

スクリプトのデフォルト設定は、configオブジェクトを指定することで調整することができます。

ここでは実際にどんなことができるのか、事例を紹介します。例えば、ページを読み込む際に、自動でインベントリのスクレープを行うのを停止する場合は:

<script type="text/javascript">
if (typeof $igniter_var === 'undefined') {
// クライアントコードのアップデートが行われるようにします。
(function(w,d,s,p,v,e,r) {w.$ps = (w.performance && w.performance.now && typeof(w.performance.now) == "function") ? w.performance.now() : undefined;w['$igniter_var']=v;w[v]=w[v]||function(){(w[v].q=w[v].q||[]).push(
arguments)};w[v].l=1*new Date();e=d.createElement(s),r=d.getElementsByTagName(s)[0];e.async=1;
e.src=p+'?ts='+(+new Date()/3600000|0);
r.parentNode.insertBefore(e,r)})(window,document,'script','//cdn.petametrics.com/{JAVASCRIPT_KEY}.js','$p');
// JAVASCRIPT_KEYをcdn urlに置き換えてください。

var customConfig = {
	inventory: {
  	collect: false
  }
}

$p("init", {JAVASCRIPT_KEY}, {config: customConfig}); // REPLACE JAVASCRIPT_KEY
$p("send", "pageview");
}
</script>

オプションオブジェクトの[config.inventory.collect = false]を設定して、スクリプトが初期化された際の、自動スクレープを停止することができます。

`[config]は、[インベントリ]と[sdk]の2つの入れ子状オブジェクトを持つトラッカーを示します。[インベントリ]は、ページ上のデータのスクレープに関連する関数の設定を定義します。[sdk]は、 SDKに関連する関数の設定を定義します。この他の[config]オブジェクトの中で組み合わせるキーの値は、JS SDKに他の動作をさせるように設定します。

// General structure of the config variable
var config = {
  inventory: {INVENTORY_OPTION: VALUE_A},
  sdk: {SDK_OPTION: VALUE_B},
  CONFIG_OPTION: VALUE_C
  ...
}

[インベントリ]オブジェクトに設定可能なオプションとその値は下記のとおりです:

名前

タイプ(デフォルト値)

説明

collect

trueまたはfalse(true)

この値を"true"に設定すると、$p("init")が呼び出されるごとにインベントリ収集の機能が実行されます。この値を"false"に設定すると$p("sendItem")の関数が有効になります。

version

数値(設定なし)

インベントリのバージョンを指定します。インベントリのバージョンが指定されると、クライアントに指定されたバージョンと同じ、またはそれより新しいバージョンのインベントリがリコメンデーションとして返されるか、我々側からスクレープされます。

collectJSON

trueまたはfalse(true)

この値を"true"に設定すると、インベントリ収集の機能が、LiftIgniterメタデータのDOMからテキストコンテンツを解析して、JSONコンテンツをLiftIgniterに送信する情報をマージします。

collectOpenGraph

trueまたはfalse(true)

この値を"true"に設定すると、インベントリ収集の機能が、ページ上のOpenGraphのデータをスクレープします。

collectOpenGraphOnly

trueまたはfalse(true)

この値を"true"に設定すると、スクリプトは必須のOpenGraphの値をすべて持っているページの情報だけを収集します。

disableCustomWidget

trueまたはfalse(false)

この値を"true"に設定すると、LiftIgniterが埋め込んだウィジェトの表示を停止します。

mandatoryFeatures

Array[String] (["title", "url"])

LiftIgniterにリコメンドの対象となるページまたはアイテムとして送る際に必須となる値のリスト。デフォルトでは、"title"と"url"が設定されています。

mandatoryOpenGraphFeatures

Array[String] (["title","url","type"])

LiftIgniterにリコメンドの対象となるページまたはアイテムとして送る際に必須となるOpenGraphの値のリスト。デフォルトでは、"title"、"type"と"url"が設定されています。

features

Array[Object] (undefined)

スクリプトがスクレープする値のリスト。オブジェクトに関するドキュメントは下記を参照してください。詳細はこのドキュメントを参照してください。

filters

Array[Object] ([\{name:"noIndex", value: "true"}][{name:"noIndex", value: "true"}])

インベントリをスクレープする際のフィルタリングリスト。スクリプトが[name]の識別子に[value]の値を指定されたフィールドをスクレープすると、スクリプトはページ自体のスクレープを行いません。

itemRegex

JS Regular Expression (undefined)

ページのコンテンツの[url]または[id]に合致する正規表現。[url]または[id]が指定された正規表現に合致する場合は、LiftIgniterに送られます。

excludeRegex

JS Regular Expression (undefined)

[url]または[id]が指定された正規表現に合致する場合は、LiftIgniterに送られません。

extensionOff

trueまたはfalse(false)

この値を"true"に設定すると、LiftIgniterのカスタムJSを停止します。

[activity]オブジェクト向け

名前

タイプ(初期値)

説明

canonicalUrlTransform

Function (identity)

[window.location]から取得した現在の正規URLを、Functionから返された値に変換する。

urlTransform

Function (identity)

[window.location.href] から取得したURLを、Functionから返された値に変換する。

[sdk]オブジェクト向け

名前

タイプ(初期値)

説明

requestFields

文字列配列( ["url", "author", "title", "rank", "thumbnail"])

リコメンデーションから受け取るフィールドのリスト。

arrayRequestFields

文字列配列([])

リコメンデーションから文字列配列として受け取るフィールドのリスト。

requestFieldsAON

trueまたはfalse(false)

この値を"true"に設定すると、モデルクエリに、"requestFields"で指定したすべてのフィールドに値を持つアイテムを返すようにリクエストします。

mandatoryRequestFields

Array of String ([])

If requestFieldsAON is set to false (or not set, so it defaults to false) this allows you to mark a subset of requestFields as mandatory. We only return items that have all those fields.

mandatoryArrayRequestFields

Array of String ([])

If requestFieldsAON is set to false (or not set, so it defaults to false) this allows you to mark a subset of arrayRequestFields as mandatory. We only return items that have all those fields.

multiFetch

trueまたはfalse(false)

この値を"true"に設定すると、JavaScript SDKに同じページに複数のリコメンデーションのクエリを送ることができるようにします。

pushStateReset

trueまたはfalse(false)

この値を"true"に設定すると、pushStateが実行された際に、新たなページをリフレッシュして呼び出します。

replaceStateReset

trueまたはfalse(false)

この値を"true"に設定すると、replaceStateが実行された際に、新たなページをリフレッシュして呼び出します。

pushStateCallback

Function (function(){})

pushStateResetまたはreplaceStateが"true"に設定されている場合またはハッシュベースのルーティングが有効になっている場合に、pushStateまたはhash routingの際に呼び出されるcallback関数。

[histSettings]オブジェクト向け

名前

タイプ(初期値)

説明

stripTags

trueまたはfalse(true)

この値を"true"に設定すると、URLからタグを外して、ユーザの閲覧履歴を整理します。

stripHashes

trueまたはfalse(true)

この値を"true"に設定すると、URLからタグを外して、ユーザの閲覧履歴を整理します。

stripDashes

trueまたはfalse(true)

この値を"true"に設定すると、URLからハッシュを外して、ユーザの閲覧履歴を整理します。

origin

String (undefined)

ユーザが滞在しているページのホストを置き換えます。例えば、ユーザが"www.facebook.com/blah"に滞在している際に、この値が"www.google.com"に設定されていると、現在のURLとして送られるデータは"www.google.com/blah"になります。

一般的なオブジェクト(ネストされたオブジェクトを除く)向け

名前

タイプ(初期値)

説明

apiRegex

JS Regular Expression (undefined)

この設定を行うと、指定された正規表現に合致するURL上のアクティビティだけを送ることができるようになります。これを使用することで、ローカルホストやテスト環境でのアクティビティをフィルタすることができます。

apiExcludeRegex

JS Regular Expression (undefined)

この設定を行うと、指定された正規表現に合致するURL上のアクティビティだけを送らないことができるようになります。これを使用することで、ローカルホストやテスト環境でのアクティビティをフィルタすることができます。

globalTracking

trueまたはfalse(false)

この値を"true"に設定すると、ユーザのサイトをまたいだ動きをトラックする、サードパーティーのCookieを有効にします。

trackingTransURL

function (default: identity)

引数として[track]の関数でトラックされているURLおよびコンテンツIDのアイテムを取り込み、ユーザが閲覧またはクリックしたURLを値として返す関数を定義します。

customBrowsingHistory

function (default: undefined)

この関数が定義されると、ユーザの閲覧履歴をアップデートする内部JS関数を実行します。