Joomla! の逆襲 - Joomla! Pro Book

Joomla! 1.5.x
Joomla! 日本語化プロジェクト
なかはら たかゆき
Joomla! の逆襲 - Valid な表現を
Joomla! Framework
Joomla! とは?
●
●
●
開発:Joomla.org(http://www.joomla.org/)
ライセンス:Open Source Matters
(http://www.opensourcematters.org/)
前身:Mambo CMS
Joomla! の特徴
●
目的:CMS(Content Management System)
コンテンツ マネージメント システム
コンテント マネージメント システム
●
特徴:非常に完成度の高いリッチなWebシステム
プラグインやアドオンも数多い、もちろんマルチランゲージ。
CMS で何が出来るの?
●
●
●
●
ポータルサイト
記事や登録ユーザーを管理して、大規模なWebサイトも
楽々構築。
一枚毎にWebページを作成しなくても複数の作り手が
コンテンツに集中できる。
WikiやSNSもCMS、Eコマースや高機能Blogとしての役割
も。
●
デザインも自由自在?
●
パソコンに特別なソフトは要らない。
●
画像やムービーもコンテンツとして管理。
Joomla! を設置するには
●
標準:LAMP(Linux Apache MySQL PHP)
●
一般的なレンタルサーバーで動作
●
Windowsでも可
●
XAMPP でテスト
●
簡単インストール
●
デモコンテンツで学習できる
●
日本語OK
●
インストールや日本語版情報は、
「Joomla!じゃぱん」 http://www.joomla.jp/
自 己 紹 介
●
Taka (なかはら たかゆき)
●
Joomla!日本語化プロジェクト メンバー
http://www.joomla.jp/ (Joomla!じゃぱん)
●
インプレス ジャパン 出版
「Joomla! Pro Book」
オープンソースCMS導入&カスタマイズガイド
●
長野県 駒ヶ根市(コマガネ) 在住
●
信州 駒ヶ根といえば・・・
ソ ー ス カ ツ 丼
●
信州 駒ヶ根といえば・・・ソースカツ丼!
老舗「きらく」の旦那が毎日のように
私の事務所にサボリ休憩にきます、
女将さんには内緒です。。。
ソ ー ス カ ツ 丼 の 構 成
+
+
イラスト:
素材のプチッチ さん
http://putiya.com/
M V C の 構 成
+
+
View
Controller
Model
ロジック・処理
UI(ブラウザ等)へ出力
Chrome
装飾
CMS
入力処理
Joomla! 1.5 MVC の構成
+
JModel
+
Jview JController
Chrome
Joomla! 1.5 Framework
Joomla! 1.5 Framework
Base classJModel
ベースクラス
Variable
$_db
$_name
$_state
変数
Jview JController
$_basePath
$_defaultMod
el
$_layout
$_layoutExt
$_models
$_name
$_path
詳細は
http://api.joomla.org/
$_acoSection
$_acoSectionVal
ue
$_basePath
$_doTask
$_message
$_messageType
$_methods
$_name
$_path
$_redirect
$_task
$_taskMap
M VC の 効 能
HTML出力の変更を行っただけでも・・・
従来のアップデート
アップデートパッケージ → 編集 → 上書きアップデート
1.5.xのアップデート
アップデートパッケージ
→
上書きアップデート
V i e w の 実 際
Joomla!の主機能は
コンポーネントの集まり
ぶ~の実際
サイト側コンポーネント
サイトルート/components/
com_banners
com_mailto
com_poll
com_contact
com_media
com_search
com_content
com_newsfeeds
・・・
管理側コンポーネント
サイトルート/administrator/components/
com_admin
com_banners
com_categories com_checkin
com_contact
com_content
com_cache
com_config
・・・
V i e w の 実 際
コンポーネントの中にViewがある
例:サイト側 コンテンツ コンポーネント
サイトルート/components/com_content/views/
archive article category
ction
frontpage
例:views/article/tmpl/
default.php default.xml
form.php
form.xml
pagebreak.php pagebreak.xml
index.html
php ファイルに HTML 出力がある
se
テ ン プ レ ー ト の 対 応
てんぷら~との対応
コンポーネントのViewsと
同じファイルがある
例:com_content に対応したテンプレートファイル
デフォルトに配布されている「beez」では
サイトルート/templates/beez/html/com_content/
default.php form.php
index.html
pagebreak.php
コンポーネントのファイルと同じ名前の
php ファイルに HTML 出力がある
サ イ ト の 表 示
対応したファイルがテンプレートにあれば優先される
その結果
デザインだけでなくレイアウト方法も変わる
<table class="blog" cellpadding="0" cellspaci
ng="0">
<tr>
<td valign="top">
<div>
<table class="contentpaneopen">
<tr>
<td class="contentheading" width="100%">
Welcome to Joomla!
</td>
<div class="blog">
<div class="leading">
<h2 class="contentheading">
Welcome to Joomla!</h2>
<p class="buttonheading">
モ ジ ュ ー ル も 対 応
モジュールも対応ファイルがある
例:Newsflashモジュール のHTML出力ファイル
サイトルート/modules/mod_newsflash/tmpl/
default.php _item.php
horiz.php
vert.php
「beez」テンプレートで対応するファイル
サイトルート/templates/beez/html/mod_newsflash/
default.php _item.php
horiz.php
vert.php
モジュールのファイルと同じ名前の
php ファイルに HTML 出力がある
対 応 フ ァ イ ル の 役 割
オリジナルなHTML出力ができる
これですべての出力が変更できる!
全体レイアウトは index.php ファイルで
beezの場合:サイトルート/templates/beez/index.php
つまり?・・・
V a l i d な 出 力
HTMLチェックもOK!なテンプレート製作が実現
W3C Markup Validation Service http://validator.w3.org/
Valid = 正当、妥当
●
Validな出力じゃなきゃいけないの?
●
なんで元からValidじゃないの?
Joomla! をアクセシブルに
テーブルレイアウトに依存しないテンプレート
それだけじゃないですが・・・
・障害のある方にも ・SEO
・公共サイト
・企業として
Accessibility
●
JIS X 8341-3(ウェブコンテンツJIS)
●
米国リハビリテーション法508条
テンプレートのオンライン編集
複数のCSSファイル編集にも対応
これで完璧?・・・問題点
コンテンツはどうする?
本当にHTMLを知らないでも記事は書ける?
HTML WYSIWYG EDITOR ?
課題はまだまだありますが・・・
もっと Joomla! 1.5
新しくなったのはViewだけじゃない
魅力いっぱいの Joomla!
Joomla!
...becaus open source matters
これで美味しいソースカツ丼・・じゃなくて・・
Joomla!サイトが味わえる!
以上です。