Комментарии к страницам

К каждой странице можно добавить комментарий или разрешить их добавление посетителям

Комментарий или отзыв может быть полезен, как отзыв клиентов или покупателей, комментарий или замечание посетителя. Можно использовать комментарии для обсуждений публикации, как обычно это сделано на форумах.

Добавление комментария из панели администратора

Для добавления комментария можно перейти на страницу добавления и указать там тип страницы и ее ID. Проще это сделать, если воспользоваться ссылкой "Добавить комментарий" на странице, публикации или предложении, куда нужно добавить комментарий. В этом случае тип страницы и ID будут проставлены автоматически.

По умолчанию все комментарии добавляются со статусом Требуется модерация - такие комментарии на сайте не показываются, пока администратор не разрешит их показ в панели администратора.

Вывод комментариев на странице

$page.list_comments|@count - Количество комментариев к странице

$page.list_comments - Массив с комментариями, содержащий элементы:

  • $v.pic.url - картинка, если привязана
  • $v.date - дата
  • $v.title - заголовок или автор
  • $v.message - текст

?where=comments - ссылка на Все комментарии для этой страницы

Вывод обычно настроен в большинстве шаблонов. Если это не так, то воспользуйтесь нехитрым примером кода ниже для добавления нужного кода в шаблон. 

Вы можете настроить показ комментариев в соответствие с вашими требованиями, используя приведенные примеры конструкций.

{* COMMENTS START *}    
{if !empty($page.list_comments) AND empty($uri.params.page)}
       <span class="commentsNumber"><span class="number">{$page.list_comments|@count}</span>  
<span class="text">{lang word="comment" qty=$page.list_comments|@count} 
{if empty($simpla.GET.where) AND $page.list_comments|@count > 4} | 
<a href="?where=comments">Все комментарии</a>{/if}
</span></span>
       <hr>        

        <section class="commentList">
           <ul class="commentList list-unstyled">

                {foreach from=$page.list_comments key="k" value="v"}
  {if !empty($simpla.GET.where) OR $k < 5}
                   <a name="comm{$k}"></a>
                           <li>
                               <div class="oneComment">
                                   <div class="media">
                                       <a class="pull-left" href="#comm{$k}">
                                           <img class="media-object" src="{if empty($v.pic.url)}{$tpl}assets/images/content/agent3.jpg{else}{$v.pic.url}{/if}" alt="">                                
                                        </a>

                                        <div class="media-body">
                                           <div class="inner-body">
                                               <h3 class="media-heading">{$v.title}
                                                   <small class="date">{$v.date|date:"d.m"}</small>
                                               </h3>

                                                <p style="text-align: justify;">{$v.message}</p>
                                               {*<a href="#comm{$k}" class="btn btn-brick reply-button">#</a>*}
                                           </div>
                                       </div>
                                   </div>
                               </div>
                               <!-- / oneComment -->                                

                                {if !empty($v.sub_message)}
                               <ol class="children">
                                   <li>
                                       <div class="oneComment">
                                           <div class="media ">
                                               <a class="pull-left" href="#comm{$k}">
                                                   <img class="media-object" src="{$tpl}assets/images/content/agent7.jpg" alt=" ">
                                               </a>

                                                <div class="media-body">
                                                   <div class="inner-body">
                                                       <h3 class="media-heading">{$v.sub_name}
                                                           <small class="date">{$v.sub_date} {$v.sub_time}</small>
                                                       </h3>             

                                                        <p style="text-align: justify;">{$v.sub_message}</p>
                                                       {*<a href="#comm{$k}" class="btn btn-brick reply-button">#</a>*}
                                                   </div>
                                               </div>
                                           </div>
                                       </div>
                                       <!-- / oneComment -->
                                   </li>
                               </ol>
                               {/if}                                

                            </li>
    {/if}
               {/foreach}
           </ul>
       </section>                                
{/if}

Форма добавления комментария

Вставить форму добавления комментария на странице можно добавив веб-форму содержащуюю такие данные:

  • <input type="hidden" name="fb[when]" value="{ $site.formkey }">
    Обязательное поле
     
  • <input type="hidden" name="fb[type]" value="comment">
    Обязательное поле
     
  • <input type="hidden" name="fb[record_type]" value="product">
    Обязательное поле
     
  • <input type="hidden" name="fb[record_id]" value="{$page.id}">
    Обязательное поле
     
  • <input type="hidden" name="fb[redirect]" value="http://ru.simpla.es/?done=12345">
    Не обязательное поле. Если не указать, то возвратная страница будет вида - ваша_страница/?sent=1
  • <input required="" type="text" name="fb[name]">
    Обязательное поле, если пользователь не авторизован
     
  • <input required="" type="email" name="fb[email]">
    Обязательное поле, если пользователь не авторизован
     
  • <textarea rows="4" name="fb[message]" required=""></textarea>
    Обязательное поле с текстом комментария

Приведем пример формы добавления комментария

{if empty($simpla.GET.sent)}
                   <form role="form" action="" method="post">
                       <input type="hidden" name="fb[when]" value="{ $site.formkey }">
                       <input type="hidden" name="fb[from_page]" value="{$uri.site}{$uri.path}">
                       <input type="hidden" name="fb[type]" value="comment">
                        <input type="hidden" name="fb[record_type]" value="product">
                       <input type="hidden" name="fb[record_id]" value="{$page.id}">
                       <input type="hidden" name="fb[redirect]" value="http://ssever.work/?done=12345">

                       <div class="form-group">
                                   <input required="" type="text" name="fb[name]">
                       </div>

                       <div class="form-group">
                                   <input required="" type="email" name="fb[email]">
                      </div>

                       <div class="form-group">
                                   <textarea rows="4" name="fb[message]" required=""></textarea>
                      </div>

                       <button type="submit">Отправить</button>
                  </form>

{else}

Ваш комментарий успешно отправлен!

{/if}