alexbavar Posted November 15, 2016 Share Posted November 15, 2016 Нужно изменить (добавить) шаблон в блок Pages для данных из плагина "Лента тем" чтобы темы форума выводились не списком, а статьями, как это реализовано в настройках базы данных Pages. Quote Link to comment Share on other sites More sharing options...
Silence Posted November 15, 2016 Share Posted November 15, 2016 Quote Link to comment Share on other sites More sharing options...
rsergio Posted November 15, 2016 Share Posted November 15, 2016 Шаблон для горизонтальной ориентации {{if !empty( $records ) }} <h1 class='ipsType_pageTitle'>{$title}</h1> <hr class='ipsHr'> <section class='ipsType_normal ipsSpacer_both'> {{foreach $records as $record}} <article class='cCmsCategoryFeaturedEntry ipsClear ipsClearfix {{if $record->hidden()}}ipsModerated{{endif}}'> <header class='ipsPhotoPanel ipsPhotoPanel_notPhone ipsPhotoPanel_small ipsSpacer_bottom'> {template="userPhoto" app="core" params="$record->author()" group="global"} <div> <h2 class='ipsType_pageTitle'> {{if $record->prefix()}} {template="prefix" group="global" app="core" params="$record->prefix( TRUE ), $record->prefix()"} {{endif}} {{if $record->isFutureDate() || $record->mapped('pinned') || $record->mapped('featured') || $record->hidden() === -1 || $record->hidden() === 1}} {{if $record->isFutureDate()}} <span class="ipsBadge ipsBadge_icon ipsBadge_warning" data-ipsTooltip title='{$record->futureDateBlurb()}'><i class='fa fa-clock-o'></i></span> {{elseif $record->hidden() === -1}} <span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning" data-ipsTooltip title='{$record->hiddenBlurb()}'><i class='fa fa-eye-slash'></i></span> {{elseif $record->hidden() === 1}} <span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning" data-ipsTooltip title='{lang="pending_approval"}'><i class='fa fa-warning'></i></span> {{endif}} {{if $record->mapped('pinned')}} <span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive" data-ipsTooltip title='{lang="pinned"}'><i class='fa fa-thumb-tack'></i></span> {{endif}} {{if $record->mapped('featured')}} <span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive" data-ipsTooltip title='{lang="featured"}'><i class='fa fa-star'></i></span> {{endif}} {{endif}} <div class='ipsType_break ipsContained'> <a href="{$record->url()}" title="{lang="read_more_about" sprintf="$record->_title"}" class='ipsTruncate ipsTruncate_line'> {{if $record->unread()}} <span class='ipsItemStatus' data-ipsTooltip title="{lang="cms_unread_record"}"><i class="fa fa-circle"></i></span> {{endif}} {$record->_title} </a> </div> </h2> <p class='ipsType_light ipsType_reset'> {lang="cms_byline" htmlsprintf="$record->author()->link(), $record->container()->url(), $record->container()->_title"}{datetime="$record->record_publish_date"} </p> </div> </header> {{if count( $record->customFieldsForDisplay('listing') )}} <div class='ipsDataItem_meta'> {{foreach $record->customFieldsForDisplay('listing') as $fieldId => $fieldValue}} {{if $fieldValue}} {$fieldValue|raw} {{endif}} {{endforeach}} </div> {{endif}} <div {{if $record->record_image}}class='ipsColumns ipsColumns_collapsePhone'{{endif}}> {{if $record->record_image}} <div class='ipsColumn ipsColumn_medium'> <div class="cCmsRecord_image"> <img class="ipsImage" src="{file="$record->_record_image_thumb" extension="cms_Records"}"> </div> </div> <div class='ipsColumn ipsColumn_fluid'> {{endif}} <section class='ipsType_normal ipsType_richText ipsType_break ipsSpacer_bottom' data-ipsTruncate data-ipsTruncate-size='7 lines' data-ipsTruncate-type='remove'> {$record->truncated()|raw} </section> {{if count( $record->tags() )}} {template="tags" group="global" app="core" params="$record->tags()"} {{endif}} <ul class='ipsList_inline ipsClear'> <li><strong><a href='{$record->url()}' title="{lang="read_more_about" sprintf="$record->name"}">{lang="read_more"}</a></strong></li> {{if $record::database()->options['reviews']}} <li>{template="rating" app="core" params="'small', $record->averageReviewRating(), \IPS\Settings::i()->reviews_rating_out_of, $record->memberReviewRating()" group="global"}</li> {{endif}} {{if $record::database()->options['comments']}}<li><a href='{$record->url()}#comments' title='{lang="view_comments"}'><i class='fa fa-comment'></i> {lang="num_comments" pluralize="$record->record_comments"}</a></li>{{endif}} <li class='ipsType_light'>{lang="num_views_with_number" pluralize="$record->record_views"}</li> </ul> {{if $record->record_image}} </div> {{endif}} </div> </article> {{endforeach}} </section> {{endif}} alexbavar 1 Quote Link to comment Share on other sites More sharing options...
rsergio Posted November 15, 2016 Share Posted November 15, 2016 Выше - шаблон для вывода самих баз данных, а если нужно подобное, но для последний тем форума, то такой вариант подойдет: {{if !empty( $topics ) }} <h1 class='ipsType_pageTitle'>{$title}</h1> <hr class='ipsHr'> <section class='ipsType_normal ipsSpacer_both'> {{foreach $topics as $record}} <article class='cCmsCategoryFeaturedEntry ipsClear ipsClearfix {{if $record->hidden()}}ipsModerated{{endif}}'> <header class='ipsPhotoPanel ipsPhotoPanel_notPhone ipsPhotoPanel_small ipsSpacer_bottom'> {template="userPhoto" app="core" params="$record->author()" group="global"} <div> <h2 class='ipsType_pageTitle'> {{if $record->prefix()}} {template="prefix" group="global" app="core" params="$record->prefix( TRUE ), $record->prefix()"} {{endif}} <div class='ipsType_break ipsContained'> <a href="{$record->url()}" title="{lang="read_more_about" sprintf="$record->_title"}" class='ipsTruncate ipsTruncate_line'> {{if $record->unread()}} <span class='ipsItemStatus' data-ipsTooltip title="{lang="cms_unread_record"}"><i class="fa fa-circle"></i></span> {{endif}} {$record->_title} </a> </div> </h2> <p class='ipsType_light ipsType_reset'> {lang="cms_byline" htmlsprintf="$record->author()->link(), $record->container()->url(), $record->container()->_title"}{datetime="$record->mapped('date')"} </p> </div> </header> <div> <section class='ipsType_normal ipsType_richText ipsType_break ipsSpacer_bottom' data-ipsTruncate data-ipsTruncate-size='7 lines' data-ipsTruncate-type='remove'> {$record->truncated()|raw} </section> {{if count( $record->tags() )}} {template="tags" group="global" app="core" params="$record->tags()"} {{endif}} <ul class='ipsList_inline ipsClear'> <li><strong><a href='{$record->url()}' title="{lang="read_more_about" sprintf="$record->name"}">{lang="read_more"}</a></strong></li> </ul> </div> </article> {{endforeach}} </section> {{endif}} По вкусу можно подправить alexbavar and Respected 2 Quote Link to comment Share on other sites More sharing options...
Respected Posted November 15, 2016 Share Posted November 15, 2016 2 минуты назад, rsergio сказал: Выше - шаблон для вывода самих баз данных, а если нужно подобное, но для последний тем форума, то такой вариант подойдет: По вкусу можно подправить Итог: alexbavar 1 Quote Link to comment Share on other sites More sharing options...
rsergio Posted November 15, 2016 Share Posted November 15, 2016 Ошибку не заметил - название темы то не выводится. В шаблоне выше вместо {$record->_title} поставить {$record->title} (убрать подчеркивание) alexbavar 1 Quote Link to comment Share on other sites More sharing options...
alexbavar Posted November 15, 2016 Author Share Posted November 15, 2016 4 минуты назад, rsergio сказал: Ошибку не заметил - название темы то не выводится. В шаблоне выше вместо {$record->_title} поставить {$record->title} (убрать подчеркивание) rsergio, премного благодарен! Все работает как и требовалось! ) Quote Link to comment Share on other sites More sharing options...
alexbavar Posted November 15, 2016 Author Share Posted November 15, 2016 Не хватает только полей "кол-во комментариев", "кол-во просмотров" и превью картинки из темы. Как сделать? Quote Link to comment Share on other sites More sharing options...
andros0789 Posted November 15, 2016 Share Posted November 15, 2016 51 минуту назад, alexbavar сказал: Не хватает только полей "кол-во комментариев", "кол-во просмотров" и превью картинки из темы. Как сделать? {lang="num_views_with_number" pluralize="$record->record_views"} - количество просмотров {lang="byline_nodate" htmlsprintf="$record->author()->link()"} - автор новости {datetime="$record->record_publish_date"} - дата создания новости {lang="num_comments" pluralize="$record->record_comments"} - количество комментариев, или так: {{if $record::database()->options['comments']}}<li><i class="fa fa-comment"></i><a href='{$record->url()}#comments' title='{lang="view_comments"}'>{lang="num_comments" pluralize="$record->record_comments"}</a></li>{{endif}} alexbavar 1 Quote Link to comment Share on other sites More sharing options...
rsergio Posted November 15, 2016 Share Posted November 15, 2016 54 минуты назад, alexbavar сказал: Не хватает только полей "кол-во комментариев", "кол-во просмотров" и превью картинки из темы. Как сделать? Чтобы вывести количество ответов и просмотров нужно в шаблоне после строки <li><strong><a href='{$record->url()}' title="{lang="read_more_about" sprintf="$record->name"}">{lang="read_more"}</a></strong></li> (и перед </ul>) вставить {{foreach $record->stats(FALSE) as $k => $v}} <li> <span class='ipsDataItem_stats_number'>{number="$v"}</span> <span class='ipsDataItem_stats_type'>{lang="{$k}" pluralize="$v"}</span> </li> {{endforeach}} С картинкой не знаю как быть - оно в базах данных выделена отдельно. alexbavar 1 Quote Link to comment Share on other sites More sharing options...
alexbavar Posted November 15, 2016 Author Share Posted November 15, 2016 17 минут назад, rsergio сказал: Чтобы вывести количество ответов и просмотров нужно в шаблоне после строки <li><strong><a href='{$record->url()}' title="{lang="read_more_about" sprintf="$record->name"}">{lang="read_more"}</a></strong></li> (и перед </ul>) вставить {{foreach $record->stats(FALSE) as $k => $v}} <li> <span class='ipsDataItem_stats_number'>{number="$v"}</span> <span class='ipsDataItem_stats_type'>{lang="{$k}" pluralize="$v"}</span> </li> {{endforeach}} С картинкой не знаю как быть - оно в базах данных выделена отдельно. Спасибо, получилось! А с картинкой надо думать, тоже важный момент. Quote Link to comment Share on other sites More sharing options...
rsergio Posted November 15, 2016 Share Posted November 15, 2016 41 минуту назад, alexbavar сказал: А с картинкой надо думать, тоже важный момент. Если найти пример как работать с картинками темы, то можно было бы вытащить первую картинку. Что-то типа $record->images() Quote Link to comment Share on other sites More sharing options...
andros0789 Posted November 15, 2016 Share Posted November 15, 2016 alexbavar, так создай поле в базе, выбери загрузчик файлов, поставь права доступа какие надо, задай ему айди, и ниже как на скрине сделай по инструкции. То есть тебе надо будет сделать ссылку типа <img src=" {$record->customFieldDisplayByKey('ТУТ ТВОЙ АЙДИ', 'listing')|raw} "> И таким образом можешь выводить ЛЮБОЕ поле созданное в этой базе. Посмотри зайди на мой сайт что в подписи, там все реализовано в страницах и доп полях) Команды, игры , кланы и тд. Quote Link to comment Share on other sites More sharing options...
alexbavar Posted November 15, 2016 Author Share Posted November 15, 2016 7 минут назад, andros0789 сказал: alexbavar, так создай поле в базе, выбери загрузчик файлов, поставь права доступа какие надо, задай ему айди, и ниже как на скрине сделай по инструкции. То есть тебе надо будет сделать ссылку типа <img src=" {$record->customFieldDisplayByKey('ТУТ ТВОЙ АЙДИ', 'listing')|raw} "> И таким образом можешь выводить ЛЮБОЕ поле созданное в этой базе. Посмотри зайди на мой сайт что в подписи, там все реализовано в страницах и доп полях) Команды, игры , кланы и тд. Так картинка то в теме на форуме, а не в базе данных Pages. Quote Link to comment Share on other sites More sharing options...
andros0789 Posted November 15, 2016 Share Posted November 15, 2016 1 минуту назад, alexbavar сказал: Так картинка то в теме на форуме, а не в базе данных Pages. а не проще новости тут создавать, и сделать вывод их в определенный форум???куда проще вариант)) Quote Link to comment Share on other sites More sharing options...
alexbavar Posted November 15, 2016 Author Share Posted November 15, 2016 Только что, andros0789 сказал: а не проще новости тут создавать, и сделать вывод их в определенный форум???куда проще вариант)) Это само собой. Новости создаются, публикуются в форум, а как потом показать их сортировку в популярности, количеству комментариев и т.д.? Стандартные блоки страниц публикуют темы только в виде записей, а не статей. Quote Link to comment Share on other sites More sharing options...
andros0789 Posted November 15, 2016 Share Posted November 15, 2016 22 минуты назад, alexbavar сказал: Это само собой. Новости создаются, публикуются в форум, а как потом показать их сортировку в популярности, количеству комментариев и т.д.? Стандартные блоки страниц публикуют темы только в виде записей, а не статей. В страницах, создать блок, выбираете плагин, и ниже в выпадающем меню то что вас интересует) и все) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.