
簡単CPMSは、ファイル内テキストの決められた部分を更新するツールです。CPMSは、HTMLなどのファイル内に記述された制御文字列(コメント行など)にてページ内の部分(パーツ)更新を行います。これにより、HTMLを知らない人が、定期的にニュースを更新するなどの作業が容易になります。
以下 イメージ図
|
|
|
動作確認済み環境(Windows, Linux)
apache 2.2
PHP 5.2 (mbstring拡張モジュールは必要)
php 4.3 以上なら可
CMSは、環境ファイルとプログラムに別れています。環境ファイルは、htdocs配下以外にも設置可能です。
権限設定、環境ファイルは、設置(インストール)者以外は、存在を知らなくてもよく、インストール後、権限を与えられたユーザーは決められたファイルのパーツ更新をするだけの運用となります。
(設置者をスーパバイザー、サイト管理者である担当者はCMSのユーザー)
本プログラムは、簡単に設置できるようにデータベースは使用していません。
![]() |
|
環境ファイル(後記)、および、スーパバイザーのユーザアカウント設定により、スーパバイザー、または、各ユーザーは、CMS管理ツールにログインできます。
ログイン時のID/Passにより、スーパバイザー または 一般ユーザーなのかを判断し、各権限のもと作業を行います。
CMS設置後、スーパバイザーにてログインし、CPMSアカウント管理にて、CMSユーザーを登録します。ユーザーとは、決められたページ内の決められたテキスト部分を更新する担当者で、複数のユーサーを登録できます。
新規、更新にて、名前、ID/パスワード、備考を登録、または更新してください。
![]() |
|
更新(既存アカウントのパスワード、表示名の修正)

新規(新規アカウント、パスワード、表示名の登録)

ユーザー登録後、各ユーザーが担当する更新ページの登録、設定を行います。更新ページ、および、更新部分は複数設定できます。定期的に部分的に更新する、ニュースやコラムなどを、各ユーザーを指定して設定しておきます。

新規、更新にて、担当ページの更新部分と、その担当ユーザーを設定します。最初に、ユーザーのアカウントを選択し、タイトルの設定、テキスト更新範囲を制御する“開始“テキストと”終了“テキストを設定します。Htmlなどの場合は、コメント行として設定します。

また、その他設定項目を設定します。
◎同一ファイル内の複数の更新箇所があるかどうかの関連付け
◎入力時にタグのチェックを行うかどうか?
◎コメントなどの内容
次に、更新するファイル名を選択します。
環境ファイルに設定されたファイルパスの内容がリスト表示されるので、そこからファイルを選択すると、ファイル名の項目に設定されます。

さらに、選択されたファイルを更新する部分の指定を行います。
ファイル名をクリックすると、そのファイルのテキストエディター画面が表示されます。
この時、前の画面で、設定した更新部分の開始/終了制御文字列も引き継がれるので、コピー&ペーストにて、修正部分の始まりと終わりに挿入してください。

更新ボタンにて、スーパバイザーの一連の操作は終わりです。
以上で、各ユーザーが定期的に更新するテキストエディタの使用が有効になりました。
ユーザー権限でログインすると、決められたファイルの部分更新可能リストが表示されます。

編集操作により、簡単に部分テキストを更新することが出来ます。

cpms/ → ドキュメントルート
|-- conf/ → 設定関連ファイル
| `-- libs/ → ライブラリファイル
| |-- controller/ → コントローラスーパクラス
| |-- model/ → モデルスーパクラスファイル
| `-- view/ → ビュースーパクラスファイル
|-- controllers/ → コントローラクラスファイル
|-- cpms_data/ → 環境(データ)ファイル
| |-- account/ → ユーザデータ
| `-- parts/ → コンテンツパーツデータ
|-- models/ → モデルクラス
|-- templates/ → テンプレートファイル
`-- views/ → ビュークラス
上記のうち、conf/とcpms_data/ディレクトリは、ドキュメントルート外に設置可能。(特定ファイルを変更する必要あり。)
1. cpms/ディレクトリをドキュメントルート以下に配置。
2. conf/ディレクトリにあるdefine.incファイルを編集。
* いろんな場所に出てくる"DS"は変更しないこと。
* Linux環境では"/"、windows環境では"\"に自動的に変換される。
(編集必須箇所) -- 環境に合わせて変更して下さい。
20行目 HTTP_SV → 末尾に"/"はつけない
21行目 HTTPS_SV → 末尾に"/"はつけない (現在は未使用)
22行目 DOMEIN
23行目 SERVER_ROOT
30行目 DOCUMENT_ROOT
→ SERVER_ROOT直下のhtml/なら変更の必要なし。
34行目 CPMS_URL
→ DOCUMENT_ROOTからの相対パス
DOCUMENT_ROOT直下にcpms/設置の場合は変更の必要なし。
38行目 CPMS
→ DOCUMENT_ROOT直下cpms/の場合は変更の必要なし。
75行目 SUPERVISOR_ID
→ スーパバイザのID
76行目 SUPERVISOR_PASS
→ スーパバイザのパスワード
85行目 $SCAN_TOPDIR
→ 編集ファイルがDOCUMENT_ROOT以下配置の場合は変更の必要なし。
92行目 FILE_ENC
→ 編集するファイルの文字エンコーディング。(統一されていない場合は、保障しません。)
1. 簡単コピー形式の1.と2.を実行。
2. cpms/ディレクトリにあるindex.phpを編集。
12行目 conf/config.inc へのパスを修正
3. conf/ディレクトリにあるdefine.incファイルを編集。(comf/ディレクトリを移動した場合)
58行目 CONF(cpms_data/ディレクトリを移動した場合)
69行目 CPMS_DATAv
注: 定義された定数を使って記述してありますが、絶対パスを記述しても問題ありません。
- 各設定項目についての説明と、編集例を提示します。
16行目 DS
ディレクトリセパレータ。変更しないで下さい。
Linux環境では"/"、windows環境では"\"に自動変換されます。
20行目 HTTP_SV
サーバのHTTPアドレス
(例) http://www.hoge.jp/ の場合
define('HTTP_SV', 'http://www.hoge.jp');
21行目 HTTPS_SV
サーバのHTTPSアドレス
(例) https://www.hoge.jp/ の場合
define('HTTP_SV', 'https://www.hoge.jp');
22行目 DOMEIN
サーバのドメイン
(例) http://www.hoge.jp/ の場合
define('DOMEIN', 'www.hoge.jp');
23行目 SERVER_ROOT
サーバルート
(例) サーバルートが /var/vhost/hoge/ の場合
define('SERVER_ROOT', '/var/vhost/hoge/');
30行目 DOCUMENT_ROOT
ドキュメントルート
(例) ドキュメントルートが /var/vhost/hoge/html/ の場合
define('DOCUMENT_ROOT', '/var/vhost/hoge/html/');
OR define('DOCUMENT_ROOT', SERVER_ROOT.'html/');
34行目 CPMS_URL
CPMSへのアドレス。ドキュメントルートからの相対パス
(例1) cpms/ を /var/vhost/hoge/html/ 直下に設置した場合
define('CPMS_URL', '/cpms/');
(例) cpms/ を /var/vhost/hoge/html/dir1/ 直下設置した場合
define('CPMS_URL', '/dir1/cpms/');
38行目 CPMS
CPMSディレクトリのパス
(例1) cpms/ を /var/vhost/hoge/html/ 直下に設置した場合
define('CPMS', '/var/vhost/hoge/html/cpms/');
OR define('CPMS', DOCUMENT_ROOT.'cpms/');
(例) cpms/ を /var/vhost/hoge/html/dir1/ 直下設置した場合
define('CPMS', '/var/vhost/hoge/html/dir1/cpms/');
OR define('CPMS', DOCUMENT_ROOT.'dir1/cpms/');
42行目 CONTROLLERS コントローラオブジェクトのパス
46行目 MODELS モデルオブジェクトのパス
50行目 VIEWSS ビューオブジェクトのパス
54行目 TEMPLATES テンプレートのパス
上記4つは変更しないで下さい。
58行目 CONF
設定関連ファイルの格納ディレクトリパス
(例1) conf/ を /var/vhost/hoge/html/cpms/ 直下設置の場合
define('CONF', '/var/vhost/hoge/html/cpms/conf/');
OR define('CONF', CPMS.'conf/');
(例2) conf/ を /var/vhost/hoge/ 直下に設置した場合
define('CONF', '/var/vhost/hoge/conf/');
OR define('CONF', SERVER_ROOT.'conf/');
62行目 LIBS ライブラリのパス
63行目 LIBS_C コントローラライブラリのパス
64行目 LIBS_M モデルライブラリのパス
65行目 LIBS_V ビューライブラリのパス
上記4つは変更しないで下さい。
69行目 CPMS_DATA
環境ファイルの格納ディレクトリパス
(例1)cpms_data/を/var/vhost/hoge/html/cpms/直下設置の場合
define('CPMS_DATA', '/var/vhost/hoge/html/cpms/cpms_data/');
OR define('CPMS_DATA', CPMS.'cpms_data/');
(例2) cpms_data/ を /var/vhost/hoge/ 直下に設置した場合
define('CPMS_DATA', '/var/vhost/hoge/cpms_data/');
OR define('CPMS_DATA', SERVER_ROOT.'cpms_data/');
70行目 ACCOUNT_DATA アカウント管理ファイルのパス(名称)
71行目 PARTS_DATA コンテンツパーツ管理ファイルのパス(名称)
上記2つは特に変更する必要はありません。
但し,'account.dat'または'parts.dat'の部分を変更すると、それぞれの環境ファイル名を変更することは可能です。(ファイル名を変更しても、プログラムは動作します。)
75行目 SUPERVISOR_ID
スーパバイザのID
(例1) IDを 'administrator' に設定したい場合
define('SUPERVISOR_ID', 'administrator');
76行目 SUPERVISOR_PASS
スーパバイザのパスワード
(例1) IDを 'QwertYuiop' に設定したい場合
define('SUPERVISOR_PASS', md5('QwertYuiop'));
80行目 MAPS_MAX
コンテンツ管理で関連付け項目のプルダウンに表示される最大値
(例1) プルダウンで'5'まで表示したい場合
define('MAPS_MAX', 5);
85行目 $SCAN_TOPDIR
コンテンツ管理でファイルパス項目のプルダウンに表示される値を作成するTOPレベルのデイレクトリパス。
(例1) 編集対象ファイルがドキュメントルートのみに存在する場合
$SCAN_TOPDIR = array(
/var/vhost/hoge/html/,
);
OR $SCAN_TOPDIR = array(
DOCUMENT_ROOT,
);
(例2) 編集対象ファイルが /var/vhost/hoge/html/css/ 以下と/var/vhost/hoge/template/ 以下に複数存在する場合
$SCAN_TOPDIR = array(
'/var/vhost/hoge/html/css/',
'/var/vhost/hoge/template/',
);
OR $SCAN_TOPDIR = array(
DOCUMENT_ROOT.'css/',
SERVER_ROOT.'template/',
);
85行目 FILE_ENC
編集対象ファイルの文字エンコーディング
(例1) 編集対象ファイルがShift_JISで保存されている場合
define('FILE_ENC', 'SJIS');
(例2) 編集対象ファイルがUTF-8で保存されている場合
define('FILE_ENC', 'UTF-8');
(例3) 編集対象ファイルがEUCで保存されている場合
define('FILE_ENC', 'EUC-JP');
以下の使用許諾に同意された方は、無償で簡単コンテンツパーツ管理プログラム・プログラムソースをダウンロード出来ます。
設置サービスなどのサポートは、2万円にて請け賜ります。
また、改編などは実費にて行わせていただきますので、御問い合わせください。
ソフトウェア名称:簡単コンテンツパーツ管理プログラム・プログラムソース
著作権者:株式会社デジタルカフェ
簡単CPMSプログラム・プログラムソースセット(以下「本プログラムセット」という。)をご使用になる前に、この使用許諾書をよくお読みください。株式会社デジタルカフェ(以下「当社」という。)のWebサイトから本プログラムセットをダウンロードにより取得した場合、本使用許諾書が添付された本プログラムセットもしくは契約者作成物(第1条で定義)を取得し使用を開始した場合、または使用を開始しなくとも14日間を超えてこれを保有した場合は本使用許諾書に同意して当社との間で契約が成立したものとさせていただきます。本使用許諾書に同意されない場合は、本プログラムセットの使用を開始することはできません。
第1条 定義
1.「契約者」とは、日本国に居住し、かつ本契約の内容を理解しこれに同意した個人または日本国に登記され本契約に同意した法人等をいいます。
2.「本プログラムセット」とは、以下のものをいいます。当社Webサイトからダウンロードされるか、または当社が別途承認した方法により提供された、当社が著作権およびその他の知的財産権を有する「簡単コンテンツパーツ管理」の本プログラムセットと添付ファイル一式。
3.「契約者作成物」とは、契約者が本プログラムセットの全部または一部を活用して、独自に創作した独自の機能を有するプログラムまたは当該プログラムの本プログラムセットおよびその添付ファイル一式のことをいいます。
第2条 ライセンス
当社は、契約者が「契約者作成物」の作成を行う目的により、本プログラムセットを複製ならびに改変することができる非独占的なライセンスを、無償にて契約者に対して許諾します。
第3条 権利の帰属
本プログラムセットの著作権およびその他一切の知的財産権は当社に独占的に帰属します。
第4条 再配布
1.契約者は契約者作成物を、契約者の裁量において無償または有償で公開・配布することができます。契約者は契約者作成物を有償で公開・配布を行なう場合、当社が別途定める方法により事前に契約者氏名等の情報を当社に登録する義務を負います。これを怠った場合契約者は公開・配布の中止の要求に応じる義務を負います。
2.契約者は、契約者作成物の公開・配布の際に、契約者作成物中の本プログラムセット中に本プログラムセット中の著作権表示部分を残す義務を負い、この著作権表示部分を修正することは、改変内容、改変者氏名、改変日時などの改変記録を追加する場合を除き禁止します。
3.契約者は、契約者作成物の公開・配布の際に、本使用許諾書を添付する義務を負います。 契約者はその上で契約者作成物の使用者に対し、本契約に基づき契約者が負うのと同一の義務を、当該使用者にも遵守させる義務を負うものとします。
4.契約者は契約者作成物を公開・配布する際に契約者作成物のソフトウェア名・バージョン名・著作者氏名などの表示、および当該契約者作成物が当社により公開された本プログラムセットを使用して作成されたものである事をプログラム実行時の表示の先頭部等の箇所に適切かつ目立つように掲載する義務を負います。
5.契約者は契約者作成物を公開・配布する際に前項の義務とは別に、改変内容や改変履歴が特定できる説明を添付して公表する義務を負います。
6.当社は、上記(1)により契約者が公開・配布した契約者作成物を契約者に対する対価の支払いなく当社に限り使用することができるものとします。この場合、契約者が契約者作成物に関して設定する使用条件については当社の使用に限りに適用されないものとします。なお、契約者が契約者作成物の著作権を第三者に譲渡する場合は、契約者は本項に基づく契約者の権利義務を当該第三者に承継させる義務を負うものとします。
第5条 禁止事項
契約者は、以下の行為を行わないものとし、当社が違反であると認めた場合、当社は契約者による本プログラムセットの使用を中止させる権限および金一千万円の賠償金の支払いを求める権限を有し、契約者はこれに応じる義務を負います。
1.本使用許諾書以外の本プログラムセットの一部または全部を再配布すること。
2.本プログラムセットを第三者に対してサブライセンシングすること。
3.改変を伴わない本プログラムセットを使用したサービスを提供すること。
4.改変を伴わない本プログラムセットのコンパイルによって作成されたバイナリコードを再配布すること。
5.本使用許諾書を添付しその内容に同意させずに契約者作成物を公開・配布すること。
6.反社会的な目的・機能を有する契約者作成物の公開・配布を行なうこと。
7.本プログラムセットに記載されている著作権表示内容の削除を行なうこと。
8.契約者作成物を日本国外へ公開・配布すること。
9.本プログラムセットダウンロードの際に当社Webサイトまたは当社が別途承認したWebサイトの求める入力事項に関して虚偽情報の入力を行なうこと。
10.当社の別途定める方法により当社への事前の登録を行なうことなく有償での契約者作成物の公開・配布を行なうこと。
第6条 免責
1.当社は、本プログラムセットを現状のまま提供するものとし、本プログラムセットの品質、機能ならびに仕様について一切保証しないものとします。
2.契約者は自らの責任と負担において本プログラムセットを使用するものとし、当社は、本プログラムセットおよび契約者作成物に起因するいかなる損失・損害についても一切責任を負わないものとします。
3.当社は、本プログラムセットおよび契約者作成物に関するコンサルティングならびに技術サポートを、契約者ならびに契約者作成物使用者に提供する義務を負わないものとします。
第7条 契約解除
1.契約者が本契約のいずれかに違反した場合は、当社は催告をする事なく直ちに本契約を解除することができます。
2.本契約が解除され当社より通告があった場合は、本プログラムセットおよび契約者作成物の公開・配布、使用を直ちに中止し、全ての本プログラムセットを当社に返還、もしくは抹消、破壊するものとします。
3.第4条第6項は、本契約終了後も有効とします。
第8条 本契約の変更
1.当社は、本使用許諾書の内容について、契約者の事前の同意なく改訂を行うことができるものとします。
2.当社は、契約者に対して、当社の定める方法にて、改訂された契約内容を掲示または通知を行うものとします。
第9条 管轄裁判所
1.本契約は、日本国法に準拠するものとします。
2.契約者および当社は、本契約に関連して発生した紛争の解決については、東京地方裁判所を第一審の専属的管轄裁判所とすることに合意します。