PowerCMS™
[ブログ] PowerCMS 6 でのアップデートまとめ を追加しました。
[新着情報] 多要素認証設定画面の QR コードが表示されない問題への対策ファイル を追加しました。
[新着情報] PowerCMSクラウド 月額費用の価格改定に関する追加情報を公開します を追加しました。
[よくあるご質問] サポートサイトへ登録しているアカウントの情報を変更することはできますか? を追加しました。

PowerCMS ブログ

ホーム > PowerCMS ブログ > プラグイン > コメントを評価する機能を追加する LikeComment プラグイン

2015年09月30日

コメントを評価する機能を追加する LikeComment プラグイン

PowerCMS ではユーザーのログインが必要な会員制サイトを簡単に構築できます。コミュニティ機能的な盛り上がりのために、コメント機能を利用するサイトの構築要件のために「コメントを評価する」プラグインを作成しました(記事を評価する機能はコミュニティ機能にありますが、コメントを評価する機能が Movable Typeにはありません)。

MTのコメント機能ですが、コミュニティサイト系の案件で活用するケースも再び増えて来ている気がします。

mt-comments.cgiに methods(__mode=like)を追加する実装とし、jsonで戻り値を戻すようにしています(Data APIのエンドポイントを追加したほうがきれいだったかな、と後で思いましたが...)。ダイナミックで数を表示するテンプレートタグをあわせて作成しました。

データベースに一つテーブルを追加するので、インストール時にはDBのバックアップをお願いします。

リクエスト

mt-comments.cgi?__mode=like&_type=add_like&comment_id=1&blog_id=1

すべてのリクエストはログインしている必要があります。

_type パラメタの値

_type値意味
add_like評価する
take_like評価を取り消す
add_not_like評価しない
take_not_like評価しないを取り消す
get_likes評価する、しない数を得る

テンプレートタグ

テンプレートタグ動作
<MT:IfAuthorLikeThisComment>ログインユーザがコメントを評価している
<MT:IfAuthorNotLikeThisComment>ログインユーザがコメントを評価している
<MT:CommentLikeCount>評価するの数
<MT:CommentNotLikeCount>評価しないの数
<MT:CommentLikeTotalCount>評価する、評価しないの合計

_type ごとのリクエストと戻り値

評価/評価しない数を得る

リクエスト

http://www.example.com/mt-comments.cgi?__mode=like&blog_id=1&comment_id=1&_type=get_likes

戻り値

{"comment_id":"1","status":"success","likes":{"like":"10","not_like":"5","total":"15"},"message":"Likes of this comment."}

評価する

リクエスト

http://www.example.com/mt-comments.cgi?__mode=like&blog_id=1&comment_id=1&_type=add_like

戻り値

{"comment_id":"1","status":"success","likes":{"like":"11","not_like":"5","total":"16"},"message":"You like this comment."}

評価を取り消す

リクエスト

http://www.example.com/mt-comments.cgi?__mode=like&blog_id=1&comment_id=1&_type=take_like

戻り値(評価していなかったときはこのように返る)

{"comment_id":"1","status":"not changed","likes":{"like":"11","not_like":"5","total":"16"},"message":"You do not have to evaluate this comment."}

評価しない

リクエスト

http://www.example.com/mt-comments.cgi?__mode=like&blog_id=1&comment_id=1&_type=add_not_like

戻り値

{"comment_id":"1","status":"success","likes":{"like":"11","not_like":"6","total":"17"},"message":"You do not like this comment."}

評価しない、を取り消す

リクエスト

http://www.example.com/mt-comments.cgi?__mode=like&blog_id=1&comment_id=1&_type=take_not_like

戻り値

{"comment_id":"1","status":"success","likes":{"like":"11","not_like":"5","total":"16"},"message":"You do not have to evaluate this comment."}

カテゴリー
プラグイン

Recent Entries