Correspondence Management ユーザーインターフェイスをカスタマイズし、調整したプロパティとタブのセットをユーザーに提示できます。このカスタマイズには、特定のアセットタイプとレター、またはすべてのアセットタイプとレターへのカスタムフィールド/プロパティおよびタブの追加が含まれます。
以下のシナリオで、Correspondence Management アセットおよびレターにプロパティ/タブを追加する方法について説明します。
これらのシナリオでプロパティ、パスおよび値を調整することにより、要件に従い、様々なアセットのセットにカスタムプロパティおよびタブを追加できます。
このシナリオでは、すべてのアセットタイプ(テキスト、リスト、条件およびレイアウトフラグメント)およびレターにカスタムプロパティを追加する方法について説明します。このシナリオを使用して、すべてのアセットおよびレターにプロパティ「受信者の場所」を追加できます。「受診者の場所」プロパティにより、アセットまたはレターが関連する配信地域を特定できます。
カスタムプロパティを追加すると、プロパティはアセット作成ページに表示されるようになります。このようなプロパティを非表示にする方法については、「アセット作成ページとプロパティページでのカスタムプロパティの表示/非表示」を参照してください。
すべてのアセットタイプおよびレターにカスタムプロパティを追加するには、次の手順を実行します。
https://'[server]:[port]'/[ContextPath]/crx/de
に移動して、管理者でログインします。
apps フォルダー内で、次の手順で css フォルダー(ccrui フォルダーに存在)に類似したパス/構造で、css という名前のフォルダーを作成します。
以下のパスにある items フォルダーを右クリックし、ノードをオーバーレイを選択します。
/libs/fd/cm/ma/gui/content/cmmetadataproperties/commonproperties/col1/items
ノードをオーバーレイダイアログに次の値が表示されていることを確認します。
パス:/libs/fd/cm/ma/gui/content/cmmetadataproperties/commonproperties/col1/items
場所: /apps/
ノードタイプを一致させる:選択済み
「OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。
「すべて保存」をクリックします。
次の手順を使用し、新規作成した items フォルダーにすべてのアセットのカスタムプロパティ用のノードを追加します(例:GeoLocation)。
items フォルダーを右クリックして、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: GeoLocation(または、このプロパティに与える任意の名前)
型: nt:unstructured
作成した新しいノード(ここでは「GeoLocation」)をクリックします。CRX にノードのプロパティが表示されます。
このノード(ここでは「GeoLocation」)に次のプロパティを追加します。
名前 | 種類 | 値 |
---|---|---|
fieldLabel | 文字列 | フィールド/プロパティに与える任意の名前。(ここでは「Location of recipients」) |
name | 文字列 | ./extendedproperties/GeoLocation (値は items ノードで作成したフィールド名と同じにします) |
renderReadOnly | ブール値 | true |
sling:resourceType | 文字列 | granite/ui/components/coral/foundation/form/textfield |
「すべて保存」をクリックします。
カスタマイズ内容を表示するには、アセット(テキスト、リスト、条件またはレイアウトフラグメント)またはレターの上にカーソルを置き、「プロパティを表示」をクリックし、「編集」をクリックします。新しいフィールド(Location of recipients)がアセット/レタープロパティの「基本」タブに表示されます。
カスタマイズ内容を UI に表示するには、ブラウザーのキャッシュをクリアする必要が生じる場合があります。
すべてのアセットに追加する共通プロパティは、アセットプロパティの「基本」タブに表示されます。デフォルトでは、すべてのアセットに追加する共通プロパティは、プロパティページおよびアセット作成ページに表示されます。共通のプロパティを非表示にするには、 を実行する必要があります。
このシナリオでは、すべてのアセットタイプにカスタムプロパティを追加し、そのドロップダウン値を追加する方法について説明します。
次のパスにある items フォルダーを右クリックし、「ノードをオーバーレイ」を選択します。
/libs/fd/cm/ma/gui/content/cmmetadataproperties/commonproperties/col1/items
新しく作成したオーバーレイノード(/apps/fd/cm/ma/gui/content/cmmetadataproperties/commonproperties/col1/items)の下に、タイプ nt:unstructured のドロップダウン(ここでは geographicallocation
)を作成する必要があるプロパティ(フィールド)のそれぞれのノードを作成します。
次のプロパティをノード(ここでは「geographicallocation」)に追加し、「すべて保存」をクリックします。
名前 | タイプ | 値 |
fieldLabel | 文字列 | フィールド/プロパティに与える任意の名前。(ここでは「geographicallocation」) |
名前 | 文字列 | 。/extendedproperties/geographicallocation(値は items ノードで作成したフィールド名と同じにします) |
renderReadOnly | ブール値 | true |
sling:resourceType | 文字列 | granite/ui/components/coral/foundation/form/select |
プロパティノード(ここでは「geographicallocation」)に、items
という名前の新しいノードを追加します。items ノードに、ドロップダウン内の各値のノードを追加します。ドロップダウンのデフォルト値およびユーザーがフィールドに値を指定しないためのオプションとして機能するように、最初のノードを空白として追加することをお勧めします。複数のオプション/ドロップダウン値を追加するには、次の手順を繰り返します。
プロパティノード(ここでは geographicalLocation)を右クリックし、作成/ノードを作成を選択します。
フィールド名に item1,
を入力し、タイプは nt:unstructured のままにして、「OK」をクリックします。
次のプロパティを新しく作成したノード(ここでは「item1」)に追加し、「すべて保存」をクリックします。
名前 | タイプ | 値 |
text | 文字列 | これは、ユーザーに表示されるドロップダウンオプションの値です。空白(デフォルト)値の場合は空白のままにします。または、「海外」、「米国内」などの値を入力します。 |
value | 文字列 | テキストに対して CRXDE に保存される値。一意のキーワードを入力します。 |
カスタムドロップダウンは、アセットプロパティで次のように表示されます。
このシナリオでは、すべてのアセットタイプ(テキスト、リスト、条件およびレイアウトフラグメント)およびレターにカスタムタブ「Recipients」を追加する方法について説明します。「Recipients」タブに、受信者に関連するすべてのカスタムプロパティを配置することができます。
次の手順を使用して、すべてのアセットにフィールド付きのタブを追加できます。
https://'[server]:[port]'/[ContextPath]/crx/de
にアクセスし、管理者としてログインします。
apps フォルダーに、(content フォルダー内の)cmmetadataproperties フォルダーに類似したパス/構造で cmmetadataproperties という名前のフォルダーを作成します。手順は次のとおりです。
次のパスにある cmmetadataproperties フォルダーを右クリックし、「ノードをオーバーレイ」を選択します。
/libs/fd/cm/ma/gui/content/cmmetadataproperties
ノードをオーバーレイダイアログに次の値が表示されていることを確認します。
パス: /libs/fd/cm/ma/gui/content/cmmetadataproperties
場所: /apps/
ノードタイプを一致させる:選択済み
「OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。
「すべて保存」をクリックします。
cmmetadataproperties フォルダーに、すべてのアセット用のカスタムタブを作成するためのノードを追加します(例:commontab)。手順は次のとおりです。
cmmetadataproperties フォルダーを右クリックして、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: commontab(または、このプロパティに与える任意の名前)
タイプ: nt:unstructured
新しく作成したノードをクリックします(ここでは「commontab」)。CRX にノードのプロパティが表示されます。
このノード(ここでは「commontab」)に次のプロパティを追加します。
名前 | タイプ | 値 |
jcr:title | 文字列 | 列に与える任意の名前。(ここでは「Recipients」) |
sling:resourceType | 文字列 | granite/ui/components/coral/foundation/container |
次の手順を使用し、最後の手順で作成したタブノード(ここでは「commontab」)に対して item という名前のノードを作成します。
関連ノード(ここでは「commontab」)を右クリックし、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: items
タイプ: nt:unstructured
「すべて保存」をクリックします。
前の手順で作成した items ノード(commontab の下)で、カスタムタブ(commontab)内の列(ここでは「Column1」)を作成するためのノードを追加します。手順は次のとおりです(さらに列を追加するには、この手順を繰り返します)。
items ノードを右クリックし、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: Column1(または、このノードに与える任意の名前。この名前はユーザーインターフェイスには表示されません。)
タイプ: nt:unstructured
次のプロパティをノード(ここでは「Column1」)に追加し、「すべて保存」をクリックします。
名前 | タイプ | 値 |
sling:resourceType | 文字列 | granite/ui/components/coral/foundation/container |
前の手順で作成したノード(ここでは「Column1」)に、item という名前のノードを作成します。手順は次のとおりです。
ノード(ここでは「Column1」)を右クリックし、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: items
タイプ: nt:unstructured
「すべて保存」をクリックします。
カスタムタブ(ここでは「Recipients」)にフィールドを作成するには、ノード(ここでは「GeographicalLocation」)を追加します。このプロパティは、作成した列に対応します。フィールドの作成手順は次のとおりです(さらにフィールド/ノードを作成するには、この手順を繰り返します)。:
items ノードを右クリックし、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: GeographicalLocation(または、フィールドプロパティの別の名前)
タイプ: nt:unstructured
次のプロパティをフィールドノード(ここでは GeographicalLocation)に追加し、「すべて保存」をクリックします。
名前 | 種類 | 値 |
---|---|---|
fieldLabel | 文字列 | Location of recipients(または、フィールドに与える任意の名前。) |
名前 | 文字列 | 。/extendedproperties/GeographicalLocation |
renderReadOnly | ブール値 | true |
sling:resourceType | 文字列 | /libs/granite/ui/components/coral/foundation/form/textfield |
レターにこのタブを追加するには、次のパスにある以下の 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
次のパスにある items フォルダーを右クリックし、「ノードをオーバーレイ」を選択します。
/libs/fd/cm/ma/gui/content/cmmetadataproperties/properties/letter/items/tabs/items
ノードをオーバーレイダイアログに次の値が表示されていることを確認します。
パス: /libs/fd/cm/ma/gui/content/cmmetadataproperties/properties/letter/items/tabs/items
場所:/apps/
ノードタイプを一致させる:選択済み
「OK」をクリックします。フォルダーが作成されます。「すべて保存」をクリックします。
新規作成した items フォルダーに、アセットのカスタムタブ用のノードを追加します(ここでは「mytab」とします。この名前はユーザーインターフェイスには表示されません)。手順は次のとおりです。
items フォルダーを右クリックして、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: mytab(または、このプロパティに与える任意の名前)
タイプ: nt:unstructured
新しく作成したノードをクリックします(ここでは「mytab」)。CRX にノードのプロパティが表示されます。
このノード(ここでは「customtab」)に次の 2 つのプロパティを追加します。
名前 | タイプ | 値 |
path |
文字列 | fd/cm/ma/gui/content/cmmetadataproperties/commontab |
sling:resourceType | 文字列 | granite/ui/components/coral/foundation/include |
「すべて保存」をクリックします。
カスタマイズ内容を表示するには、関連するアセット(ここではレター)の上にカーソルを置き、「プロパティを表示」をクリックし、「編集」をクリックします。新しいタブ(Recipients)とフィールド(Location of Recipients)がユーザーインターフェイスに表示されます。
カスタマイズ内容を UI に表示するには、ブラウザーのキャッシュをクリアする必要が生じる場合があります。
このシナリオでは、すべてのテキストアセットに対するフィールドなど、特定のアセットタイプにプロパティを追加する方法について説明します。このプロセスを使用して、次のいずれかにプロパティを追加できます。
例えば、テキストアセットにのみ、プロパティ「受信者の場所」を追加して、アセットが関連する地域を特定することができます。
アセットタイプにプロパティを追加するには、次の手順を実行します。
https://'[server]:[port]'/[ContextPath]/crx/de
に移動して、管理者としてログインします。
アセットタイプ(テキストなど)でタブを作成するには、apps フォルダーに以下のフォルダー構造を作成します。
/libs/fd/cm/ma/gui/content/cmmetadataproperties/properties/[AssetType]/items/tabs/items
[AssetType] = text、condition、list、letter、datadictionary または fragment
次の手順に従って、このフォルダー構造を作成します。
以下のパスにある 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
ノードをオーバーレイダイアログに次の値が表示されていることを確認します。
パス: /libs/fd/cm/ma/gui/content/cmmetadataproperties/properties/[AssetType]/items/tabs/items
場所:/apps/
ノードタイプを一致させる:選択済み
「OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。
「すべて保存」をクリックします。
次の手順を使用し、新規作成した items フォルダーにアセットのカスタムタブ用のノードを追加します(例:customtab)。
items フォルダーを右クリックして、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: customtab(または、このプロパティに与える任意の名前)
タイプ: nt:unstructured
新しく作成したノードをクリックします(ここでは「customtab」)。CRX にノードのプロパティが表示されます。
このノード(ここでは「customtab」)に次の 2 つのプロパティを追加します。
名前 | 種類 | 値 |
---|---|---|
sling:resourceType | 文字列 | granite/ui/components/coral/foundation/container |
jcr:title | 文字列 | ユーザーインターフェイス上のフィールドの名前(ここでは「My tab」) |
「すべて保存」をクリックします。
次の手順を使用し、前の手順で作成したノード(ここでは customtab)に item という名前のノードを作成します。
ノード(ここでは「customtab」)を右クリックし、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: items
タイプ: nt:unstructured
「すべて保存」をクリックします。
次の手順を使用し、前の手順で作成した items ノード(customtab の下)で、カスタムタブ内の列(ここでは Column1)を作成するためのノードを追加します(さらに列を追加するには、この手順を繰り返します)。
items ノードを右クリックし、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: Column1(または、このノードに与える任意の名前)
タイプ: nt:unstructured
次のプロパティをノード(ここでは Column1)に追加してから、「すべて保存」をクリックしてください。
名前 | タイプ | 値 |
sling:resourceType | 文字列 | granite/ui/components/coral/foundation/container |
次の手順を使用し、作成する各列(前の手順で作成した列、ここでは Column1)に item という名前のノードを作成します。
関連する列ノード(ここでは「Column1」)を右クリックし、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: items
タイプ: nt:unstructured
「すべて保存」をクリックします。
作成した各列で、items ノードに、ユーザーインターフェイス内の新しいタブにフィールドを作成するためのノードを作成します。列でさらにフィールドを作成するには、この手順を繰り返します。
関連ノード(ここでは「Column1」の下の「items」)を右クリックし、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前:任意の名前(ここでは GeoLocation)
タイプ: nt:unstructured
次のプロパティをノードに追加して、「すべて保存」をクリックします。
名前 | 種類 | 値 |
---|---|---|
fieldLabel | 文字列 | Location of recipients(または、フィールドに与える任意の名前。) |
名前 | 文字列 | ./extendedproperties/GeoLocation |
renderReadOnly | ブール値 | true |
sling:resourceType | 文字列 | granite/ui/components/coral/foundation/form/textfield |
カスタマイズ内容を表示するには、関連するアセット(ここではテキスト)の上にカーソルを置き、「プロパティを表示」をクリックし、「編集」をクリックします。新しいタブとフィールド(Location of Recipients)がユーザーインターフェイスに表示されます。
カスタマイズ内容を UI に表示するには、ブラウザーのキャッシュをクリアする必要が生じる場合があります。
アセット作成ページにはタブレイアウトがないので、デフォルトでは、新しいタブに追加されたカスタムプロパティはプロパティページにのみ表示され、アセット作成ページには表示されません。アセット作成ページに他のプロパティと共にカスタムプロパティを表示するには、次の手順を実行する必要があります。
以下のパスにある items フォルダーを右クリックしてから、「ノードをオーバーレイ」を選択してください。
/libs/fd/cm/ma/gui/content/createasset/createletter/jcr:content/body/items/form/items/letterWizard/items/properties/items/properties/items/letterproperties/items
ノードをオーバーレイダイアログで、レターに次の値が表示されていることを確認します。他のアセットタイプのパスは以下の表に示されています。
パス: /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 |
「OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。
作成したオーバーレイ items ノードに、名前が col4(またはその他の任意の名前)のノードを作成し、「すべて保存」をクリックします。
例えば、以下は、レターに対して作成されたオーバーレイノードです。
/apps/fd/cm/ma/gui/content/createasset/createletter/jcr:content/body/items/form/items/letterWizard/items/properties/items/properties/items/letterproperties/items
次のプロパティを新しく作成したノード(ここでは「col4」)に追加し、「すべて保存」をクリックします。
名前 | タイプ | 値 |
path | 文字列 | このパスは、以下の場所で作成された列へのポインターです。
|
sling:resourceType | 文字列 | granite/ui/components/coral/foundation/include |
レターを作成するための UI に表示される、カスタムプロパティ、言語
Correspondence Management アセットにカスタムプロパティを追加した後、CRX/DE でさらに変更を行って、カスタムプロパティが Correspondence Management UI に表示されるようにする必要があります。
Correspondence Management のアセットリスト UI にカスタムプロパティを表示するには、次の手順を実行します。
https://'[server]:[port]'/[ContextPath]/crx/de
に移動して、管理者としてログインしてください。
apps フォルダーに以下のフォルダー構造を作成します。
/libs/fd/cm/ma/gui/content/cmassets/jcr:content/views/lists/columns
次の手順に従って、このフォルダー構造を作成します。
次のパスにある columns フォルダーを右クリックしてから、「ノードをオーバーレイ」を選択してください。
/libs/fd/cm/ma/gui/content/cmassets/jcr:content/views/lists/columns
ノードをオーバーレイダイアログに次の値が表示されていることを確認します。
パス:/libs/fd/cm/ma/gui/content/cmassets/jcr:content/views/lists/columns
場所:/apps/
ノードタイプを一致させる:選択済み
「OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。
「すべて保存」をクリックします。
作成した各プロパティで、columns ノードに、ユーザーインターフェイス内に列を作成するためのノードを作成します。UI でさらに列を作成するには、この手順を繰り返します。
関連ノード(ここでは「columns」)を右クリックし、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前:任意の名前(ここでは GeographicalLocation)
タイプ: nt:unstructured
次のプロパティをノードに追加して、「すべて保存」をクリックします。
名前 | タイプ | 値 |
jcr:primaryType | 名前 | nt:unstructured |
jcr:title | 文字列 | GeographicalLocation この値は、UI に列ヘッダーとして表示されます。 |
sortable | ブール値 | true 値を「true」に設定した場合、ユーザーはこの列内の値を並べ替えることができます。 |
apps フォルダーに以下のフォルダー構造を作成します。
/libs/fd/cm/ma/gui/components/admin/childpagerenderer/childlistpage
次の手順に従って、このフォルダー構造を作成します。
次のパスにある columns フォルダーを右クリックしてから、「ノードをオーバーレイ」を選択してください。
/libs/fd/cm/ma/gui/components/admin/childpagerenderer/childlistpage
ノードをオーバーレイダイアログに次の値が表示されていることを確認します。
パス:/libs/fd/cm/ma/gui/components/admin/childpagerenderer/childlistpage
場所:/apps/
ノードタイプを一致させる:選択済み
「OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。
「すべて保存」をクリックします。
以下の場所から childlistpage.jsp ファイルをコピーします。
/libs/fd/cm/ma/gui/components/admin/childpagerenderer/childlistpage/childlistpage.jsp
このファイルを次の場所に貼り付けます。
/apps//fd/cm/ma/gui/components/admin/childpagerenderer/childlistpage/.
childlistpage.jsp ファイル(/apps/fd/cm/ma/gui/components/admin/childpagerenderer/childlistpage/childlistpage.jsp)を開き、次のように変更します。
ファイルの 19 行目に以下を追加します(著作権情報の後)。
<%@page import="java.util.Map"%>
ファイルの末尾に、各カスタムプロパティの値を取得する以下の関数コードを追加します。
<%!
private String getCustomPropertyValue(Map<String, Object> extendedProperties, String propertyName) {
String propertyValue = "";
if (extendedProperties.containsKey(propertyName)) {
propertyValue = (String) extendedProperties.get(propertyName);
}
return propertyValue;
}
%>
<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 は必須ではありません。
UI に新しいプロパティを表示するには、終了 tr (</tr>) タグの前に TD タグを以下のように追加します。
<td is="coral-td" value="<%= xssAPI.encodeForHTMLAttr(geographicalLocation) %>"><%= xssAPI.encodeForHTML(geographicalLocation) %></td>
さらに列を追加するには、手順 6.3 と 6.4 を繰り返します。
「すべて保存」をクリックします。
カスタマイズ内容を表示するには、カスタムプロパティを追加したドキュメントフラグメント(レター)の一覧表示を開きます。
この手順で追加した UI 列およびプロパティは、すべてのアセットタイプで表示されます。ただし、これらのプロパティの値は、最初にカスタムプロパティを追加したアセットタイプに対してのみ入力および表示できます。
例えば、「シナリオ:特定のアセットタイプのカスタムプロパティの追加」を使用してテキストアセットにカスタムプロパティを追加した場合、テキストアセットにのみカスタムプロパティを入力できます。ただし、そのカスタムプロパティを UI に表示する場合、列はすべてのアセットタイプで表示されます。
(オプション)デフォルトでは、新しい列は、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 に追加するカスタムプロパティは含まれません。
カスタムプロパティを検索に含めるには、カスタムプロパティのインデックス作成を可能にする必要があります。
カスタムプロパティのインデックス作成を可能にするには、次の手順を実行します。
https://'[server]:[port]'/[ContextPath]/crx/de
に移動して、管理者としてログインしてください。
/oak:index/cmLucene
に移動して、その下にaggregatesという名前のノードを追加してください。
cmLucene フォルダーを右クリックして、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: aggregates
タイプ: nt:unstructured
「すべて保存」をクリックします。
新規作成した aggregates フォルダーに、ノード cm:resource を追加します。cm:resource の下に、include0 という名前のノードを追加します。
aggregates フォルダーを右クリックして、「作成/ノードを作成」を選択します。ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: cm:resource
タイプ: nt:unstructured
cm:resource フォルダーを右クリックして、「作成/ノードを作成」を選択します。ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: include0
型: nt:unstructured
新しく作成したノードをクリックします(ここでは「include0」)。CRX にノードのプロパティが表示されます。
このノード(ここでは「include0」)に次のプロパティを追加します。
名前 | タイプ | 値 |
パス | 文字列 | extendedProperties |
「すべて保存」をクリックします。
次の場所にあるプロパティに移動し、その下にノードを追加します。/oak:index/cmLucene/indexRules/cm:resource/properties
検索に追加する各カスタムプロパティについて、この手順を繰り返します。
properties フォルダーを右クリックして、「作成/ノードを作成」を選択します。
ノードを作成ダイアログに次の値が表示されていることを確認し、「OK」をクリックします。
名前: location(または、検索に追加するカスタムプロパティの名前)
型: nt:unstructured
作成した新しいノード(ここでは「location」)をクリックします。CRX にノードのプロパティが表示されます。
このノード(ここでは「location」)に次のプロパティを追加します。
名前 | 種類 | 値 |
---|---|---|
analyzed | 文字列 | true |
名前 | 文字列 | extendedProperties/location(または、検索に追加するプロパティの名前) |
propertyIndex | ブール値 | true |
useInSuggest | ブール値 | true |
「すべて保存」をクリックします。
フルテキスト検索でカスタムプロパティの値を使用して関連アセットを検索できるようになりました。
まだ検索できない場合は、インデックス作成の問題が原因の可能性があります。インデックスを再作成するには、次のノードに移動し、プロパティ「re-index」の値を true に変更します。
/oak:index/cmLucene およびプロパティの値の変更
https://'[server]:[port]'/[ContextPath]/crx/de
にアクセスし、管理者としてログインします。
apps フォルダーで、/libs/granite/ui/content/shell/omnisearch/searchresults/singleresults/views にある list フォルダーと類似したパス/構造で list という名前のフォルダーを作成します。
以下のパスにある items フォルダーを右クリックし、「ノードをオーバーレイ」を選択します。
/libs/granite/ui/content/shell/omnisearch/searchresults/singleresults/views/list
ノードをオーバーレイダイアログに次の値が表示されていることを確認します。
パス:/libs/granite/ui/content/shell/omnisearch/searchresults/singleresults/views/list
場所:/apps/
ノードタイプを一致させる:選択済み
「OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。
「すべて保存」をクリックします。
新しく作成したノード list で、次のプロパティを追加し、「すべて保存」をクリックします。
名前 | タイプ | 値 |
sling:orderBefore |
文字列 | card |
カスタマイズにより、フォームとドキュメント、アセット、サイトを含むすべてのコンソールで一覧表示に検索結果が表示されるようになりました。
以下の手順は、フォームとドキュメント、アセット、サイトなどのすべてのコンソールのデフォルト表示を変更します。
https://'[server]:[port]'/[ContextPath]/crx/de
にアクセスし、管理者としてログインします。
apps フォルダーで、以下のパスにある list フォルダーと類似したパス/構造で list という名前のフォルダーを作成します。
/libs/fd/cm/ma/gui/content/cmassets/jcr:content/views/
次のパスにある items フォルダーを右クリックし、「ノードをオーバーレイ」を選択します。
/libs/fd/cm/ma/gui/content/cmassets/jcr:content/views/list
ノードをオーバーレイダイアログに次の値が表示されていることを確認します。
パス: /libs/fd/cm/ma/gui/content/cmassets/jcr:content/views/list
場所: /apps/
ノードタイプを一致させる:選択済み
「OK」をクリックします。apps フォルダーにフォルダー構造が作成されます。
「すべて保存」をクリックします。
新しく作成したノード list で、次のプロパティを追加し、「すべて保存」をクリックします。
名前 | タイプ | 値 |
sling:orderBefore |
文字列 | カード |
ブラウザーの Cookie をクリアするか、ブラウザーの匿名モードを使用して、アセットを表示します。アセットページは、デフォルトで、カードレイアウトで表示されます。
カスタムプロパティを表示または非表示にするには、次の手順を実行します。
geographicallocation などのカスタムプロパティノードに、タイプが「nt:unstructured」の「granite:rendercondition」という名前の新しいノードを作成します。
次のプロパティをノードに追加し、「すべて保存」をクリックします。
名前 | タイプ | 値 |
sling:resourceType |
文字列 | fd/cm/ma/gui/components/admin/assetsproperties/custompropertyconfig |
アセット作成ページでこのプロパティを非表示にするには、次のプロパティを追加し、「すべて保存」をクリックします。
名前 | タイプ | 値 |
hideOnCreate |
ブール値 | true |
アセットのプロパティページでカスタムプロパティを非表示にするには、次のプロパティを追加し、「すべて保存」をクリックします。
名前 | タイプ | 値 |
hideOnEdit |
ブール値 | true |
値を再び表示するには、プロパティの値を false
に再設定するか、プロパティエントリを削除します。