オリジナル CMS サンプル

/contents/cms/property/message.txtの内容

h3:プロパティとは?
プロパティとはあるもの状態や属性、と考えてください。

この状態や属性の設定次第でそのあるものの振る舞いが変わります。

・・・と言ってもこれだけでは意味不明ですよね。

例を紹介します。

あとでもう一度出てきますが、「ヘッダ部分を固定するかどうか?」というプロパティの設定項目があります。
(ヘッダとは画面上部のタイトル部分のこと)

これに「1」という値を設定するとヘッダ部分が固定され、下スクロールしてもそのままの位置に表示され続けます。逆に「1」以外の値を設定すると固定されません。

・・・という設定をするのがプロパティです。

次に実際の設定方法をご説明しましょう。
/h3:
h3:プロパティの設定方法
先ほどのヘッダ固定の例でご説明しますね。

ではまず、管理者ページ(←新規タブで開きます)へアクセスしてください。

そして、プロパティにアクセスします。
img:admintop.png,70
↑赤枠内をクリックしましょう。

プロパティの一覧が表示されます。
img:property_list.png,70
上から6つ目に「ヘッダ部分を固定するかどうか」という行があります。これの「更新」をクリックしましょう。

設定画面に移動します。
img:property_header.png,70
値(赤枠の中)に「1」を設定してください。
(もしも既に「1」が設定されていたらもうヘッダは固定になっています。)

そして、送信ボタンを押しましょう。
img:property_send.png

ヘッダを確認してみてください。
img:header_fixed.png
↑このようにスクロールの途中でもヘッダが画面内に居続けます。
「1」以外のケースも設定してみてください。

h4:注意!プロパティ値はユーザみんなで共有してる
プロパティ値はこのページに訪れるユーザみんなで共通の設定です。

ですので、あなたが今ここで動作確認をしていても、更新の直後に他のユーザが違う値で更新すると「あれ?思ったように動かない・・・」ということが起きるかもしれません。

ただし、実際の運用ではユーザにアクセスさせない設定の為、あり得ません。ここはサンプルサイトで試しにどんなものか見てもらうために誰からもアクセス可能になっています。
/h4:

では、次からは予めご用意しているプロパティを紹介します。

これは学習を通してあなたにも実装してもらう内容です。あとで説明しますが、プロパティは言ってしまえばオプションですので、実装しないのもアリです。
/h3:
h3:各テーブルの一覧表示項目
管理者ページでは各テーブルのレコードを登録/更新/削除することができます。

その際、最初に一覧画面に遷移しますが、そこに表示する項目を制御するのがこのプロパティです。

各テーブルですので、カテゴリ、コンテンツ、プロパティ、コメント、関連記事の5つについてそれぞれ用意しています。

カテゴリなら↓このような感じです。
img:category_head_items.png
設定内容は対象テーブルのもつ項目名を物理名で指定します。
(物理名/論理名は学習の際に説明します。)

この設定値で何が変わるかというと・・・
img:category_list.png
これの赤枠部分ですね。設定値の画面で、「category_id,name,url」と指定しています。

これにより、ID、名前、URLを表示しています。

このプロパティをご用意したのは2つの理由があります。

ひとつは管理者の好みや運用の趣旨によって表示したい項目が変わるのでは?という点。

もうひとつは、今後項目数が増えた場合、幅的にすべてを表示させるわけにはいかない、という拡張性を考慮した点です。

カテゴリを例に説明しましたが、各テーブルについて設定ができます。
/h3:
h3:新着記事に[new]をつける期間
トップページの新着記事一覧には今日から公開日が近い場合は「new」というマークをつけることができます。
img:new_mark.png
↑このような感じですね。この「new」マークをいつまでつけるかを設定するプロパティです。

プロパティ一覧から↓これにアクセスしてください。
img:property_new_mark.png

値は数字で指定します。
よければ実際に動作確認してみてください。
/h3:
h3:コメント送信時にメールを送るかどうか
このページの下部にもありますが、ユーザは記事に対してコメントを投稿できます。

コメントが投稿されたとき、管理者はどのようにそれを感知するか、重要ですよね。

サイドメニューにコメント一覧を用意しているので、そこを毎日チェックするという手もありますが、運用が板についてきたり忙しかったりするとサイトを開かない日も出てきます。

そこで登場するのがメール通知機能です。それを使うかどうかをこのプロパティで設定します。
img:property_ismailsend.png
↑これですね。

どのプロパティもどんな設定か?何を設定するか?は詳細表示したときの説明欄に書いてあるので、これ以降のプロパティでもそこをご覧ください。
img:property_description.png
そしてその分、説明を割愛していきます。(記事が冗長になるので。。)
/h3:
h3:メール送信の宛先
先ほどメールを送るかどうか、のプロパティを紹介しました。この設定があるということはメールをどこに送信するか?の設定も必要になります。

↓このプロパティです。
img:property_mailaddress.png

メールの送信は開発環境であるxamppの中ではうまく動きません。たしか。

ですので、もし学習される場合はサーバにあげてからの動作確認となります。
/h3:
h3:ヘッダ部分を固定するかどうか
ヘッダ固定の県は先ほど説明した通りです。というわけで割愛!
/h3:
h3:サイドの最新記事のアイキャッチサイズ
サイドメニューに最新記事が並んでいますが、こちらの表示方法を切り替えることができます。

↓こちらのプロパティです。
img:property_side_contents_size.png
設定によって、以下の左か右のどちらかの表示形式にできます。
img:side_contens_compare.png,80
/h3:

h3:どうして「プロパティ」というものを用意したか
最後に、どうしてプロパティというものをご用意したかをご説明します。

というのも、ここまで紹介したものはすべてブラウザからの設定をせずともプログラムで決め打ちしておけば済むものばかりです。

それどころかこのような設定を設けることで作業工数がかかり、動作確認する内容も増えてしまいます。

それでもご用意した理由は、自作CMSは自身の力でカスタマイズできること、柔軟な拡張を可能とした作りにすることで運用はもちろん開発作業そのものがより楽しくなることをあなたに伝えたかったからです。
/h3:
h3:おわりに
プロパティの紹介でした。

興味を持たれた方は実際に学習に着手していただけると嬉しいです。

ありがとうございました。
/h3: