3

私はLiferay6プロジェクトに取り組んでおり、プロジェクトの一部は、デフォルトとしてサイト全体で使用される新しいレイアウトテンプレートを作成することです。Liferay自身のwikiは、レイアウトテンプレートに関するドキュメントが非常に少なく、Google検索やここSOでさえ幸運に恵まれていません。

質問に答えるような記事(Liferay-各ページのレイアウト)を1つ見つけましたが、やり過ぎかもしれません。その質問では、目標はページに基づいてテンプレートを変更することでした。そのため、答えはフックを作成し、それを使用して必要に応じてその場でテンプレートを設定することでした。ここでは、このカスタムテンプレートを常にすべてのページのデフォルトにしたいので、他の質問への回答は実際に必要なものよりも多いと思います。

誰かがこのパズルの答えを持っているなら、私に知らせてください。ありがとう!

--JLM-

4

1 に答える 1

5

OK、私は自分の混乱を理解しました。Liferayには、Liferayプロジェクトの1つのタイプであるテーマの一部であるテンプレートと実際のレイアウトテンプレートプロジェクト自体の2種類のレイアウトテンプレートがあります。

  • テーマのテンプレートは、サイトの全体的なページレイアウトを設定する場所です。portal_normal.vmという名前のメインページテンプレートは、<html>タグ、<head>、<body>などを含む完全なWebページです。テーマ内の他のテンプレートは通常、ページフラグメントです。
  • 一方、レイアウトテンプレートは、ページのメインコンテンツ領域(テーマのテンプレートファイルのタグによって定義される)にポートレットをレイアウトするためだけのものです。これは常にフラグメントであり、ポートレットをレイアウトするための<div>要素または<table>のみを持つことができます。

幸いなことに、これにより、少なくとも必要なコンテキストでは、実際に私の質問に非常に簡単に答えることができます。http://www.liferay.com/community/wiki/-/wiki/Main/How+To+Change+Liferay+Default+ThemeにあるLiferayのドキュメントによると:

注:6.x以降、liferay-look-and-feel.xmlで指定されたテーマIDを使用することはできません。代わりに、[コントロールパネル]->[プラグインの構成]->[対象のテーマ]をクリックします->プラグインIDをメモし、[portal-ext.propertiesのdefault.theme.idの値として]使用します。

これが、これを理解しようとしている他の人々の助けになることを願っています!

于 2011-10-14T19:53:27.113 に答える