データ参照の使用

データ参照を使用して、コンタクト、訪問者またはカスタム・オブジェクトのデータを取得できます。データ参照をWebサイトに実装すると、コンタクトや訪問者の情報を使用してWebページをパーソナライズできます。

Webデータ参照を使用すると、次のことができます。

  • 訪問者プロファイル・データに基づいて様々なWebページを表示する
  • Eメール・グループに属するコンタクトに特定のWebページを表示する
  • サイトの特定の部分へのアクセスを既知のコンタクトに許可する
  • フォームに情報を事前移入する

データ参照を実装するには、次のことが必要です。

  1. Oracle Eloquaで、新しいデータ参照を作成します。Webデータ参照を呼び出すには、データ参照キーが必要です。
  2. Oracle Eloquaトラッキング・スクリプトがWebページに実装されていることを確認します。

ヒント: Oracle Eloquaによって生成されるサンプル・コードをデータ参照の実装に役立てることができます。サンプル・コードを表示するには、データ参照をオープンし、「データ参照オプション」 > 「データ参照スクリプトの取得」をクリックします。データ参照の作成の詳細を参照してください。

Webページへのコンタクト・データの書込み

次に、コンタクト・データ参照から取得したコンタクト・データをWebページに書き込む方法について説明します。

divがページに配置され、データ参照から返されるコンタクト詳細がここに移入されます。

<div id="contactinfo">
  <!-- contact info will be added here -->
</div>

JavaScript関数によって、取得されたデータを含む段落要素が動的に作成され、前述のdivに配置されます。

function CreateRow(label, value) {
  var p = document.createElement('p');
  var b = document.createElement('b');
  p.appendChild(b);
  b.appendChild(document.createTextNode(label));
  p.appendChild(document.createTextNode(value));
  document.getElementById('contactinfo').appendChild(p);
}

コールバック関数SetElqContentを使用して、参照からデータが返されます。関数名は重要で、SetElqContentという関数である必要があります。返されるデータは、データ参照がどのように設定されているかによって異なります。次の例では、コンタクト・データが返されます。

function SetElqContent() {
  CreateRow('Contact Info: ', GetElqContentPersonalizationValue(''));
  CreateRow('First Name: ', GetElqContentPersonalizationValue('C_FirstName'));
  CreateRow('Last Name: ', GetElqContentPersonalizationValue('C_LastName'));
  CreateRow('Email Address: ',GetElqContentPersonalizationValue('C_EmailAddress'));
  CreateRow('Salesperson: ', GetElqContentPersonalizationValue('C_Salesperson'));
  CreateRow('Company: ', GetElqContentPersonalizationValue('C_Company'));
  CreateRow('Address 1: ', GetElqContentPersonalizationValue('C_Address1'));
  CreateRow('City: ', GetElqContentPersonalizationValue('C_City'));
  CreateRow('State or Province: ',GetElqContentPersonalizationValue('C_State_Prov'));
  CreateRow('Zip or Postal Code: ',GetElqContentPersonalizationValue('C_Zip_Postal'));
  CreateRow('Business Phone: ', GetElqContentPersonalizationValue('C_BusPhone'));
  CreateRow('Country: ', GetElqContentPersonalizationValue('C_Country'));
  CreateRow('Industry: ', GetElqContentPersonalizationValue('M_Industry1'));
  CreateRow('Revenue: ', GetElqContentPersonalizationValue('M_Revenue1'));
  CreateRow('Website: ', GetElqContentPersonalizationValue('M_WebSite1'));
  CreateRow('Date Created: ',GetElqContentPersonalizationValue('M_DateCreated'));
}

Oracle Eloquaサーバーにデータ参照を要求する_elqQ.push()が呼び出されます。

_elqQ.push(['elqDataLookup', escape('<Data_Lookup_Key>'), '<Data_Lookup_Criteria>']);

Data_Lookup_Keyは、データ参照を作成したときに生成されたグローバル一意識別子(GUID)です。これを取得するには、Oracle EloquaでWebデータ参照をオープンします。Data_Lookup_Criteria (必要な場合)は、コンタクトまたは訪問者を識別するために設定した基準です。たとえば、Eメール・アドレス<C_EmailAddress>user@example.com</C_EmailAddress>などです。データ参照の作成の詳細を参照してください。

すべてをまとめると、次のようになります。

<html>
<head>
    <script type="text/javascript">
        var _elqQ = _elqQ || [];
        _elqQ.push(['elqSetSiteId', '123']);
        _elqQ.push(['elqTrackPageView']);

        (function () {
            function async_load() {
                var s = document.createElement('script'); s.type = 'text/javascript'; s.async = true;
                s.src = '//img.en25.com/i/elqCfg.min.js';
                var x = document.getElementsByTagName('script')[0]; x.parentNode.insertBefore(s, x);
            }
            if (window.attachEvent) { window.attachEvent('onload', async_load); }
            else { window.addEventListener('DOMContentLoaded', async_load, false); }
        })();
    </script>
    <script type="text/javascript">
        function CreateRow(label, value) {
            var p = document.createElement('p');
            var b = document.createElement('b');
            var label = document.createTextNode(label);
            var value = document.createTextNode(value);
            p.appendChild(b);
            b.appendChild(label);
            p.appendChild(value);

            document.getElementById('contactinfo').appendChild(p);
        }

        function SetElqContent() {
            CreateRow('Contact Info: ', GetElqContentPersonalizationValue(''));
            CreateRow('First Name: ', GetElqContentPersonalizationValue('C_FirstName'));
            CreateRow('Last Name: ', GetElqContentPersonalizationValue('C_LastName'));
            CreateRow('Email Address: ', GetElqContentPersonalizationValue('C_EmailAddress'));
            CreateRow('Salesperson: ', GetElqContentPersonalizationValue('C_Salesperson'));
            CreateRow('Company: ', GetElqContentPersonalizationValue('C_Company'));
            CreateRow('Address 1: ', GetElqContentPersonalizationValue('C_Address1'));
            CreateRow('City: ', GetElqContentPersonalizationValue('C_City'));
            CreateRow('State or Province: ', GetElqContentPersonalizationValue('C_State_Prov'));
            CreateRow('Zip or Postal Code: ', GetElqContentPersonalizationValue('C_Zip_Postal'));
            CreateRow('Business Phone: ', GetElqContentPersonalizationValue('C_BusPhone'));
            CreateRow('Country: ', GetElqContentPersonalizationValue('C_Country'));
            CreateRow('Industry: ', GetElqContentPersonalizationValue('M_Industry1'));
            CreateRow('Revenue: ', GetElqContentPersonalizationValue('M_Revenue1'));
            CreateRow('Website: ', GetElqContentPersonalizationValue('M_WebSite1'));
            CreateRow('Date Created: ', GetElqContentPersonalizationValue('M_DateCreated'));
        }

        _elqQ.push(['elqDataLookup', escape('434C5E6250C04FCBB0D4FC5413F9A40A'), '
<C_EmailAddress>user@example.com</C_EmailAddress>']);
    </script>
</head>
<body>
    <div id="contactinfo">
    </div>
</body>
</html>

関連項目

Webデータ参照の作成

データ参照の使用例

ナレッジ・ベースFAQ: Webデータ参照