MODxでCMSの恩恵を賜りつつ、validを保ち、かつWEB標準化を目指そう
[ ハウトゥ ]
Jot でミニ掲示板を作ってみました。ブログパーツとしていかがでしょうか。
※なお、こちらはサンプルです。こちらにご質問頂いても、管理者がお答えすることはありません。ご了承下さい。また内容に問わず、コメント整理のため、コメントを削除する場合があります。重ねてご了承下さい。※
このページの左にあるミニ掲示板はすべてのユーザーに投稿を許可しています。名前とコメントは必須項目です。
またこの掲示板は、別のドキュメントでコールしているJOT「jotによるコメントフォームサンプル」とデータを共有しています。
従って、投稿されたコメントのメンテナンスは、「jotによるコメントフォームサンプル」側で行っています。コメントのメンテナンスは、管理者のみが行える作業としています。
Jot は、スニペットコールをチャンクに書き、そのチャンクをテンプレートに書くよう推奨されていますので、まず、このドキュメントようにテンプレートを作りました。
そして、該当部分には、以下のように書きます。
......
<!-- ### JOT_COMMENT section ### -->
<div class="jot_comment_sec2">
<h2 class="mini-lulu">ミニ伝言板</h2>
<div class="jot_comment_block">
{{jot-minilulu2}}
[+jot.html.comments+]
[+jot.html.navigation+]
</div><!-- jot_comment_block end -->
[+jot.html.form+]
</div><!-- jot_comment_sec2 end -->
......
{{jot-minilulu2}}[+jot.html.comments+][+jot.html.navigation+][+jot.html.form+]jot-minilulu2)[[Jot? &output=`0` &placeholders=`1` &docid=`287`
&tplComments=`jot-minilulu_comment2` &css=`1`
&cssFile=`assets/templates/common/mini-lulu.css` &pagination=`5`
&tplNav=`jot-minilulu_navigation` &validate=`content:コメント書いてーっ,name:お名前書いてーっ`
&tplForm=`jot-minilulu_form2`]]
「docid=`287`」は、「jotによるコメントフォームサンプル」のドキュメントIDです。各パラメータの詳細は「リソース解説:Jot 1.1.2」を参照してください。
Jot は、ドキュメントのキャッシュを可に設定し、「[!~!]」の書式でも書くことができますが、PHx を導入している環境では、「[!~!]」で上記のように書くと、各セクションが出力されません(現在問い合わせ中)。
従って、PHxを導入している環境で、このサンプルを実行する場合は、ドキュメントのキャッシュを不可に設定し、上記のように「[[~]]」の書式でJot をコールしなければなりません。
またvalidate パラメータにおいて、正規表現で入力チェックをかけられますが、これもPHxを導入した環境では、制約がでます(こちらも現在問い合わせ中)。日本語フォーラムにも投稿しましたので、ご参照下さい。
もう一つありました。MODxのバージョンが0.9.5 では、プレイスホルダを使った出力を行うとき、PHxが導入されていないと「フォーム」が正常に動作しないようです。投稿はできますが、エラーチェックに問題が出ます。PHxを導入している場合は、正常に動作します。MODxのバージョンが0.9.6ならば、PHxを導入していなくても問題ありません。
2007.07.16追加
誰でも投稿できる掲示板は敷居が低く、コメントを頂きやすい利点がありますが、スパムを受けやすいデメリットもあります。
サイトの運営方針により、どの程度敷居を高くするか(スパム対策という意味)を検討する必要があるでしょう。
Jot は、CAPCHA による入力チェックが可能です。現時点では、スパム対策には最も有効な方法ではないでしょうか。
しかしながら、このミニ掲示板のようなシステムで、CAPCHAはちょっと大げさすぎる。という場合は、正規表現による入力チェックはどうでしょう?結局はいたちごっこになってしまうかとは思うのですが、ある程度の効果はあるのかなと。
ということで、このミニ掲示板にもつけてみました。「vericode」のところの「vericode」を削除して「をい-をい」と入力してください。
このサイトのフロントページに設置した伝言板は、管理者のみが投稿できるタイプのミニ伝言板です。
コメントの投稿、メンテナンスはやはり、別のドキュメントから行っています。管理者のみが投稿できればよいので、そのドキュメントは非公開にしています。
......
<!-- ### JOT_COMMENT section ### -->
<div class="jot_comment_sec">
<h2 class="mini-lulu">ミニ伝言板</h2>
<div class="jot_comment_block">
{{jot-minilulu}}
[+jot.html.comments+]
[+jot.html.navigation+]
</div>
</div>
......
[+jot.html.form+]がないだけで、あとは、最初のサンプルと同じです。
jot-minilulu)[[Jot? &output=`0` &placeholders=`1` &docid=`326`
&tplComments=`jot-minilulu_comment` &css=`1`
&cssFile=`assets/templates/common/mini-lulu.css` &pagination=`5`
&tplNav=`jot-minilulu_navigation` &tplForm=`jot-minilulu_form`]]
「docid=`328`」が入力・管理用のドキュメントIDです。このドキュメントは非公開にしてあります。そちら側の Jot コールは、単に「[!Jot!]」のみです(誰にも見せないので…^^;)。もちろん、機能や、見栄えを工夫しても良いでしょう。
ミニ伝言板
コメントテスト
すごく いいネ~
てすとだよ
test
テストしてみます。