Отдельный шаблон новостей пользователя
Версия: ssuserdle

Внимание! Модули сайта находятся в процессе разработки. Функционал доступен частично.
МЫ НЕ СТОИМ НА МЕСТЕ, А СТАРАЕМСЯ СДЕЛАТЬ САЙТ УНИКАЛЬНЫМ!
Ограничение функций от сервисов Ucoz является помехой,но мы будем искать варианты, ведь многие функции либо скрыты и не запрещены,
либо давно забыты и убраны из списков.
Многое можно осуществить через JS и Json.
Мы ищем решение для добавления большего количества файлов.



Специальная тема.

В продолжение темы



В некоторых случаях это является крайне актуальным, например при создании на базе отдельных составляющих специальных тем, где пользователь заносит некие данные, видимые только ему, и администрации. В нашем случае коммерческий сайт, где публикации новостей могут осуществлять только Администраторы. А публикация пользователями только в специальной закрытой категории, со скрытым линком для приватности. Например пользователь - сотрудник фирмы, и он вносит некие отчеты через обычную форму, но с модификациями. В итоге список тем превращается в список отчетов. Очень удобно для администрации проверять все действия подобного плана.

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



Сперва обратим внимание, что функция по умолчанию в движке отсутствует. И нам придется ее реализовывать вручную.

Открываем файл engine/modules/show.short.php

В нем практически в начале находим строку:

Код
else $tpl->load_template( 'shortstory.tpl' );

и заменяем на:

Код
elseif ($subaction == 'allnews')$tpl->load_template( 'short-new.tpl' );
  else $tpl->load_template( 'shortstory.tpl' );

Как видите, у нас прописан новый шаблон short-new.tpl, который мы и создадим в Админ-панели.


Данная часть готова! Далее мы приступаем к верстке. Нам пригодятся Ассеты из Git, и scss-стили! Мы их перевели в обычные css, для удобства!

Вот список уже готовых стилей-миксин с нашего сайта:


Код
<link rel="stylesheet" href="https://twdhub-a.usite.pro/css/special-twd.css" />
<link rel="stylesheet" href="https://twdhub-a.usite.pro/css/index.scss" /> 
<link rel="stylesheet" href="https://twdhub-a.usite.pro/css/alerts/flash.scss" /> 
<link rel="stylesheet" href="https://twdhub-a.usite.pro/css/base/typography-base.scss" />
<link rel="stylesheet" href="https://twdhub-a.usite.pro/css/box/box.scss" />
<link rel="stylesheet" href="https://twdhub-a.usite.pro/css/utilities/visibility-display.scss" />
<link rel="stylesheet" href="https://twdhub-a.usite.pro/assets/light.css" />
<link rel="stylesheet" href="https://twdhub-a.usite.pro/assets/dark.css" />
 <link rel="stylesheet" data-href="https://twdhub-a.usite.pro/assets/dark_dimmed.css" />  <link rel="stylesheet" data-href="https://twdhub-a.usite.pro/assets/dark_high_contrast.css" /> <link data-href="https://twdhub-a.usite.pro/assets/dark_colorblind.css" />
 <link rel="stylesheet" data-href="https://twdhub-a.usite.pro/assets/light_colorblind.css" /> <link rel="stylesheet" data-href="https://twdhub-a.usite.pro/assets/light_high_contrast.css" /> <link rel="stylesheet" href="https://twdhub-a.usite.pro/assets/frameworks.css" />
 <link rel="stylesheet" href="https://twdhub-a.usite.pro/assets/behaviors.css" />
 <link rel="stylesheet" href="https://twdhub-a.usite.pro/assets/tab-size-fix.css" />
 <link rel="stylesheet" href="https://twdhub-a.usite.pro/assets/github.css" />

А вот рабочий шаблон короткой новости с нашего сайта:

Код
<hr> <div role="row" class="Box-row Box-row--focus-gray py-2 d-flex position-relative js-navigation-item">

<div role="gridcell" class="mr-3 flex-shrink-0" style="width: 16px;">

 <svg aria-label="Directory" aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-file-directory hx_color-icon-directory">

 <path fill-rule="evenodd" d="M1.75 1A1.75 1.75 0 000 2.75v10.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0016 13.25v-8.5A1.75 1.75 0 0014.25 3h-6.5a.25.25 0 01-.2-.1l-.9-1.2c-.33-.44-.85-.7-1.4-.7h-3.5z"></path>

</svg><?if($MODER_PANEL$)?><div style="float:right">$MODER_PANEL$</div><?endif?>

 </div>

 <div role="rowheader" class="flex-auto min-width-0 col-md-2 mr-3">

 <?if($CATEGORY_NAME$)?> <span class="css-truncate css-truncate-target d-block width-fit"><a class="js-navigation-open Label Label--success" title="$TITLE$" data-pjax="#repo-content-pjax-container" href="$CATEGORY_URL$">$CATEGORY_NAME$</a></span><?endif?>

<svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-play UnderlineNav-octicon d-none d-sm-inline">

 <path fill-rule="evenodd" d="M1.5 8a6.5 6.5 0 1113 0 6.5 6.5 0 01-13 0zM8 0a8 8 0 100 16A8 8 0 008 0zM6.379 5.227A.25.25 0 006 5.442v5.117a.25.25 0 00.379.214l4.264-2.559a.25.25 0 000-.428L6.379 5.227z"></path>

</svg><?if($USERNAME$)?><span class="e-add"><span class="ed-title"></span> <span class="ed-value"><a class="btn Label Label--gold" href="$PROFILE_URL$">@$USERNAME$</a></span></span><span class="ed-sep"> | </span><?endif?>

 </div>

 <div role="gridcell" class="flex-auto col-5">

<a data-pjax="true" title="$TITLE$" class="tooltip navy-tooltip Label Label--success" href="$ENTRY_URL$">$TITLE$<span>$MESSAGE$</span></a>

</div>
 <div role="gridcell" class="color-fg-muted text-right" style="width:100px;">

<span class="e-date"><span class="ed-title">Дата:</span> <span class="ed-value"title="$TIME$">$DATE$</span></span>

<?if($COMMENTS_URL$)?><span class="e-comments"> <a class="btn Label Label--silver" href="$COMMENTS_URL$">$COMMENTS_NUM$</a></span><?endif?> 

 </div>

Адаптировать под DLE проблем не должно составить: Вот что получилось у нас:



Код
<div role="row" class="Box-row Box-row--focus-gray py-2 d-flex position-relative js-navigation-item">

<div role="gridcell" class="mr-3 flex-shrink-0" style="width: 16px;">

 <svg aria-label="Directory" aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-file-directory hx_color-icon-directory">

 <path fill-rule="evenodd" d="M1.75 1A1.75 1.75 0 000 2.75v10.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0016 13.25v-8.5A1.75 1.75 0 0014.25 3h-6.5a.25.25 0 01-.2-.1l-.9-1.2c-.33-.44-.85-.7-1.4-.7h-3.5z"></path>

</svg>

</div>

 <div role="rowheader" class="flex-auto min-width-0 col-md-2 mr-3">

<span class="e-add"><span class="ed-title"></span> <span class="ed-value"> @{author}</span></span><span class="ed-sep"> </span>

 </div>

 <div role="gridcell" class="flex-auto col-5"> <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-play UnderlineNav-octicon d-none d-sm-inline">

 <path fill-rule="evenodd" d="M1.5 8a6.5 6.5 0 1113 0 6.5 6.5 0 01-13 0zM8 0a8 8 0 100 16A8 8 0 008 0zM6.379 5.227A.25.25 0 006 5.442v5.117a.25.25 0 00.379.214l4.264-2.559a.25.25 0 000-.428L6.379 5.227z"></path>

</svg>

<a data-pjax="true" title="{title}" class="tooltip navy-tooltip Label Label--success" href="{full-link}"> {title}<span>{short-story}</span></a>

</div>

 <div role="gridcell" class="color-fg-muted text-right" style="width:100px;">

<span class="e-date"><svg text="gray" aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-history">

<path fill-rule="evenodd" d="M1.643 3.143L.427 1.927A.25.25 0 000 2.104V5.75c0 .138.112.25.25.25h3.646a.25.25 0 00.177-.427L2.715 4.215a6.5 6.5 0 11-1.18 4.458.75.75 0 10-1.493.154 8.001 8.001 0 101.6-5.684zM7.75 4a.75.75 0 01.75.75v2.992l2.028.812a.75.75 0 01-.557 1.392l-2.5-1A.75.75 0 017 8.25v-3.5A.75.75 0 017.75 4z"></path></svg>

<span class="ed-value"title="{date=Y-m-d}"> {date}</span></span>

 </div> </div>

Далее косметические моменты: Popup-всплывающее окошко с текстом краткой новости при наведении на ссылку:


Код
 <link rel="stylesheet" href="https://twdhub-a.usite.pro/css/tooltips/Colored-tt.css" /> 

Все! Приятного использования!

Уважаемые пользователи!
Копирование новостей разрешено только с указанием ссылки на данную новость на другом сайте.
При обнаружении нарушения будут приняты меры, связанные с защитой авторских прав по пункту законов о плагиате и нарушении авторских прав.
На сайте используются только оригинальные материалы, без копирования из других источников. Все скрипты и коды здесь - наши авторские работы.
Чужие работы мы бережно выносим на отдельные html странички, со ссылками на оригинальный материал. ПРИМЕР
Уважайте чужой труд!
Категория: разработки DLE 15 | Добавил: SKYER

Всего комментариев: 0
avatar