LOGIN ID Password Auto Login Register Now! Lost Password?
XUGJ Wiki
1: 2009-08-05 (水) 06:17:24 GIJOE ソース 現: 2014-01-13 (月) 22:10:08 GIJOE ソース
Line 1: Line 1:
 +*基本知識 [#g7509feb]
 +
 +まずはこのサイトのベーシックマニュアルなどで、XOOPSのテンプレートの原理について理解すること。
 +
 +特に以下の違いの理解は重要
 +
 +:テンプレート|モジュールの出力で使われる必要な個々の雛形。HTMLが多いが、XMLやCSS、メールの雛形を提供するものもある。
 +:テンプレートセット|実際に利用される雛形を決定するために、テンプレートをまとめたもの。defaultテンプレートセットのみが特別で、全種類のテンプレートを持っている。default以外のテンプレートセットは任意のテンプレートのみを持つことができる。
 +
 +
 +**テンプレートの分類 [#q54eb9e1]
 +
 +*** XOOPS_ROOT_PATH/modules/(dirname)/templates/に置かれたファイル群 [#t705b846]
 +
 +実ファイル。
 +FTPなどでも確認可能。
 +
 +あくまで、モジュール作者が提供するデフォルトテンプレートであり、これが直接、テンプレートとして利用されるわけではない。(オリジナルのX2およびXCL2.1)。
 +
 +ただし、本家版2.0.14以降および、そこからフォークしたImpressCMSでは、一般設定において「defaultテンプレートセット」を選択したままだと、ここに置かれたファイルが、テンプレートとして直接利用されてしまう。
 +
 +この場所のファイルを書き換えても、モジュールのバージョンアップで上書きアップロードすれば、当然、書き換え結果は消されてしまう。
 +
 +これは、X2テンプレートの仕組み・意義を理解していない開発者による改悪だと思われる。
 +
 +
 +***defaultテンプレートセット内のテンプレート [#w1e5b72b]
 +
 +DBテンプレート。ファイルとしては確認できない。
 +altsysやテンプレート管理などから確認可能。
 +
 +モジュール管理から、モジュールをアップデートすると、「XOOPS_ROOT_PATH/modules/(dirname)/templates/に置かれたファイル群」から、データベース内にコピーされる。(すでにあった、defaultテンプレートセットのテンプレート内容は上書きされる)
 +
 +オリジナルのX2およびXCL2.1では、この動作を経てはじめて、上記ファイル群の更新されたテンプレートが反映されることになる。
 +
 +
 +***カスタムテンプレートセット内のテンプレート [#sdc8be76]
 +
 +DBテンプレート。ファイルとしては確認できない。
 +altsysやテンプレート管理などから確認可能。
 +
 +
 +
 +
*ブラウザベースでのカスタマイズ手順 [#l3a9fc03] *ブラウザベースでのカスタマイズ手順 [#l3a9fc03]
Line 7: Line 51:
X2ではこの方法しかなかったため、未だにこの方法で紹介しているサイト・書籍が多いが、今となっては「誤り」と言って良いレベル。 X2ではこの方法しかなかったため、未だにこの方法で紹介しているサイト・書籍が多いが、今となっては「誤り」と言って良いレベル。
-ここで複製してしまうと、カスタマイズする予定のないテンプレートまで複製されてしまい、モジュールを上書きアップデートしても、一向に反映されないことになる。+ここでテンプレートセットごと「複製」してしまうと、カスタマイズする予定のないテンプレートまで複製されてしまい、モジュールを上書きアップデートしても、一向に反映されないことになる。
Line 19: Line 63:
*** 空のテンプレートセット作成 [#y8c7c8e8] *** 空のテンプレートセット作成 [#y8c7c8e8]
 +altsysのテンプレート管理画面、一番下にある「新規にテンプレートセットを作成する」から、ベースに「(空)」を選んで、セット名を入力し、「新規作成」する。
名前は何でも良いが、"custom" や "user" などが判りやすいだろう。 名前は何でも良いが、"custom" や "user" などが判りやすいだろう。
(以下は、customとして説明する) (以下は、customとして説明する)
Line 39: Line 84:
**** カスタマイズしたいモジュール/テンプレート名が判らない場合 [#y23db8d8] **** カスタマイズしたいモジュール/テンプレート名が判らない場合 [#y23db8d8]
-(後で書く)+altsysの「テンプレートの高度な操作」に入り、「テンプレートを枠で囲う」をクリック。 
 +再度、公開側を表示すれば、テンプレート単位で枠が囲ってあるので、編集したい枠内にある "Edit:" リンクをクリックして編集する。
 +ただしこの場合、defaultテンプレートを直接編集していることになるので(((customが選択されている以上、Editリンクをクリックするだけで、自動的にdefaultからcustomにコピーしてcustomを編集するべきではないかという指摘はもっともだが、それはaltsysの今後の課題である)))、編集終了後に、忘れずに編集したテンプレートについて、defaultからcustomテンプレートにコピーしておくこと。
 +それを忘れたままでいると、後でモジュールアップデートした時に変更内容が失われて泣くことになる。
Line 49: Line 97:
*** modules/(dirname)/templates以下のテンプレートを書き換え、モジュールアップデート [#id5191ac] *** modules/(dirname)/templates以下のテンプレートを書き換え、モジュールアップデート [#id5191ac]
 +
 +これはモジュール作者がデフォルトテンプレートを更新する時に使う手段である。
 +モジュールユーザがこの手段を使うと、やはりモジュール更新時に泣くことになる。
** 正しい手順 [#v224e784] ** 正しい手順 [#v224e784]
 +
 +***テーマ下テンプレート [#f9d9eda6]


トップ   差分 バックアップ 複製 名前変更 リロード印刷に適した表示   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom Powered by xpWiki
Counter: 12767, today: 1, yesterday: 5
Back to Page Top
MainMenu
Manuals
Search
XOOPS Official & Dev.
XOOPS Communities