コンポーネントを拡張する例では、コメントシステムを使用します。コメントシステムは、実際には 2 つのコンポーネントで構成されます
投稿されたコメントの外観をカスタマイズする場合は、特に両方のコンポーネントを配置する必要があります。
サイトページごとに 1 つのコメントシステムのみ使用できます。
多くのコミュニティ機能には既にコメントシステムが含まれています。このコメントシステムでは、resourceType を変更して拡張コメントシステムを参照できます。
これらの方向は、 グループ 以外の値 .hidden
そのため、コンポーネントをコンポーネントブラウザー(サイドキック)から使用できるようにします。
自動作成された JSP ファイルは、デフォルトの HBS ファイルが代わりに使用されるので、削除されます。
参照先 CRXDE|Lite (http://localhost:4502/crx/de/index.jsp)
カスタムアプリケーションの場所を作成します。
を選択します。 /apps
ノード
を選択します。 /apps/custom
ノード
を選択します。 /apps/custom/components
ノード
作成/コンポーネント…
選択 次へ
選択 次へ
選択 次へ
選択 OK
作成したノードを展開します。 /apps/custom/components/comments
選択 すべて保存
右クリック comments.jsp
選択 削除
選択 すべて保存
これらの方向は設定されました グループ から .hidden
親コンポーネントのみをページ内に含める必要があるので。
自動作成された JSP ファイルは、デフォルトの HBS ファイルが代わりに使用されるので、削除されます。
次に移動: /apps/custom/components/comments
ノード
ノードを右クリックします。
選択 作成/コンポーネント…
*.hidden*
選択 次へ
選択 次へ
選択 次へ
選択 OK
作成したノードを展開します。 /apps/custom/components/comments/comment
選択 すべて保存
右クリック comment.jsp
選択 削除
選択 すべて保存
使用 CRXDE Lite:
コピー comments.hbs
編集 comments.hbs
移動先:
値を data-scf-component
属性(20 行目以上):
social/commons/components/hbs/comments
/apps/custom/components/comments
カスタムコメントコンポーネントを含めるように変更します(75 行目まで)。
{{include this resourceType='social/commons/components/hbs/comments/comment'}}
{{include this resourceType='/apps/custom/components/comments/comment'}}
コピー comment.hbs
編集 comment.hbs
移動先:
data-scf-component 属性の値を変更します(19 行目前後)。
social/commons/components/hbs/comments/comment
/apps/custom/components/comments/comment
選択 /apps/custom
ノード
選択 すべて保存
このクライアントライブラリを明示的に含める必要がないように、デフォルトのコメントシステムの clientlib の categories 値を使用できます ( cq.social.author.hbs.comments
) が含まれている場合、この clientlib はデフォルトコンポーネントのすべてのインスタンスにも含まれます。
使用 CRXDE Lite:
選択 /apps/custom/components/comments
ノード
選択 ノードを作成
名前:clientlibs
型:cq:ClientLibraryFolder
追加先 プロパティ タブ:
categories
タイプ String
値 cq.social.author.hbs.comments
Multi
dependencies
タイプ String
値 cq.social.scf
Multi
選択 すべて保存
を使用 /apps/custom/components/comments/clientlib
選択した s ノード、3 つのファイルを作成します。
css.txt
js.txt
次の内容を'customcommentsystem.js'と入力します。 js.txt
選択 すべて保存
SCF コンポーネントを拡張(上書き)する場合、resourceType は異なります(オーバーレイは、検索を実行する相対検索メカニズムを利用します) /apps
前 /libs
したがって、resourceType は同じままです )。 このため、カスタム resourceType の SCF JS モデルとビューを登録するために、(クライアントライブラリに)JavaScript を記述する必要があります。
次のテキストをコンテンツとして入力 customcommentsystem.js
:
(function($CQ, _, Backbone, SCF) {
"use strict";
var CustomComment = SCF.Components["social/commons/components/hbs/comments/comment"].Model;
var CustomCommentView = SCF.Components["social/commons/components/hbs/comments/comment"].View;
var CustomCommentSystem = SCF.Components["social/commons/components/hbs/comments"].Model;
var CustomCommentSystemView = SCF.Components["social/commons/components/hbs/comments"].View;
SCF.registerComponent('/apps/custom/components/comments/comment', CustomComment, CustomCommentView);
SCF.registerComponent('/apps/custom/components/comments', CustomCommentSystem, CustomCommentSystemView);
})($CQ, _, Backbone, SCF);
パブリッシュ環境で拡張コンポーネントを使用するには、カスタムコンポーネントをレプリケートする必要があります。
その方法の 1 つは、
グローバルナビゲーションから
Activate Tree
を選択します。Start Path
:から /apps/custom
Only Modified
Activate
ボタン