Correspondence Management アセットへのカスタムプロパティの追加

概要

Correspondence Management ユーザーインターフェイスをカスタマイズし、調整したプロパティとタブのセットをユーザーに提示できます。このカスタマイズには、特定のアセットタイプとレター、またはすべてのアセットタイプとレターへのカスタムフィールド/プロパティおよびタブの追加が含まれます。

Correspondence Management アセットへのカスタムプロパティの追加

以下のシナリオで、Correspondence Management アセットおよびレターにプロパティ/タブを追加する方法について説明します。

  • すべてのアセットタイプへの共通プロパティの追加
  • すべてのアセットタイプへの共通タブの追加
  • 特定のアセットタイプへのカスタムプロパティの追加

これらのシナリオでプロパティ、パスおよび値を調整することにより、要件に従い、様々なアセットのセットにカスタムプロパティおよびタブを追加できます。

シナリオ:すべてのアセットタイプへの共通フィールド(プロパティ)の追加

このシナリオでは、すべてのアセットタイプ(テキスト、リスト、条件およびレイアウトフラグメント)およびレターにカスタムプロパティを追加する方法について説明します。このシナリオを使用して、すべてのアセットおよびレターにプロパティ「受信者の場所」を追加できます。「受診者の場所」プロパティにより、アセットまたはレターが関連する配信地域を特定できます。

メモ

カスタムプロパティを追加すると、プロパティはアセット作成ページに表示されるようになります。このようなプロパティを非表示にする方法については、「アセット作成ページとプロパティページでのカスタムプロパティの表示/非表示」を参照してください。

すべてのアセットタイプに追加されたカスタムプロパティ

すべてのアセットタイプおよびレターにカスタムプロパティを追加するには、次の手順を実行します。

  1. https://'[server]:[port]'/[ContextPath]/crx/de に移動して、管理者でログインします。

  2. apps フォルダー内で、次の手順で css フォルダー(ccrui フォルダーに存在)に類似したパス/構造で、css という名前のフォルダーを作成します。

    1. 以下のパスにある items フォルダーを右クリックし、ノードをオーバーレイ​を選択します。

      /libs/fd/cm/ma/gui/content/cmmetadataproperties/commonproperties/col1/items

      ノードをオーバーレイ

    2. ノードをオーバーレイダイアログに次の値が表示されていることを確認します。

      パス:/libs/fd/cm/ma/gui/content/cmmetadataproperties/commonproperties/col1/items

      場所: /apps/

      ノードタイプを一致させる:​選択済み

      ノードをオーバーレイ

    3. OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。

    4. すべて保存」をクリックします。

  3. 次の手順を使用し、新規作成した items フォルダーにすべてのアセットのカスタムプロパティ用のノードを追加します(例:GeoLocation)。

    1. items フォルダーを右クリックして、「作成ノードを作成」を選択します。

      CRX でのノードの作成

    2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

      名前: GeoLocation(または、このプロパティに与える任意の名前)

      型: nt:unstructured

      ノードを作成:GeoLocation

    3. 作成した新しいノード(ここでは「GeoLocation」)をクリックします。CRX にノードのプロパティが表示されます。

    4. このノード(ここでは「GeoLocation」)に次のプロパティを追加します。

      名前 種類
      fieldLabel 文字列 フィールド/プロパティに与える任意の名前。(ここでは「Location of recipients」)
      name 文字列 ./extendedproperties/GeoLocation(値は items ノードで作成したフィールド名と同じにします)
      renderReadOnly ブール値 true
      sling:resourceType 文字列 granite/ui/components/coral/foundation/form/textfield
    5. すべて保存」をクリックします。

  4. カスタマイズ内容を表示するには、アセット(テキスト、リスト、条件またはレイアウトフラグメント)またはレターの上にカーソルを置き、「プロパティを表示」をクリックし、「編集」をクリックします。新しいフィールド(Location of recipients)がアセット/レタープロパティの「基本」タブに表示されます。

    メモ

    カスタマイズ内容を UI に表示するには、ブラウザーのキャッシュをクリアする必要が生じる場合があります。

    すべてのアセットに追加されたカスタムプロパティ

    メモ

    すべてのアセットに追加する共通プロパティは、アセットプロパティの「基本」タブに表示されます。デフォルトでは、すべてのアセットに追加する共通プロパティは、プロパティページおよびアセット作成ページに表示されます。共通のプロパティを非表示にするには、 を実行する必要があります。

シナリオ:カスタムプロパティ/フィールドへのカスタムドロップダウンおよび値の追加

このシナリオでは、すべてのアセットタイプにカスタムプロパティを追加し、そのドロップダウン値を追加する方法について説明します。

  1. 次のパスにある items フォルダーを右クリックし、「ノードをオーバーレイ」を選択します。

    /libs/fd/cm/ma/gui/content/cmmetadataproperties/commonproperties/col1/items

  2. 新しく作成したオーバーレイノード(/apps/fd/cm/ma/gui/content/cmmetadataproperties/commonproperties/col1/items)の下に、タイプ nt:unstructured のドロップダウン(ここでは geographicallocation)を作成する必要があるプロパティ(フィールド)のそれぞれのノードを作成します。

  3. 次のプロパティをノード(ここでは「geographicallocation」)に追加し、「すべて保存」をクリックします。

    名前 タイプ
    fieldLabel 文字列 フィールド/プロパティに与える任意の名前。(ここでは「geographicallocation」)
    名前 文字列 。/extendedproperties/geographicallocation(値は items ノードで作成したフィールド名と同じにします)
    renderReadOnly ブール値 true
    sling:resourceType 文字列 granite/ui/components/coral/foundation/form/select
  4. プロパティノード(ここでは「geographicallocation」)に、items という名前の新しいノードを追加します。items ノードに、ドロップダウン内の各値のノードを追加します。ドロップダウンのデフォルト値およびユーザーがフィールドに値を指定しないためのオプションとして機能するように、最初のノードを空白として追加することをお勧めします。複数のオプション/ドロップダウン値を追加するには、次の手順を繰り返します。

    1. プロパティノード(ここでは geographicalLocation)を右クリックし、作成ノードを作成​を選択します。

    2. フィールド名に item1, を入力し、タイプは nt:unstructured のままにして、「OK」をクリックします。

    3. 次のプロパティを新しく作成したノード(ここでは「item1」)に追加し、「すべて保存」をクリックします。

      名前 タイプ
      text 文字列 これは、ユーザーに表示されるドロップダウンオプションの値です。空白(デフォルト)値の場合は空白のままにします。または、「海外」、「米国内」などの値を入力します。
      value 文字列 テキストに対して CRXDE に保存される値。一意のキーワードを入力します。

      customizationdropdownvaluescrxde

    カスタムドロップダウンは、アセットプロパティで次のように表示されます。

    drop-down_customization

    シナリオ:すべてのアセットタイプ用の共通タブ

    このシナリオでは、すべてのアセットタイプ(テキスト、リスト、条件およびレイアウトフラグメント)およびレターにカスタムタブ「Recipients」を追加する方法について説明します。「Recipients」タブに、受信者に関連するすべてのカスタムプロパティを配置することができます。

    すべてのアセットタイプに追加されたカスタムタブ

    次の手順を使用して、すべてのアセットにフィールド付きのタブを追加できます。

    1. https://'[server]:[port]'/[ContextPath]/crx/de にアクセスし、管理者としてログインします。

    2. apps フォルダーに、(content フォルダー内の)cmmetadataproperties フォルダーに類似したパス/構造で cmmetadataproperties という名前のフォルダーを作成します。手順は次のとおりです。

      1. 次のパスにある cmmetadataproperties フォルダーを右クリックし、「ノードをオーバーレイ」を選択します。

        /libs/fd/cm/ma/gui/content/cmmetadataproperties

        ノードをオーバーレイ

      2. ノードをオーバーレイダイアログに次の値が表示されていることを確認します。

        パス: /libs/fd/cm/ma/gui/content/cmmetadataproperties

        場所: /apps/

        ノードタイプを一致させる:​選択済み

      3. OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。

        CRX で作成されたオーバーレイフォルダー構造

        すべて保存」をクリックします。

    3. cmmetadataproperties フォルダーに、すべてのアセット用のカスタムタブを作成するためのノードを追加します(例:commontab)。手順は次のとおりです。

      1. cmmetadataproperties フォルダーを右クリックして、「作成ノードを作成」を選択します。

        ノードを作成

      2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

        名前: commontab(または、このプロパティに与える任意の名前)

        タイプ: nt:unstructured

      3. 新しく作成したノードをクリックします(ここでは「commontab」)。CRX にノードのプロパティが表示されます。

      4. このノード(ここでは「commontab」)に次のプロパティを追加します。

        名前 タイプ
        jcr:title 文字列 列に与える任意の名前。(ここでは「Recipients」)
        sling:resourceType 文字列 granite/ui/components/coral/foundation/container
        1. すべて保存」をクリックします。
      5. 次の手順を使用し、最後の手順で作成したタブノード(ここでは「commontab」)に対して item という名前のノードを作成します。

        1. 関連ノード(ここでは「commontab」)を右クリックし、「作成ノードを作成」を選択します。

        2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前: items

          タイプ: nt:unstructured

        3. すべて保存」をクリックします。

      6. 前の手順で作成した items ノード(commontab の下)で、カスタムタブ(commontab)内の列(ここでは「Column1」)を作成するためのノードを追加します。手順は次のとおりです(さらに列を追加するには、この手順を繰り返します)。

        1. items ノードを右クリックし、「作成ノードを作成」を選択します。

        2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前: Column1(または、このノードに与える任意の名前。この名前はユーザーインターフェイスには表示されません。)

          タイプ: nt:unstructured

        3. 次のプロパティをノード(ここでは「Column1」)に追加し、「すべて保存」をクリックします。

          名前 タイプ
          sling:resourceType 文字列 granite/ui/components/coral/foundation/container
      7. 前の手順で作成したノード(ここでは「Column1」)に、item という名前のノードを作成します。手順は次のとおりです。

        1. ノード(ここでは「Column1」)を右クリックし、「作成ノードを作成」を選択します。

        2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前: items

          タイプ: nt:unstructured

        3. すべて保存」をクリックします。

      8. カスタムタブ(ここでは「Recipients」)にフィールドを作成するには、ノード(ここでは「GeographicalLocation」)を追加します。このプロパティは、作成した列に対応します。フィールドの作成手順は次のとおりです(さらにフィールド/ノードを作成するには、この手順を繰り返します)。:

        1. items ノードを右クリックし、「作成ノードを作成」を選択します。

        2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前: GeographicalLocation(または、フィールドプロパティの別の名前)

          タイプ: nt:unstructured

        3. 次のプロパティをフィールドノード(ここでは GeographicalLocation)に追加し、「すべて保存」をクリックします。

          名前 種類
          fieldLabel 文字列 Location of recipients(または、フィールドに与える任意の名前。)
          名前 文字列 。/extendedproperties/GeographicalLocation
          renderReadOnly ブール値 true
          sling:resourceType 文字列 /libs/granite/ui/components/coral/foundation/form/textfield
      9. レターにこのタブを追加するには、次のパスにある以下の items フォルダーに類似したパス/構造でオーバーレイフォルダーを作成します。

        /libs/fd/cm/ma/gui/content/cmmetadataproperties/properties/letter/items/tabs/items

        レターまたは異なるアセットに対してオーバーレイを作成するには、[assettype] を text、condition、list、datadictionary または fragment に置き換えて、次のパスを使用します。

        /libs/fd/cm/ma/gui/content/cmmetadataproperties/properties/[assettype]/items/tabs/items

        1. 次のパスにある items フォルダーを右クリックし、「ノードをオーバーレイ」を選択します。

          /libs/fd/cm/ma/gui/content/cmmetadataproperties/properties/letter/items/tabs/items

        2. ノードをオーバーレイダイアログに次の値が表示されていることを確認します。

          パス: /libs/fd/cm/ma/gui/content/cmmetadataproperties/properties/letter/items/tabs/items

          場所:/apps/

          ノードタイプを一致させる:​選択済み

        3. OK」をクリックします。フォルダーが作成されます。「すべて保存」をクリックします。

      10. 新規作成した items フォルダーに、アセットのカスタムタブ用のノードを追加します(ここでは「mytab」とします。この名前はユーザーインターフェイスには表示されません)。手順は次のとおりです。

        1. items フォルダーを右クリックして、「作成ノードを作成」を選択します。

        2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前: mytab(または、このプロパティに与える任意の名前)

          タイプ: nt:unstructured

        3. 新しく作成したノードをクリックします(ここでは「mytab」)。CRX にノードのプロパティが表示されます。

        4. このノード(ここでは「customtab」)に次の 2 つのプロパティを追加します。

          名前 タイプ
          path
          文字列 fd/cm/ma/gui/content/cmmetadataproperties/commontab
          sling:resourceType 文字列 granite/ui/components/coral/foundation/include
        5. すべて保存」をクリックします。

      11. カスタマイズ内容を表示するには、関連するアセット(ここではレター)の上にカーソルを置き、「プロパティを表示」をクリックし、「編集」をクリックします。新しいタブ(Recipients)とフィールド(Location of Recipients)がユーザーインターフェイスに表示されます。

        メモ

        カスタマイズ内容を UI に表示するには、ブラウザーのキャッシュをクリアする必要が生じる場合があります。

        レターに追加されたカスタムタブ

      シナリオ:特定のアセットタイプのカスタムプロパティの追加

      このシナリオでは、すべてのテキストアセットに対するフィールドなど、特定のアセットタイプにプロパティを追加する方法について説明します。このプロセスを使用して、次のいずれかにプロパティを追加できます。

      • テキスト
      • 条件
      • リスト
      • レイアウトフラグメント
      • データディクショナリ
      • レター

      例えば、テキストアセットにのみ、プロパティ「受信者の場所」を追加して、アセットが関連する地域を特定することができます。アセットに追加されたカスタムプロパティ

      アセットタイプにプロパティを追加するには、次の手順を実行します。

      1. https://'[server]:[port]'/[ContextPath]/crx/de に移動して、管理者としてログインします。

      2. アセットタイプ(テキストなど)でタブを作成するには、apps フォルダーに以下のフォルダー構造を作成します。

        /libs/fd/cm/ma/gui/content/cmmetadataproperties/properties/[AssetType]/items/tabs/items

        [AssetType] = text、condition、list、letter、datadictionary または fragment

        次の手順に従って、このフォルダー構造を作成します。

        1. 以下のパスにある items フォルダーを右クリックし、「ノードをオーバーレイ」を選択します。

          /libs/fd/cm/ma/gui/content/cmmetadataproperties/properties/[AssetType]/items/tabs/items

          例えば、テキストアセットのプロパティを作成する場合は、次のフォルダーを選択します。

          /libs/fd/cm/ma/gui/content/cmmetadataproperties/properties/text/items/tabs/items

          ノードをオーバーレイ

        2. ノードをオーバーレイダイアログに次の値が表示されていることを確認します。

          パス: /libs/fd/cm/ma/gui/content/cmmetadataproperties/properties/[AssetType]/items/tabs/items

          場所:/apps/

          ノードタイプを一致させる:​選択済み

        3. OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。

          すべて保存」をクリックします。

      3. 次の手順を使用し、新規作成した items フォルダーにアセットのカスタムタブ用のノードを追加します(例:customtab)。

        1. items フォルダーを右クリックして、「作成ノードを作成」を選択します。

        2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前: customtab(または、このプロパティに与える任意の名前)

          タイプ: nt:unstructured

        3. 新しく作成したノードをクリックします(ここでは「customtab」)。CRX にノードのプロパティが表示されます。

        4. このノード(ここでは「customtab」)に次の 2 つのプロパティを追加します。

          名前 種類
          sling:resourceType 文字列 granite/ui/components/coral/foundation/container
          jcr:title 文字列 ユーザーインターフェイス上のフィールドの名前(ここでは「My tab」)
        5. すべて保存」をクリックします。

      4. 次の手順を使用し、前の手順で作成したノード(ここでは customtab)に item という名前のノードを作成します。

        1. ノード(ここでは「customtab」)を右クリックし、「作成ノードを作成」を選択します。

        2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前: items

          タイプ: nt:unstructured

        3. すべて保存」をクリックします。

      5. 次の手順を使用し、前の手順で作成した items ノード(customtab の下)で、カスタムタブ内の列(ここでは Column1)を作成するためのノードを追加します(さらに列を追加するには、この手順を繰り返します)。

        1. items ノードを右クリックし、「作成ノードを作成」を選択します。

        2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前: Column1(または、このノードに与える任意の名前)

          タイプ: nt:unstructured

        3. 次のプロパティをノード(ここでは Column1)に追加してから、「すべて保存」をクリックしてください。

          名前 タイプ
          sling:resourceType 文字列 granite/ui/components/coral/foundation/container
      6. 次の手順を使用し、作成する各列(前の手順で作成した列、ここでは Column1)に item という名前のノードを作成します。

        1. 関連する列ノード(ここでは「Column1」)を右クリックし、「作成ノードを作成」を選択します。

        2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前: items

          タイプ: nt:unstructured

        3. すべて保存」をクリックします。

      7. 作成した各列で、items ノードに、ユーザーインターフェイス内の新しいタブにフィールドを作成するためのノードを作成します。列でさらにフィールドを作成するには、この手順を繰り返します。

        1. 関連ノード(ここでは「Column1」の下の「items」)を右クリックし、「作成ノードを作成」を選択します。

        2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前:​任意の名前(ここでは GeoLocation)

          タイプ: nt:unstructured

        3. 次のプロパティをノードに追加して、「すべて保存」をクリックします。

          名前 種類
          fieldLabel 文字列 Location of recipients(または、フィールドに与える任意の名前。)
          名前 文字列 ./extendedproperties/GeoLocation
          renderReadOnly ブール値 true
          sling:resourceType 文字列 granite/ui/components/coral/foundation/form/textfield
      8. カスタマイズ内容を表示するには、関連するアセット(ここではテキスト)の上にカーソルを置き、「プロパティを表示」をクリックし、「編集」をクリックします。新しいタブとフィールド(Location of Recipients)がユーザーインターフェイスに表示されます。

        メモ

        カスタマイズ内容を UI に表示するには、ブラウザーのキャッシュをクリアする必要が生じる場合があります。

        特定のアセットに追加されたカスタムプロパティ

      アセット作成ページでのカスタムプロパティの表示

      アセット作成ページにはタブレイアウトがないので、デフォルトでは、新しいタブに追加されたカスタムプロパティはプロパティページにのみ表示され、アセット作成ページには表示されません。アセット作成ページに他のプロパティと共にカスタムプロパティを表示するには、次の手順を実行する必要があります。

      1. 以下のパスにある items フォルダーを右クリックしてから、「ノードをオーバーレイ」を選択してください。

        /libs/fd/cm/ma/gui/content/createasset/createletter/jcr:content/body/items/form/items/letterWizard/items/properties/items/properties/items/letterproperties/items

      2. ノードをオーバーレイダイアログで、レターに次の値が表示されていることを確認します。他のアセットタイプのパスは以下の表に示されています。

        パス: /libs/fd/cm/ma/gui/content/createasset/createletter/jcr:content/body/items/form/items/letterWizard/items/properties/items/properties/items/letterproperties/items

        場所:/apps/

        ノードタイプを一致させる:​選択済み

        アセットの種類に応じたパスを使用する必要があります。

        アセット/ドキュメントタイプ 追加するパス
        テキスト /libs/fd/cm/ma/gui/content/createasset/createtext/jcr:content/body/items/form/items/textwizard/items/editproperties/items/properties/items/tabs/items/tab1/items
        リスト /libs/fd/cm/ma/gui/content/createasset/createlist/jcr:content/body/items/form/items/listwizard/items/editproperties/items/properties/items/tabs/items/tab1/items
        条件 /libs/fd/cm/ma/gui/content/createasset/createcondition/jcr:content/body/items/form/items/conditionwizard/items/editproperties/items/properties/items/tabs/items/tab1/items
        フラグメント /libs/fd/cm/ma/gui/content/createasset/createfragment/jcr:content/body/items/form/items/fragmentwizard/items/properties/items/properties/items/tabs2/items/tab1/items
        レター /libs/fd/cm/ma/gui/content/createasset/createletter/jcr:content/body/items/form/items/letterWizard/items/properties/items/properties/items/letterproperties/items
      3. OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。

      4. 作成したオーバーレイ items ノードに、名前が col4(またはその他の任意の名前)のノードを作成し、「すべて保存」をクリックします。

        例えば、以下は、レターに対して作成されたオーバーレイノードです。

        /apps/fd/cm/ma/gui/content/createasset/createletter/jcr:content/body/items/form/items/letterWizard/items/properties/items/properties/items/letterproperties/items

      5. 次のプロパティを新しく作成したノード(ここでは「col4」)に追加し、「すべて保存」をクリックします。

      名前 タイプ
      path 文字列

      このパスは、以下の場所で作成された列へのポインターです。

      • すべてのアセットタイプ用の共通タブの場合:/apps/fd/cm/ma/gui/content/cmmetadataproperties/commontab/items/col1
      • 様々なアセットタイプ用の様々なプロパティの場合:/apps/fd/cm/ma/gui/content/cmmetadataproperties/properties//items/tabs/items/customtab/items/col1
      sling:resourceType 文字列 granite/ui/components/coral/foundation/include

      customfieldappearinginmainproperties

      レターを作成するための UI に表示される、カスタムプロパティ、言語

      カスタムプロパティを表示するための一覧表示のカスタマイズ

      Correspondence Management アセットにカスタムプロパティを追加した後、CRX/DE でさらに変更を行って、カスタムプロパティが Correspondence Management UI に表示されるようにする必要があります。

      Correspondence Management のアセットリスト UI にカスタムプロパティを表示するには、次の手順を実行します。

      1. https://'[server]:[port]'/[ContextPath]/crx/deに移動して、管理者としてログインしてください。

      2. apps フォルダーに以下のフォルダー構造を作成します。

        /libs/fd/cm/ma/gui/content/cmassets/jcr:content/views/lists/columns

        次の手順に従って、このフォルダー構造を作成します。

        1. 次のパスにある columns フォルダーを右クリックしてから、「ノードをオーバーレイ」を選択してください。

          /libs/fd/cm/ma/gui/content/cmassets/jcr:content/views/lists/columns

        2. ノードをオーバーレイダイアログに次の値が表示されていることを確認します。

          パス:/libs/fd/cm/ma/gui/content/cmassets/jcr:content/views/lists/columns

          場所:/apps/

          ノードタイプを一致させる:​選択済み

        3. OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。

          すべて保存」をクリックします。

      3. 作成した各プロパティで、columns ノードに、ユーザーインターフェイス内に列を作成するためのノードを作成します。UI でさらに列を作成するには、この手順を繰り返します。

        1. 関連ノード(ここでは「columns」)を右クリックし、「作成ノードを作成」を選択します。

        2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前:​任意の名前(ここでは GeographicalLocation)

          タイプ: nt:unstructured

        3. 次のプロパティをノードに追加して、「すべて保存」をクリックします。

          名前 タイプ
          jcr:primaryType 名前

          nt:unstructured

          jcr:title 文字列

          GeographicalLocation

          この値は、UI に列ヘッダーとして表示されます。

          sortable ブール値

          true

          値を「true」に設定した場合、ユーザーはこの列内の値を並べ替えることができます。

      4. apps フォルダーに以下のフォルダー構造を作成します。

        /libs/fd/cm/ma/gui/components/admin/childpagerenderer/childlistpage

        次の手順に従って、このフォルダー構造を作成します。

        1. 次のパスにある columns フォルダーを右クリックしてから、「ノードをオーバーレイ」を選択してください。

          /libs/fd/cm/ma/gui/components/admin/childpagerenderer/childlistpage

        2. ノードをオーバーレイダイアログに次の値が表示されていることを確認します。

          パス:/libs/fd/cm/ma/gui/components/admin/childpagerenderer/childlistpage

          場所:/apps/

          ノードタイプを一致させる:​選択済み

        3. OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。

          すべて保存」をクリックします。

      5. 以下の場所から childlistpage.jsp ファイルをコピーします。

        /libs/fd/cm/ma/gui/components/admin/childpagerenderer/childlistpage/childlistpage.jsp

        このファイルを次の場所に貼り付けます。

        /apps//fd/cm/ma/gui/components/admin/childpagerenderer/childlistpage/.

      6. childlistpage.jsp ファイル(/apps/fd/cm/ma/gui/components/admin/childpagerenderer/childlistpage/childlistpage.jsp)を開き、次のように変更します。

        1. ファイルの 19 行目に以下を追加します(著作権情報の後)。

          <%@page import="java.util.Map"%>
          
        2. ファイルの末尾に、各カスタムプロパティの値を取得する以下の関数コードを追加します。

          <%!
              private String getCustomPropertyValue(Map<String, Object> extendedProperties, String propertyName) {
          
                  String propertyValue = "";
                  if (extendedProperties.containsKey(propertyName)) {
                      propertyValue = (String) extendedProperties.get(propertyName);
                  }
          
                  return propertyValue;
              }
          %>
          
        3. <tr> タグ (<tr <%= attrs.build() %>>): の前に以下を追加します。

          <%
              String GeoLocation = "";
              if (asset != null) {
                      Map<String, Object> extendedProperties = asset.getExtendedProperties();
                      if (extendedProperties != null) {
                          GeoLocation = getCustomPropertyValue(extendedProperties,"GeoLocation");
                      }
              }
          %>
          

          コード内の GeoLocation は、カスタムノード/フィールドの作成時に名前プロパティで設定した値です。カスタムノード/フィールドの作成時、プロパティの名前を /extendedproperties/ prefix: ./extendedproperties/GeoLocation で指定しました。コードの prefix は必須ではありません。

        4. UI に新しいプロパティを表示するには、終了 tr (</tr>) タグの前に TD タグを以下のように追加します。

          <td is="coral-td" value="<%= xssAPI.encodeForHTMLAttr(geographicalLocation) %>"><%= xssAPI.encodeForHTML(geographicalLocation) %></td>
          

          さらに列を追加するには、手順 6.3 と 6.4 を繰り返します。

        5. すべて保存」をクリックします。

      7. カスタマイズ内容を表示するには、カスタムプロパティを追加したドキュメントフラグメント(レター)の一覧表示を開きます。

        この手順で追加した UI 列およびプロパティは、すべてのアセットタイプで表示されます。ただし、これらのプロパティの値は、最初にカスタムプロパティを追加したアセットタイプに対してのみ入力および表示できます。

        例えば、「シナリオ:特定のアセットタイプのカスタムプロパティの追加」を使用してテキストアセットにカスタムプロパティを追加した場合、テキストアセットにのみカスタムプロパティを入力できます。ただし、そのカスタムプロパティを UI に表示する場合、列はすべてのアセットタイプで表示されます。

        custompropertyinlistview

      8. (オプション)デフォルトでは、新しい列は、UI で最後の列として表示されます。列を特定の位置に表示するには、次のプロパティを列ノードに追加します。

      名前 タイプ
      sling:orderBefore 文字列

      パス「/libs/fd/cm/ma/gui/content/cmassets/jcr:content/views/list/columns」にある列ノードの名前。カスタム列は UI でこのノードの前に表示されます。

      ここで、Geographical Location 列を Version 列の前(左側)に表示する場合は、プロパティ sling:orderBefore をパス「/apps/fd/cm/ma/gui/content/cmassets/jcr:content/views/list/columns/GeoLocation」にある GeoLocation ノードに追加し、プロパティの値を version に設定します。

      sling:orderBefore プロパティを追加して列の位置を指定する場合は、この手順の手順 6.4 で指定した、対応する <td> タグの順序も更新する必要があります。例えば、この場合、Geographical Location の <td> タグを Version 列の <td> タグの前に配置する必要があります。

      <td is="coral-td" value="<%= xssAPI.encodeForHTMLAttr(geographicalLocation) %>"><%= xssAPI.encodeForHTML(geographicalLocation) %></td>
      <td is="coral-td" value="<%= xssAPI.encodeForHTMLAttr(version) %>"><%= xssAPI.encodeForHTML(version) %></td>
      

      カスタムプロパティの検索の有効化

      デフォルトでは、フルテキスト検索には、CRX/DE を使用して UI に追加するカスタムプロパティは含まれません。

      カスタムプロパティを検索に含めるには、カスタムプロパティのインデックス作成を可能にする必要があります。

      カスタムプロパティのインデックス作成を可能にするには、次の手順を実行します。

      1. https://'[server]:[port]'/[ContextPath]/crx/deに移動して、管理者としてログインしてください。

      2. /oak:index/cmLuceneに移動して、その下に​aggregates​という名前のノードを追加してください。

        1. cmLucene フォルダーを右クリックして、「作成ノードを作成」を選択します。

        2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前: aggregates

          タイプ: nt:unstructured

        3. すべて保存」をクリックします。

      3. 新規作成した aggregates フォルダーに、ノード cm:resource を追加します。cm:resource の下に、include0 という名前のノードを追加します。

        1. aggregates フォルダーを右クリックして、「作成ノードを作成」を選択します。ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前: cm:resource

          タイプ: nt:unstructured

        2. cm:resource フォルダーを右クリックして、「作成ノードを作成」を選択します。ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前: include0

          型: nt:unstructured

        3. 新しく作成したノードをクリックします(ここでは「include0」)。CRX にノードのプロパティが表示されます。

        4. このノード(ここでは「include0」)に次のプロパティを追加します。

          名前 タイプ
          パス 文字列 extendedProperties
        5. すべて保存」をクリックします。

      4. 次の場所にあるプロパティに移動し、その下にノードを追加します。/oak:index/cmLucene/indexRules/cm:resource/properties

        検索に追加する各カスタムプロパティについて、この手順を繰り返します。

        1. properties フォルダーを右クリックして、「作成ノードを作成」を選択します。

        2. ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。

          名前: location(または、検索に追加するカスタムプロパティの名前)

          型: nt:unstructured

        3. 作成した新しいノード(ここでは「location」)をクリックします。CRX にノードのプロパティが表示されます。

        4. このノード(ここでは「location」)に次のプロパティを追加します。

          名前 種類
          analyzed 文字列 true
          名前 文字列 extendedProperties/location(または、検索に追加するプロパティの名前)
          propertyIndex ブール値 true
          useInSuggest ブール値 true
        5. すべて保存」をクリックします。

      5. フルテキスト検索でカスタムプロパティの値を使用して関連アセットを検索できるようになりました。

      メモ

      まだ検索できない場合は、インデックス作成の問題が原因の可能性があります。インデックスを再作成するには、次のノードに移動し、プロパティ「re-index」の値を true に変更します。

      /oak:index/cmLucene およびプロパティの値の変更

      検索ページのデフォルト表示の変更

      1. https://'[server]:[port]'/[ContextPath]/crx/de にアクセスし、管理者としてログインします。

      2. apps フォルダーで、/libs/granite/ui/content/shell/omnisearch/searchresults/singleresults/views にある list フォルダーと類似したパス/構造で list という名前のフォルダーを作成します。

        1. 以下のパスにある items フォルダーを右クリックし、「ノードをオーバーレイ」を選択します。

          /libs/granite/ui/content/shell/omnisearch/searchresults/singleresults/views/list

        2. ノードをオーバーレイダイアログに次の値が表示されていることを確認します。

          パス:/libs/granite/ui/content/shell/omnisearch/searchresults/singleresults/views/list

          場所:/apps/

          ノードタイプを一致させる:​選択済み

        3. OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。

        4. すべて保存」をクリックします。

      3. 新しく作成したノード list で、次のプロパティを追加し、「すべて保存」をクリックします。

        名前 タイプ
        sling:orderBefore
        文字列 card
      4. カスタマイズにより、フォームとドキュメント、アセット、サイトを含むすべてのコンソールで一覧表示に検索結果が表示されるようになりました。

      アセットページのデフォルト表示の変更

      メモ

      以下の手順は、フォームとドキュメント、アセット、サイトなどのすべてのコンソールのデフォルト表示を変更します。

      1. https://'[server]:[port]'/[ContextPath]/crx/de にアクセスし、管理者としてログインします。

      2. apps フォルダーで、以下のパスにある list フォルダーと類似したパス/構造で list という名前のフォルダーを作成します。

        /libs/fd/cm/ma/gui/content/cmassets/jcr:content/views/

        1. 次のパスにある items フォルダーを右クリックし、「ノードをオーバーレイ」を選択します。

          /libs/fd/cm/ma/gui/content/cmassets/jcr:content/views/list

        2. ノードをオーバーレイダイアログに次の値が表示されていることを確認します。

          パス: /libs/fd/cm/ma/gui/content/cmassets/jcr:content/views/list

          場所: /apps/

          ノードタイプを一致させる:​選択済み

        3. OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。

        4. すべて保存」をクリックします。

      3. 新しく作成したノード list で、次のプロパティを追加し、「すべて保存」をクリックします。

        名前 タイプ
        sling:orderBefore
        文字列 カード
      4. ブラウザーの Cookie をクリアするか、ブラウザーの匿名モードを使用して、アセットを表示します。アセットページは、デフォルトで、カードレイアウトで表示されます。

      アセット作成ページとプロパティページでのカスタムプロパティの表示/非表示

      カスタムプロパティを表示または非表示にするには、次の手順を実行します。

      1. geographicallocation などのカスタムプロパティノードに、タイプが「nt:unstructured」の「granite:rendercondition」という名前の新しいノードを作成します。

      2. 次のプロパティをノードに追加し、「すべて保存」をクリックします。

        名前 タイプ
        sling:resourceType
        文字列 fd/cm/ma/gui/components/admin/assetsproperties/custompropertyconfig
      3. アセット作成ページでこのプロパティを非表示にするには、次のプロパティを追加し、「すべて保存」をクリックします。

        名前 タイプ
        hideOnCreate
        ブール値 true
      4. アセットのプロパティページでカスタムプロパティを非表示にするには、次のプロパティを追加し、「すべて保存」をクリックします。

        名前 タイプ
        hideOnEdit
        ブール値 true

        値を再び表示するには、プロパティの値を false に再設定するか、プロパティエントリを削除します。

このページ