LOGIN ID Password Auto Login Register Now! Lost Password?
XUGJ Wiki

ホダ塾ディストリビューションとは anchor.png

ページ内コンテンツ
Page Top

ホダ塾とは anchor.png

ホダ塾とはXOOPS勉強会の有志集団です。
hodaka氏主宰

http://www.hodajuku.org/

Page Top

ホダ塾ディストリビューション(HD)とは anchor.png

そのホダ塾がXOOPS用に作ったディストリビューションのことをホダ塾ディストリビューションと呼ぶ。略称はHD。

トップページ:
http://hodajuku.sourceforge.net/

SVNレポジトリ:
http://hodajuku.svn.sourceforge.net/viewvc/hodajuku/

ホダ塾ディストリビューション ニュースリリース
http://www.hodajuku.org/modules/bulletin/article.php?storyid=27

XUGJ News
http://www.xugj.org/modules/bulletin/article.php?storyid=87

Page Top

HD1.0 for XCL2.1とは anchor.png

現在、XCL2.1をベースに作ったオールインワンパッケージ "HD1.0 for XCL2.1"がリリースされている

SVNレポジトリ:
http://hodajuku.svn.sourceforge.net/viewvc/hodajuku/trunk/Package_hd/

こちらも是非ご覧ください。
ホダ塾ディストリビューション​/HD1.0.0で現在までに判明しているバグとその対処方法一覧

ダウンロード
http://sourceforge.net/project/showfiles.php?group_id=200922
※新規でインストールする場合は、「Package_hd for XCL2.1」をダウンロードしてください。
インストール方法、旧来のXOOPSからのアップグレード方法はホダ塾ディストリビューション​/HD1.0 for XCL2.1のインストールへ。

Page Top

HD1.0 for XCL2.1 の特長 anchor.png

Page Top

ホダ塾ディストリビューションを利用する10の理由 anchor.png

2008年2月29日から3月1日にかけて行われたOSC2008Springにおいては、以下のような売り文句で紹介された。

  1. より利便性の高いカスタムインストーラー
    難解な設定値やモジュールも一発インストール。
  2. 厳選されたセキュアで汎用性の高いモジュールを同梱
    D3 モジュールを中心とした信頼性の高い最新モジュール群。
  3. 初心者がつまずき易い設定を支援
    xoops_trust_path やprotector 導入時のmainfile.php 書き換えが不要。
  4. UTF-8 にネイティブ対応
    すでに主流になりつつあるUTF-8 エンコーディングで最初から構築が可能。
  5. Web 標準に準拠したテーマ
    テーブルレスでW3C Valid なテーマをインストール時に選択可能。
  6. アクセシビリティに配慮
    JIS X 8341-3 および WCAG1.0 に配慮したテーマを同梱。
  7. 統一された操作感で、ユーザビリティを向上
    操作を補助するオリジナルデザインのアイコン群。
  8. セキュアな運営を手助け
    ウェブ・セキュリティには必須のProtector モジュールをインストール時に自動組み込み。
  9. より柔軟なカスタマイズ性
    テーマ下言語ファイル・テンプレートの導入で、サイト開発をより柔軟に支援。
  10. より「CMS らしさ」を目指した構成
    ほとんどのサイト管理をブラウザ内で完結できるCMS としての資質。
  11. 携帯対応
Page Top

同梱モジュール anchor.png

Page Top

XCL2.1構成モジュール anchor.png

legacy
互換モジュール
legacyRender
レンダリングシステム
user
ユーザモジュール
stdCache
キャッシュ
pm
プライベートメッセージ
Page Top

コンテンツ系(公開側により大きな意味を持つモジュール) anchor.png

bulletin
ニュース
d3blog
ブログ
d3forum
フォーラム
d3pipes
RSS受信・配信
pico
静的コンテンツ
hdpoll
投票(要xanhte)
xeditor
記事作成(要xanhte)
きゅブクマ君
ソーシャルブックマーク
d3downloads
ダウンロードモジュール
QuickCART
カートモジュール
cinemaru
動画共有モジュール
Page Top

システム系(管理側により大きな意味を持つモジュール) anchor.png

altsys
システム管理補助
dbtheme
テーマ編集
protector
セキュリティ
admanage
広告管理(要xanhte)
Page Top

その他 anchor.png

cubeUtils
オートログインと多言語
wizmobile
(XOOPS_ROOT_PATH/modules 配下のディレクトリ名はmobileとなっている)
携帯対応
xanhte
一部モジュールのベースとなるもの
Page Top

同梱テーマ anchor.png

chic_black
黒を基調として、メニューを右に寄せたスタイルのテーマ。
hd_default
テーマ下言語、テーマ下テンプレート、hd_assign.php など、テーマディレクトリでできることを実験的に詰め込んだテーマ。アクセシビリティへの配慮もしてある。
skel_flex
CSS で XOOPS のマルチカラムデザインを構築する為の基礎になるテーマ。
mobile
携帯モジュール専用テーマ
newbase0db
DBテーマ専用テーマ
default
XOOPS由来default(XCL2.1オリジナル)
cube_default
XCL2.1のdefault(XCL2.1オリジナル)
Page Top

同梱preload anchor.png

Page Top

デフォルトで有効になっているもの anchor.png

HdServerEnvironment.class.php
必要に応じてmemory_limitを設定する
HdXoopsTplHook.class.php
テーマ下テンプレートの実現およびSmartyプラグインフォルダの追加
LegacyRenderAssignMytrustdirname.class.php
D3モジュールの実体(TRUST側dirname)をテンプレートに対してアサインする
SetupAltsysLangMgr.class.php
Altsysの言語オーバーライドを実現する
HdFileSession.class.php
Fileセッションの実装(trust/sessionの書き込み権限必要)

ほとんどのpreloadは必要に応じて外せます。
原則的にはその機能がなくなるだけです。
preload/disabled/ に移動するのがお勧めです。

Page Top

デフォルトで無効化されているもの anchor.png

AppendSmartyPluginsdir.class.php
Smartyプラグインフォルダをサイト設定値で自由に追加可能とする
MultiLanguagePreLoad.class.php
cubeUtilsの多言語切替機能を提供する
Legacy_BBCodeNotesByTooltips.class.php
BBCodeの[note]タグを実装する
Legacy_TextFilterShortenClickable.class.php
TextFilterの自動リンク機能で長すぎるリンクを自動的に最大80文字までに切り詰める(最初のdefine部分を書き換えることで最大文字数を調整することも可能)
ErrorHandlerOriginal.class.php
PHPエラーを動作環境の通りに処理する。.htaccessもしくはphp.iniで、log_errorが有効でdisplay_errorを無効とするのがお勧め。デバッグ時には、エラーログファイルをターミナルからtail -fする。
LogErrorPHP.class.php
PHPエラーをログに記録する。デフォルトの記録先は、XOOPS_TRUST_PATH/cache/php_errors.log
PHPデバッグモードがオフでもログ記録には影響はない。逆に、このpreloadを有効にしても、PHPデバッグモードをオンにすると、画面へのエラー出力はされる。
他のエラーハンドラ系preloadとは同居できない。
User_EmailLogin.class.php
ユーザ名+パスワードの代わりにemail+パスワードでもログインできるようにする

preload/disabled/ に納められているので、必要に応じて、preload/ にコピーしてください。

Page Top

HD1.0の各種機能 anchor.png

Page Top

携帯対応 anchor.png

WizMobile によって実現しています。このモジュールをインストールするだけで、HD を携帯対応サイトにできます。現時点では、日本の携帯キャリア(Docomo、AU、SoftBank)に対応しています。

Page Top

オートログイン anchor.png

cubeUtils にて実装されていますので、このモジュールをインストールすることが大前提となります。

それだけで、「IDとパスワードを記憶」チェックボックスのついたログインブロックが有効になります。ただし、このままだと、userモジュールの提供する標準的なログインブロックと二重に表示されてしまうので、altsysのブロック管理等から、userモジュールのログインブロックを非表示とします。

cubeUtilsの一般設定から、自動ログイン機能のON/OFFや自動ログインの持続時間を設定することもできます。

Page Top

マルチランゲージ(多言語切替処理) anchor.png

cubeUtils にて実装されていますので、このモジュールをインストールすることが大前提となります。

HDにおいて、マルチランゲージを有効にするには、html/preload/disabled に納められている MultiLanguagePreLoad.class.php を html/preload にコピーしてください。
ただし、インストール時にこのファイルがあると、不具合が発生することがあるので、完全にインストールが終わってからコピーするべきです。

cubeUtilsのデフォルトは、japanese(EUC-JP版日本語)とenglishの2言語切替となっているので、HDのインストールで、ja_utf8(UTF-8版日本語)を選択した場合は、cubeUtilsの多言語設定を置き換える必要があります。

html/modules/cubeUtils/include/ に、conf_ml.ja_utf8_sample.php というファイルがすでにあるので、このファイルを conf_ml.php という名前にコピーすることで、ja_utf8とenglishの2言語切替となります。

それ以外のマルチランゲージ設定を希望する場合は、conf_ml.php を適宜編集してください。基本的にはEMLHと同じ設定が利用できます。

Page Top

広告管理モジュール anchor.png

admanageモジュール。従来、<{$xoops_banner}>でしかなかった広告管理の手法を拡張するべく作ったものです。

作成した広告は、<{$admanage.*******}>でテンプレート変数にアサインされます。(******の部分は広告作成時に英数半角で自由に設定可能)

また、カスタムブロックに表示させたい場合もコピーペーストするHTMLコードを吐き出して広告が掲載できるようになっています。

広告は、GIF/JPEGなどの画像や、Flash(Flashが使えないUA用に代替GIFも)、テキストなどが選択できます。

詳しくは管理画面の「ヘルプ」をご覧ください。

Page Top

投票モジュール anchor.png

xoopspollとほぼ似たモジュールです。ただし、コードはゼロから書き直しています。

xoopspollと違う点は、
・COOKIEでゲストの投稿も一応二重投稿できにくくしている(COOKIEなので根本的解決では全然ありません)
・JavaScriptを用いてページ遷移無くブロックから投票可能
・投票時にコメントを同時に投稿できる
・結果を日別に閲覧できる
などです。

Page Top

記事作成モジュール anchor.png

投稿は、管理者(もしくは非常に限られた信頼の置けるグループ)のみを想定しています。使用イメージとしては管理側からのニュースを淡々と伝えるというような感じです。
それはこのモジュールの記事部分はHTML投稿を許可しているからです。匿名性の高いユーザーグループにはこのモジュールの投稿権限を与えるべきではありません。

このモジュールは、TinyMCEエディタ+画像マネージャを使ってみるベースとして作成しました。
詳しい使い方は管理画面からヘルプを閲覧してください。

なお、TinyMCEの画像マネージャはPHPがセーフモードの場合は動作しません。

Page Top

管理画面テーマ anchor.png

hd_defaultを管理画面用テーマとして利用すると、非常に見やすく、効率的な作業が出来る。

手順は以下の通り。

  • html/settings/site_custom.sample.ini.php を site_custom.ini.php にリネーム
  • ALTSYSの一般設定で、管理画面用テーマをhd_defaultに変更
Page Top

テーマのブラウザでの編集 anchor.png

Page Top

dbthemeモジュールとnewbase0dbテーマ anchor.png

dbthemeモジュールをインストールすると、newbase0dbというテーマ名が、「全般設定」や「テーマの管理」で選択可能になる。

なおホダ塾ディストリビューションに同梱されているテーマで、テーマ編集が可能なのはこのテーマのみである。(正確には不可能ではないが、あまり向いていない)

Page Top

編集方法 anchor.png

管理画面の「テーマ編集」のテンプレート管理から、newbase0dbテーマを編集できる。

このテーマのフッタ部分に、「THEME 編集」というリンクがあるので、それを利用すると便利だろう。このリンクは管理者にしか見えない。

Page Top

編集例 anchor.png

カラーやサイズ指定は、dbtheme_screen.css の上部でまとめて変更できる。

bg
両側の背景色
main
中央部の背景色
main_rev
中央部の文字色(リンク以外)
header
ヘッダ部の背景色
header_rev
ヘッダ部の文字色
link
リンク文字列の文字色
link_hover
リンクのhover色
impact
<th>などに利用される強調部分の背景色
impact_rev
<th>などに利用される強調部分の文字色
title
ブロックタイトルなどの背景色
title_rev
ブロックタイトルなどの文字色
head
XOOPSで一般に利用されるクラス指定
even
XOOPSで一般に利用されるクラス指定
odd
XOOPSで一般に利用されるクラス指定
error
エラーダイアログの背景色
confirm
確認ダイアログの背景色
result
結果ダイアログの背景色
border
境界線色

また左上のヘッダ画像は、dbtheme_theme.html の以下の部分を書き換えることで変更可能である。

<div id="Header">
   <img src="<{$xoops_imageurl}>images/logo.gif" alt="<{$xoops_sitename}>" />
</div>

なお、編集したテーマ(テンプレート)をあやまって壊してしまわないように、なんらかの形でコピーをとっておくべきである。(バックアップ専用のテンプレートセットを作成する等)

Page Top

その他のモジュール anchor.png

pico, d3forum, bulletin2等の一般的なモジュールの使い方については、XUGJに用意されているモジュール毎のマニュアルを参照のこと。

Page Top

テーマ下テンプレート anchor.png

XOOPS の仕様で、themes ディレクトリの中に templates フォルダを作って、モジュールのテンプレートをコピーすると、そのテンプレートが有効になる、というものがあります。このテーマ下テンプレート(テーマ下ファイルテンプレート)ですが、テーマを切り替えたら、一緒に切り替わってほしいものですが、そのような作りにはなっていませんでした。HDでは、テーマとテーマ下テンプレートが関連付くので、テーマとテーマ下テンプレートが連動し、より多彩な表現が可能になりました。

Page Top

HD のテーマ下テンプレートの仕様(通常) anchor.png

themes/YOURTHEME/templates ディレクトリを用意し、モジュールの改変したいテンプレートをコピーします。d3モジュールの場合は、(モジュールインスタンス名)_(テンプレート名)となることを注意してください。変更を加えるつもりのない、すべてのテンプレートをコピーする必要はありません。こういうことをすると、モジュールのバージョンアップでテンプレートに変更があっても、テーマ下テンプレートが優先されてバージョンアップの効率が悪くなります。

編集を即時有効にしたいときには、「互換モジュール > プリファレンス > 全般設定」で、「themes/ ディレクトリからの自動アップデートを有効にする」を「はい」にしておきます。

この状態で、コピーしたファイルを編集すると、テンプレートの変更が反映されます。

Page Top

HD のテーマ下テンプレートの仕様(d3モジュールの共通テンプレート) anchor.png

自由なディレクトリ名をつけることができる d3モジュールでは、上述の通り、(モジュールインスタンス名)_(テンプレート名)とすることで、どのモジュールインスタンスのテンプレートなのかを明示して操作します。

しかし、たくさんのモジュールインスタンスをインストールしていて、全部に共通の変更なんだけど、それぞれ分用意するのが大変な場合、ということもあり得ます。

こういうときは、themes/YOURTHEME/templates/(モジュール名)ディレクトリを用意し、そこに prefix を持たないファイル名でテンプレートを用意することで、ひとつのモジュールに共通のテンプレートを用意することができます。

たとえば、pico モジュールを複数インストールしていて、そのすべての pico で、パンくずの構造をかえたいというような場合、themes/YOURTHEME/templates/pico/ を用意して、そこに inc_breadcrumbs.html を設置し、編集することでインストールしているすべての pico のパンくずを編集できます。

Page Top

テーマ下言語 anchor.png

themes/YOURTHEME/language/(言語名).php というファイルを用意し、そのファイルの中で定数を定義することで、言語オーバーライドを実現できます。言語名は、/language の中に並ぶフォルダ名を参考にしてください。

ただしこの言語オーバーライドは、すべての言語定数をオーバーライドする訳ではなく、モジュール内の言語定数はオーバーライドできますが、/language のなかの定数や、これは性質上の問題ですが、システムが送信するメールファイルの定数などは改変がききませんので、注意してください。

編集の事例としては、HD 同梱テーマ hd_default の language ディレクトリを参照してください。ただし、このファイル内で、_HD からはじまる定数は、オーバーライドでなく、ただの追加定数なのでご注意ください。

Page Top

HD1.0 for XCL2.1 の運用 anchor.png

Page Top

アップデート anchor.png

基本は XCL のバージョンアップ をご覧ください。

多くの場合は、XCL がリリースされたら、その XCL で、上記リンク先の手順でサイトを上書きしても問題ないと思いますが、HD 自体が、あたらしい XCL の変更を反映してからでもいいでしょう(あまり自信がなければ、待った方が安全です)。

ただし HD はディストリビューションなので、XCL のバージョンアップから少し遅れて、XCL のバージョンアップを反映することになり、セキュリティ関係のホットフィックスがある場合などは、個別に対応をする必要があるかも知れません(こういう場合は HD も早めに対応すると思いますが)。

Page Top

「未知のツールバー項目 "UniversalKey"」などとメッセージが表示され,正常にFCKeditorが利用できない anchor.png

アップデート用パッケージ「hd_update_1_0_3a」を用いてHD-1.0.3aにアップデートした場合,FCKeditorを利用しようとすると「未知のツールバー項目 "UniversalKey"」などとメッセージが表示され,正常にFCKeditorが利用できない場合があります。これは,ユーザがカスタマイズしたfckconfig.jsを上書きしてしまわないよう,このファイルをアップデート用パッケージから除いているために生じます。対処方法は以下の通りです。

参照:http://www.xugj.org/modules/QandA/index.php?topic_id=1229

  • fckconfig.jsをカスタマイズしていない場合は,フルパッケージ「hd_full_1_0_3a」のhtml/common/fckeditor/fckconfig.jsをXOOPS_ROOT_PATH/common/fckeditor/fckconfig.jsに上書きしてください。
  • fckconfig.jsをカスタマイズしている場合は,フルパッケージ「hd_full_1_0_3a」のhtml/common/fckeditor/fckconfig.jsとマージしてください。
Page Top

バックアップ anchor.png

XCL のバックアップ をご覧ください。

Page Top

引越 anchor.png

XCL の引越 をご覧ください。

Page Top

アンインストール anchor.png

XCL のアンインストール をご覧ください。

Page Top

トラブルシューティング anchor.png

HD1.0.0で現在までに判明しているバグとその対処方法一覧

Page Top

ログイン関連 anchor.png

Page Top

ログインしようと user.php にアクセスするとリダイレクトされてしまい、そのページへの権限がなく、ログインフォームも表示されなくなった anchor.png

cubeUtilsをインストールしてから、ゲストのcubeUtilsに対するモジュールアクセス権限を削ってしまうと、user.php 経由のログインができなくなります。

ログインブロックがどこかに表示してあればそこからログインできますが、そうでない場合は、/html/modules/cubeUtils/preload/AutoLoginHack.class.php に対応するサーバ上のファイルを一時的に移動・リネームすれば、user.php からのリダイレクトはなくなりますので、ログインフォームも表示されます。

管理者としてログインしてから、あらためてゲストに対して、cubeUtilsモジュールへのモジュールアクセス権限を与えてください。(その後、preload/AutoLoginHack.class.php を元に戻すことをお忘れ無く)

Page Top

モジュールインストール関連 anchor.png

Page Top

wizmobileをインストールしようとすると Sorry, this module cannot install, because it needs PHP4.4.X or upper version. というメッセージが出る anchor.png

wizmobileは、PHP 4.4.0 以上でしか動作しません。

wizmobileをインストールしている環境において、なんらかの理由でPHPバージョンをPHP4.3.xに下げた時には、代わりに Sorry, this framework over PHP4.4.X というメッセージが出て止まります。 この場合はハマりに近いのですが、可能ならいったんPHP4.4.0以上に上げてからwizmobileをアンインストールしてください。

Page Top
インストール後のバージョンダウンは完全に見落としてました。この現象になった場合、{XOOPS_ROOT_PATH}/modules/mobile/preload 内のファイルを削除して下さい。0.2系で対応します。 anchor.png

トップ   凍結 差分 バックアップ 複製 名前変更 リロード印刷に適した表示   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom Powered by xpWiki
Counter: 34724, today: 1, yesterday: 3
初版日時: 2008-03-04 (火) 20:21:31
最終更新: 2014-01-13 (月) 22:06:02 (JST) (1311d) by GIJOE
Back to Page Top
MainMenu
Manuals
Search
XOOPS Official & Dev.
XOOPS Communities