エントリー
freoのコメント登録フォームを折りたたむボタン
- 更新
- カテゴリー:エントリー, ページ
- タグ:freoテンプレート
freoエントリーやページのコメント登録フォームが大きいのでなんか邪魔だなと感じていたところ、jQueryで簡単に折りたためる方法を見つけたので実装してみました。
【2017/06/10 修正】ボタンのテキストも切り替えられるようにjsとcssを変更し、全面的に書き直しました。
- js/default.js の上から9行目あたりの
$(document).ready(function() {
の下に、
を追加します。//コメント表示ボタン $('#comment_form_contents').hide(); $('.toggle').click(function(){ $('#comment_form_contents').slideToggle(); $(this).toggleClass('open'); }); /* 確認後[戻る]ボタンを押して戻っても登録フォームが開いた状態 */ var hashVal = location.hash; if (location.hash == '#comment_form') { $('#comment_form_contents').show(); $('.toggle').toggleClass('open'); }
- css/default.css の195行目にある(コメント関連の部分)
div#comment div.comment ul.information li { display: inline; margin-left: 5px; }
の下に、
を追加します。div#comment .toggle { margin-bottom: 15px; } div#comment_form .toggle::before { content:'コメント登録フォームを表示' ; } div#comment_form .toggle.open::before { content:'コメント登録フォームを閉じる' ; } div#comment_form_contents { margin-top: 0px; }
- templates/internals/view/default.html の170行目あたりと templates/internals/page/default.html の160行目あたりにある
<ul>
<li>コメントを入力してください。</li>
<!--{if $entry.comment == 'user'}--><li>コメントは登録ユーザーからのみ受け付けています。</li><!--{/if}-->
</ul>
<form action="{$freo.core.http_file}/view/{if $entry.code}{$entry.code}{else}{$entry.id}{/if}#comment_form" method="post">
~(略)~
</form>
<!--{elseif $entry.comment == 'user' and !$freo.user.id}-->
<ul>
<li>コメントを登録するには<a href="{$freo.core.https_file}/login">ログイン</a>してください。</li>
</ul>
<!--{/if}-->の部分を、
に変更(赤字を追加)します。<button class="toggle">コメント登録フォームを表示</button>
<div id="comment_form_contents">
<ul>
<li>コメントを入力してください。</li>
<!--{if $entry.comment == 'user'}--><li>コメントは登録ユーザーからのみ受け付けています。</li><!--{/if}-->
</ul>
<form action="{$freo.core.http_file}/view/{if $entry.code}{$entry.code}{else}{$entry.id}{/if}#comment_form" method="post">
~(略)~
</form>
<!--{elseif $entry.comment == 'user' and !$freo.user.id}-->
<ul>
<li>コメントを登録するには<a href="{$freo.core.https_file}/login">ログイン</a>してください。</li>
</ul>
<!--{/if}-->
</div>
※buttonをdivにして css で装飾するのもOKです。
※実装してみた感じ ⇒ このサイトのエントリーのコメント表示に導入しています。
※実装したのに表示がうまくできない場合は、templates_c フォルダ内にある .htaccess 以外のphpファイルを全部削除してから更新してみてください。
※コメント登録フォームを隠したからといってスパムが来なくなるわけではありません(よくあるパターンのスパムはHTMLソースをたどってくる)ので下を参考に別途コメント対策をすることをおすすめします。
参考:freoTIPS ~ スパム対策に関するTIPS ~ ― 龍の棲む場所
関連エントリー
- 2023/09/05 freoのプロフィールやコメントでGravatarのアバターを表示する方法
- 2018/05/12 freoのエントリーのタグ投稿を楽にする方法
- 2018/03/16 freoのエントリーとページの編集画面で添付ファイルとイメージの画像を表示する方法
- 2018/03/16 freoのエントリーとページの編集画面でオプションの画像を表示する方法
- 2018/02/09 freoのエントリーとページの管理画面に閲覧制限情報を表示する
- 2017/06/10 freoをスマートフォンから見た時にリストのリンクなどをボタン化する
- 2017/05/23 freoの管理用テンプレートをBootstrap3でカスタマイズ
- 2015/04/05 freoで各記事に設定したフィルター名を表示する
- 2014/08/03 freoの注文管理プラグイン画面で投稿者ユーザーの権限を制限する
- 2014/04/27 freoのインフォメーションのページにサイドバーを表示させる
コメント
- コメントはまだありません。
コメント登録
- コメントを入力してください。
- 一旦登録したコメントは、あとで編集できませんのでご注意下さい。