第3章 セットアップ

第3章 セットアップ

モジュールのインストール

※ここからは転送したフォルダのパーミッション設定等も必要なので運用サーバーに設定する方法を解説します。ローカルコンピュータのテスト環境でご利用の場合は適時読み替えてください。

XOOPS Cubeシステムは基本システムに様々なモジュールをインストールして機能を実現します。

基本システムをインストールした直後は基本モジュールしかインストールされていないので、用途に応じてモジュールをインストールして設定する必要があります。

本書では実際にモジュールをインストールしながら操作手順を学習していきす。

1つまたは複数の機能を提供するために、1つにパッケージ化されているプログラムの集合体というように考えると解りやすでしょう。

それぞれの機能を実現するためには、その機能に対応したモジュールが必要になります。

XOOPSシステムは基本的なコアシステムがあり、そのコアシステムが基本動作を担い、それ以外の機能をモジュールという形で追加するというスタイルになっています。

車で例えれば、シャーシとエンジンがXOOPSのコアシステムであり、タイヤやハンドルがモジュール、外装がテーマというような感じです。

XOOPSシステムはPHP言語で記述されたプログラムの集合体です。

細かく設定したり、ご自分でモジュールを作ったり変更したい場合はPHPの知識とHTMLの知識が必要になります。

しかし、車のタイヤは作れなくてもタイヤ交換はできますよね。

それと同じで、パーツというモジュールは作れなくても交換はできます。

実際に非常にたくさんのモジュールが開発されていますので、ご自分の用途にあったモジュールを探すところから始めましょう。

「Duplicatable Version2」と「Duplicatable Version3」というのが正式な呼び名です。

どちらもモジュールの複製が可能なモジュールということになります。

モジュールの複製をインストールする場合には、モジュールのフォルダ名を変更してサーバーにアップロードします。

D2モジュールは複製に対してネーミングの制限があるのに対しD3モジュールはネーミングに関する制限はありません。

D3モジュールの方が機能的にできているのでインストール方法が複雑になります。

本書ではどちらも扱うのであまり気にしなくてもインストールができるようになります。

モジュールに合わせたインストール方法を理解すれば、実用上の問題はありません。

※モジュールの種類
モジュールは、複製可能なものと複製不可能なものがあります。
複製可能なモジュールは D2モジュール もしくは D3モジュール です。
モジュールをダウンロードする際に、どのタイプのモジュールかよく確認するようにします。

もっと詳しく知りたい場合は専門書やインターネット等でお調べすることをお勧めします。

作業フォルダの作成

ここで、今後の作業のためにローカルコンピュータに作業フォルダを作成しておきます。

今後ダウンロードするモジュールやファイル修正のためのフォルダとして準備します。

フォルダ名を「xoops_tools」として適当な場所に作成します。

現在提供されているモジュールのほとんどは、2.1.x用に開発されたものなので2.1.8ではほとんどのモジュールがインストール可能ですが、2.2.0ではXOOPS Cube Legacy本体の大幅なアップデートにより、従来のモジュールとベースシステムとの整合性が取れていないものも数多くあります。

これはプログラミングのコーディングに関する部分なので、モジュール開発者でないとわからないのが現状です。

2.1.8で使えるモジュールが2.2.0で使えるかどうかはインストールして試しに動作させてみるしか手がありません。

本書では筆者が2.2.0で動作確認をおこなったモジュールを使って解説していきます。

なお、一部モジュールでPHPのワーニングが表示されますが、動作に影響ない範囲ということで利用可能と判断しました。

「system」 本体同梱 D2モジュール対応用システムモジュール

「altsys」 本体同梱 システム管理用モジュール

「TinyD」 Ver 2.30 ダウンロード 静的コンテンツ作成に適したD2モジュール

「bulletinHD」 Ver 2.2 ダウンロード ニュース記事用D3モジュール

「d3blog」 Ver 1.08 ダウンロード ブログ用D3モジュール

「d3forum」 Ver 0.86-pre2 ダウンロード フォーラム用D3モジュール

「webphoto」 Ver 2.42 ダウンロード 写真・動画等コンテンツ用D3モジュール

「ccenter」 Ver 0.96 ダウンロード お問い合わせ管理モジュール

「sitemap」 Ver 1.31 ダウンロード ページ内サイトマップ表示モジュール

「tellafriend」 Ver 1.05 ダウンロード サイトを友達にメールで紹介するモジュール

モジュールのダウンロード

XOOPS Cubeのモジュールは非常に多くの開発者が携わって開発されており、モジュール自体も日々進化しているものも多く、それぞれの開発者が管理しているサイトからダウンロードして入手します。

ダウンロードの前にダウンロードページ内に記載されている内容にはよく目を通してください。

インストールの注意事項やアップデート情報などが記載されています。

また、各モジュールはXOOPS Cubeのサイトから探してダウンロートサイトにたどり着きますが、まれにアップデート情報が反映されていないものもありますので、その場合は直接探します。

TinyD モジュールは、D2 モジュールの静的コンテンツを作成するモジュールで、業務案内やカタログ、基本コンテンツを作成するのに便利なモジュールです。

モジュールはXOOPS Cube日本サイトから、辿りながらダウンロードできます。

実際に辿りながらインストール作業を進めます。

ブラウザでページを開いたら上部にあるメニューから「モジュール」をクリックします。

dl_01.png

URL http://xoopscube.jp/

モジュールページに移動したらダウロードのカテゴリーから「A2101.汎用静的(11)」を選択し、クリックします。

dl_02.png

モジュールページ

ページの左側が選択したカテゴリーのモジュール一覧になるので「TinyD」の項目を見つけます。

dl_03.png

「TinyD」モジュールの「ダウンロード」をクリックします。

dl_04.png

URL http://xoops.peak.ne.jp/md/mydownloads/singlefile.php?cid=5&lid=87

「PEAK XOOPS サポート&実験室」へ移動するので、ディスクアイコンをクリックしてファイルをダウンロードします。

また、表示されたページにも目を通しておきます。

TinyD-2.3.zipがダウンロードされるので、作業フォルダに保存します。

bulletinモジュールはD3モジュールのニュースを表示するモジュールです。

前述の「TinyD」モジュール同様XOOPS Cube日本サイトから、辿りながらダウンロードできます。

ダウンロードのカテゴリーで「A07.ニュース(8)」を選択し、クリックします。

dl_08.png

ページの左側が選択したカテゴリーのモジュール一覧になるので「bulletinHD」の項目を見つけます。

dl_09.png

「bulletinHD」モジュールの「ダウンロード」をクリックします。

dl_10.png

http://xoops.peak.ne.jp/md/mydownloads/singlefile.php?cid=1&lid=106

「PEAK XOOPS サポート&実験室」へ移動するので、ディスクアイコンをクリックしてファイルをダウンロードします。

また、表示されたページにも目を通しておきます。

bulletinHD-2.2.zipがダウンロードされるので、作業フォルダに保存します。

d3blogモジュールはD3モジュールのブログシステムです。

前述のモジュール同様XOOPS Cube日本サイトから、辿りながらダウンロードできます。

ダウンロードのカテゴリーで「A06.ブログ(16)」を選択し、クリックします。

dl_11.png

ページの左側が選択したカテゴリーのモジュール一覧になるので「d3blog」の項目を見つけます。

dl_12.png

「d3blog」モジュールの「ダウンロード」をクリックします。

dl_13.png

http://www.kuri3.net/modules/mydownloads/singlefile.php?lid=30

「Hodakaの居場所」へ移動するので、フォルダアイコンをクリックしてファイルをダウンロードします。

また、表示されたページにも目を通しておきます。

d3blog-1.08.zipがダウンロードされるので、作業フォルダに保存します。

d3forumモジュールはD3モジュールのフォーラム作成用モジュールです。

前述のモジュール同様XOOPS Cube日本サイトから、辿りながらダウンロードできます。

ダウロードのカテゴリーで「A16.フォーラム・掲示板(21)」を選択し、クリックします。

dl_14.png

ページの左側が選択したカテゴリーのモジュール一覧になるので「d3forum メンテプロジェクト」の項目を見つけます。

dl_15.png

「d3forum メンテプロジェクト」モジュールの「ダウンロード」をクリックします。

dl_16.png

http://sourceforge.jp/projects/d3forum/releases/53024

こちらは「SOURCEFORGE.JP」からのダウンロードとなりますので、ファイル名をクリックしてダウンロードします。

d3forum-0.86-pre.zipがダウンロードされるので、作業フォルダに保存します。

webphotoモジュールは、写真や動画を管理するD3のアルバム・モジュールです。

前述のモジュール同様XOOPS Cube日本サイトから、辿りながらダウンロードできます。

ダウロードのカテゴリーで「A17.画像・動画(20)」を選択し、クリックします。

dl_17.png

ページの左側が選択したカテゴリーのモジュール一覧になるので「webphoto」の項目を見つけます。

dl_18.png

「webphoto」モジュールの「ダウンロード」をクリックします。

dl_19.png

モジュールのメンテナンスをおこなっている方のページに移動するので、ダウンロードアイコンをクリックします。

また、表示されたページにも目を通しておきます。

dl_20.png

http://sourceforge.jp/projects/xoops4u/releases/52254

こちらも「SOURCEFORGE.JP」からのダウンロードとなりますので、ファイル名をクリックしてダウンロードします。

webphoto-242.zipがダウンロードされるので、作業フォルダに保存します。

ccenterモジュールはサイトの問い合わせをデータベースで管理できる便利な「お問合せ窓口」モジュールです。

前述のモジュール同様XOOPS Cube日本サイトから、辿りながらダウンロードできます。

ダウロードのカテゴリーで「A24.お問合せ・資料請求(11)」を選択し、クリックします。

dl_21.png

ページの左側が選択したカテゴリーのモジュール一覧になるので「ccenter」の項目を見つけます。

dl_22.png

「ccenter」モジュールの「ダウンロード」をクリックします。

ccenter-0.96.tar.gzがダウンロードされるので、作業フォルダに保存します。

zip形式が必要な場合は「リリースノート」をクリックします。

dl_23.png

http://myht.org/modules/mydownloads/singlefile.php?cid=4&lid=21

ページ内のccenter.zipへのリンクをクリックするとccenter.zipがダウンロードされます。

sitemapモジュールは、簡単にサイト内のサイトマップを生成してくれるモジュールです。

前述のモジュール同様XOOPS Cube日本サイトから、辿りながらダウンロードできます。

ダウロードのカテゴリーで「A25.サイトマップ(2)」を選択し、クリックします。

dl_26.png

ページの左側が選択したカテゴリーのモジュール一覧になるので「sitemap」の項目を見つけます。

dl_27.png

「sitemap」モジュールの「ダウンロード」をクリックします。

dl_28.png

「PEAK XOOPS サポート&実験室」へ移動するので、ディスクアイコンをクリックしてファイルをダウンロードします。

また、表示されたページにも目を通しておきます。

sitemap-1.3.zipがダウンロードされるので、作業フォルダに保存します。

tellafriendモジュールは、「友達に知らせる」機能を提供してくれるモジュールです。

前述のモジュール同様XOOPS Cube日本サイトから、辿りながらダウンロードできます。

ダウロードのカテゴリーで「D12.メールフォーム(10)」を選択し、クリックします。

dl_29.png

ページの左側が選択したカテゴリーのモジュール一覧になるので「tellafriend」の項目を見つけます。

dl_30.png

「tellafriend」モジュールの「ダウンロード」をクリックします。

dl_31.png

「PEAK XOOPS サポート&実験室」へ移動するので、ディスクアイコンをクリックしてファイルをダウンロードします。

また、表示されたページにも目を通しておきます。

tellafriend.zipがダウンロードされるので、作業フォルダに保存します。

モジュールのダウンロードはこれで終了です。

モジュールインストール前の準備

ダウンロードした各圧縮ファイルを展開します。

※ccenterモジュールはtar.gz形式とzip形式のどちらかひとつ展開すればOKです。
tar.gz形式を展開するとccenter-0.96.tarというフォルダが、zip形式を展開するとccenter-0.96が作成されますがどちらも中身は同じです。

dl_25.png

圧縮ファイル展開後のフォルダ

TinyDモジュールは古いタイプのモジュールなので日本語utf8コードに対応した言語ファイルがありません。

今回利用しているXOOPS Cube Legacy 2.2.0では日本語utf8コードを利用する設定でインストールしているので各モジュールがutf8用の言語ファイルを持っている必要があります。

※言語ファイルとは
XOOPS Cubeは、プログラムと表示する言語を分けて開発されています。最近の多くのプログラムは簡単に多言語化できるようにプログラムロジックと表示言語は切り離して開発するのが主流となっています。ページ上に表示する文字はすべて各モジュールが「langage」フォルダ内に対応している言語用ファイルを準備しています。
具体的なフォルダ名を例にあげると日本語EUCコード用の言語ファイルは「japanese」フォルダに、日本語utf8コード用の言語ファイルは「ja_utf8」フォルダに用意されています。文字コードの違いは単にファイルの保存形式で区別されているだけなので、EUCからutf8に変更するには「japanese」フォルダを「ja_utf8」というフォルダ名でコピーして中のファイルの保存形式をutf8形式にすれば対応できます。これらの表示言語ファイルは「定数名=表示文字」という形で構成されているのでどの言語でも定数名、項目数とも同じになってます。

言語ファイルの追加作業と変更

TinyDモジュール

作業フォルダ内の「TinyD-2.3」> 「modules」>「tinyd0」>「language」>「japanese」フォルダをコピーして「ja_utf8」というフォルダ名で同じ場所に保存します。

change_03.png

「ja_utf8」フォルダ内のすべてのファイルをEUCとutf8形式で読み書きできるテキストエディターで開き、utf8形式で保存します。

続いて作業フォルダ内の「TinyD-2.3」> 「common」>「spaw」>「lib」>「lang」>「ja」フォルダ内の「ja_lang_data.inc.php」をEUCとutf8形式で読み書きできるテキストエディターで開き、utf8形式で保存します。

このファイルは日本語用に一つしかないのでEUCからutf8に変更しておきます。(記事編集時のspawエディターが参照する表示言語です。)

これで準備は完了です。

サーバーへのモジュール転送

サーバーへ各モジュールのファイルを転送します。

※ローカルコンピュータのXAMPPの場合はファイルを規定の場所にコピーします。

XOOPS Cubeのシステムでは基本的にモジュールのインストール、アンインストールは管理画面で行います。

モジュールをインストールする前にサーバーに利用するモジュールファイルを転送しておく必要があります。

※FTP転送する場合はフォルダごと上書きして問題ありません。この場合は元のフォルダとマージされてファイルが追加されます。

作業フォルダの「TinyD-2.3」フォルダ内の「common」フォルダ内をすべてサーバーの「html」>「common」フォルダ内にFTPで転送します。

同様に「TinyD-2.3」フォルダ内の「modules」フォルダ内をすべてサーバーの「html」>「modules」フォルダ内にFTPで転送します。

作業フォルダの「bulletinHD-2.2」フォルダ内の「html」フォルダ内をすべてサーバーの「html」フォルダ内にFTPで転送します。

同様に「bulletinHD-2.2」フォルダ内の「xoops_trust_path」フォルダ内をすべてサーバーの「xoops_trust_path」フォルダ内にFTPで転送します。

作業フォルダの「d3blog-1.08」フォルダ内の「html」フォルダ内をすべてサーバーの「html」フォルダ内にFTPで転送します。

同様に「d3blog-1.08」フォルダ内の「xoops_trust_path」フォルダ内をすべてサーバーの「xoops_trust_path」フォルダ内にFTPで転送します。

※「xoops_trust_path」内を転送時に「index.html」を上書きするかどうかのメッセージが表示されますが、元のファイルのままにするために「いいえ」を選択します。(間違えて上書きして問題ありません。)

作業フォルダの「d3blog-1.08」フォルダ内の「extra」フォルダ内の「html」フォルダ内をすべてサーバーの「html」フォルダ内にFTPで転送します。

※「html」内を転送時にファイルを上書きするかどうかのメッセージが表示されますが、「はい」を選択して上書きします。(smarty関連のプラグインファイル2つ)

同様に「d3blog-1.08」フォルダ内の「extra」フォルダ内の「xoops_trust_path」フォルダ内をすべてサーバーの「xoops_trust_path」フォルダ内にFTPで転送します。

作業フォルダの「d3forum-0.86-pre」フォルダ内の「d3forum-0.86-pre」フォルダ内の「html」フォルダ内をすべてサーバーの「html」フォルダ内にFTPで転送します。

※「html」内を転送時にファイルを上書きするかどうかのメッセージが表示されますが、「はい」を選択して上書きします。(smarty関連のプラグインファイル2つ)

同様に「d3forum-0.86-pre」フォルダ内の「d3forum-0.86-pre」フォルダ内の「xoops_trust_path」フォルダ内をすべてサーバーの「xoops_trust_path」フォルダ内にFTPで転送します。

作業フォルダの「webphoto-242」内の「webphoto」フォルダ内の「html」フォルダ内をすべてサーバーの「html」フォルダ内にFTPで転送します。

※「html」内を転送時にファイルを上書きするかどうかのメッセージが表示されますが、「はい」を選択して上書きします。(smarty関連のプラグインファイル2つ)

同様に「webphoto-242」フォルダ内の「webphoto」フォルダ内の「xoops_trust_path」フォルダ内をすべてサーバーの「xoops_trust_path」フォルダ内にFTPで転送します。

サーバーの「xoops_trust_path」>「modules」>「webphoto」フォルダ内の「uploads」フォルダのパーミッションを「777」に変更します。

作業フォルダの「ccenter-0.96」フォルダ内に「ccenter」フォルダがあるので、フォルダごとサーバーの「html」>「modules」フォルダ内にFTPで転送します。

作業フォルダの「sitemap-1.3」フォルダ内の「modules」フォルダ内に「sitemap」フォルダがあるので、フォルダごとサーバーの「html」>「modules」フォルダ内にFTPで転送します。

作業フォルダの「tellafriend」フォルダ内の「class」フォルダ内をすべてサーバーの「html」>「class」フォルダ内にFTPで転送します。

同様に「tellafriend」フォルダ内の「modules」フォルダ内をすべてサーバーの「html」>「modules」フォルダ内にFTPで転送します。

これでモジュールファイルの転送は完了です。

続きはXOOPS Cubeの管理画面で行います。

モジュールのインストール

初期インストールが完了したXOOPS Cubeのサイトにアクセスしてログインします。

mo_inst_01.png

ログイン後のページ

右側のメニュー項目から「管理者メニュー」をクリックします。

mo_inst_02.png

管理者メニューページ

左側メニューの「互換身ジュール」のサブメニューから「モジュールのインストール」の項目をクリックします。

ページの右側が変更され、モジュールのインストールページになります。

mo_inst_03.png

モジュールのインストールページ

このページでは、サーバーに転送されているが、XOOPS Cubeシステムにインストールされていないモジュールが一覧で表示されます。

サーバーから削除されるとモジュールの表示は消えます。

XOOPS Cubeシステムにインストールされた場合もこのリストから消えます。

XOOPS Cubeシステムへの新規モジュールを追加する場合は必ずこのページからンストールします。

ここではsystemモジュールをインストールしながらその手順を学習します。

システム管理モジュールの操作の項目にある「インストールアイコン」をクリックします。

mo_inst_04.png

モジュールインストールの確認ページになります。

ページ上の「インストール」ボタンをクリックします。

mo_inst_05.png

インストールの確認ページ

モジュールインストールログが表示され、モジュールインストール終了ページになります。

mo_inst_06.png

モジュールインストール終了ページ

インストールに問題がなければ正常に作業が終わります。

ここでエラー表示された場合には、エラーの項目に対処してインストールし直すか、そのモジュールの利用をあきらめた方がいいでしょう。

ここで、インストールされていることを確認するために左側メニューの「互換身ジュール」のサブメニューから「モジュールの管理」の項目をクリックします。(モジュールインストール終了ページの下部のリンクをクリックしても同様のページへ移動します。)

mo_inst_07.png

モジュールの管理ページ

モジュールの管理ページ内のモジュール一覧に「システム管理」モジュールがインストールされているのを確認します。

これでsystemモジュールのインストールは完了です。

同様の手順でaltsysモジュールをインストールします。(altsysの表示名はALTSYSとなっています。)

mo_inst_08.png

altsysインストール後のモジュールの管理ページ

残りの各モジュールは順不同でインストールできるので、それぞれ同様の手順でインストールします。

一通りインストールが完了したらモジュール管理ページを表示します。

mo_inst_09.png

全モジュールインストール後のモジュールの管理ページ

準備したモジュールがすべてインストールできたことを確認します。

実際に運用するには各モジュールでそれぞれ個別の設定が必要になりますが、それは次章で解説します。

モジュールのアンインストール

XOOPS Cubeのシステムからモジュールを削除する場合は適正な手順を踏んで削除しなければなりません。

手順としては以下の通りです。

1.使用中のモジュール(アクティブ状態)を未使用の状態(非アクティブ状態)にする。

※この段階ではインストール時に作成され、運用時に使われていたデータベースのデータはそのまま存在しています。再び使用中にすることでデータは残っている状態で復帰できます。

2. XOOPS Cubeのシステムからアンインストールする

※この段階で今まで使用されていたデータベースのテーブルが破棄され、データがすべて消えます。

3.サーバーから該当するモジュールファイルを削除します。

tellafriendモジュールを例にとってアンインストールしてみます。

モジュールの管理ページで該当するTELL A FRIENDモジュールの「アクティブ」項目のチェックを外します。

mo_inst_10.png

同じページ内の下部にある「アップデート」ボタンをクリックします。

mo_inst_11.png

モジュールアップデートの確認ページが表示されるので、アップデートする内容を確認して「アップデート」ボタンをクリックします。

mo_inst_12.png

モジュールの管理ページに戻ります。

この時にTELL A FRIENDモジュールの「操作」項目の「アイコンボタン」が他のモジュールと違うことに注意してください。

非アクティブなモジュールはアンインストールが可能になり、アンインストール用の「アイコンボタン」が表示されます。(3つの画像の中央がアンインストール用「アイコンボタン」)

この「アイコンボタン」をクリックしてモジュールをアンインストールします。

mo_inst_13.png

モジュールアンインストールの確認ページになるので、アンインストールするモジュールを確認して「アンインストール」ボタンをクリックします。

mo_inst_14.png

モジュールアンインストールログのページが表示されモジュールがアンインストールされます。

mo_inst_15.png

モジュールのインストールページを表示すると、アンインストールされたモジュールが表示されます。

mo_inst_16.png

XOOPS Cubeではこのように簡単にモジュールのインストールやアンインストールを管理することができます。

次章以降のために再びtellafriendモジュールをインストールして元に戻しておきます。