Перейти к публикации

Не хватает времени публикации при выводе списка новостей и статических страниц.


Рекомендованные сообщения

Здравствуйте.

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

Можно как то сделать вкл./выкл. показа времени в которое была опубликована новость? Для редакций с большим потоком новостей это очень важный показатель на который ориентируются сотрудники. Иначе приходится заходить во внутрь новости, либо искать по сайту, но это лишние действия и время. Проще посмотреть в списке.

К примеру, ровно между временем и заголовком: 27.01.2022 15:45 В столице больше 20 школ закрыты на карантин

Вот этих 15:45 крайне не хватает.

Ссылку вставить не даёт данный редактор, по этому вот скрин пример где затык https://prnt.sc/26k8r20 

 

Ссылка на сообщение
Поделиться на других сайтах

Поищите DLE EditNews Admin Template
Позволит в админке настроить нужный вид списка новостей...

Ссылка на сообщение
Поделиться на других сайтах

Это конечно классно использовать модуль, но при обновлении движка который слава Богу бывает часто, придётся и модули переустанавливать так как зачастую код при обновлении меняется и многое слетает.

Я вот что нашёл. Тут по адресу /engine/inc/addnews.php  строка 688 (примерно) есть такой блок:

<table class="table table-striped table-xs table-hover">
      <thead>
      <tr>
        <th class="hidden-xs hidden-sm" style="width: 60px;">&nbsp;</th>
        <th>{$lang['edit_title']}</th>
        <th class="hidden-xs text-center" style="width: 60px;"><i class="fa fa-eye tip" data-original-title="{$lang['st_views']}"></i></th>
        <th class="hidden-xs text-center" style="width: 60px;"><i class="fa fa-comment-o tip" data-original-title="{$lang['edit_com']}"></i></th>
        <th style="width: 30px;text-align:center;">&nbsp;</th>
        <th class="hidden-xs text-center">{$lang['edit_cl']}</th>
        <th class="hidden-xs hidden-sm" style="max-width: 140px">{$lang['edit_autor']}</th>
        <th style="width: 40px"><input type="checkbox" name="master_box" title="{$lang['edit_selall']}" onclick="javascript:ckeck_uncheck_all();" class="icheck"></th>
      </tr>
      </thead>
	  <tbody>
		{$entries}
	  </tbody>
	</table>

Кажется!!! Это явно именно то место где выводятся заголовки к списку публикаций. Есть вот этот блок, но где его вывод мне не ясно, где тег {$lang['edit_title']} как раз таки и выводит нужный список.

Вот тут и нужно вставить какую то функцию в переменной date который обычно показывается в формате "Y-m-d",  и тупо дописать туда часы и минуты.

Я как то так вижу это.

Но где всё это заныкано, известно только профи и разработчику.

Странно другое, где взять то что выводится в админке?! (часть данных затёр)

<td class="hidden-xs hidden-sm text-nowrap cursor-pointer" onclick="document.location = '?mod=editnews&action=editnews&id=742'; return false;">15.12.2020</td>
<td class="cursor-pointer" onclick="document.location = '?mod=editnews&action=editnews&id=742'; return false;"><span class="badge badge-danger position-left">Важно:</span><a title='Редактировать данную новость' href="?mod=editnews&action=editnews&id=742">ПОЛЬЗОВАТЕЛИ</a></td>
<td class="hidden-xs text-nowrap text-center"><a data-original-title="Просмотров" class="tip" href="https://*******/info/742-polzovateli.html" target="_blank">98</a></td>
<td class="hidden-xs text-nowrap text-center" style="text-align: center">
<div class="btn-group">
<a href="https://**********/info/742-polzovateli.html" target="_blank" data-toggle="dropdown" data-original-title="Комментарии" class="tip">0</a>
<ul class="dropdown-menu text-left">
<li><a href="?mod=comments&user_hash=7***************************97f&action=dorebuild&id=742"><i class="fa fa-retweet"></i> Пересчитать комментарии</a></li>
</ul>
</div>
</td>

Именно вот этот блок:

<td class="hidden-xs hidden-sm text-nowrap cursor-pointer" onclick="document.location = '?mod=editnews&action=editnews&id=742'; return false;">15.12.2020</td>

 

Изменено пользователем WebPCK
Ссылка на сообщение
Поделиться на других сайтах

Чё нашёл! Тот же файл, строка 316  тег {$itemdate} выводит нужную нам дату.

$entries .= "<tr><td class=\"hidden-xs hidden-sm text-nowrap cursor-pointer\" onclick=\"document.location = '?mod=editnews&action=editnews&id={$row['id']}'; return false;\">{$itemdate}</td><td class=\"cursor-pointer\" onclick=\"document.location = '?mod=editnews&action=editnews&id={$row['id']}'; return false;\">";

Ив строке 305-309 видим формат вывода этой даты.

		if( $langformatdate ) {
			$itemdate = date( $langformatdate, strtotime( $row['date'] ) );
		} else {
			$itemdate = date( "d.m.Y", strtotime( $row['date'] ) );
		}

Но при добавлении к "d.m.Y" дополнительных данных H.i.s ничего не происходит.

"d.m.Y H.i.s"

"d.m.Y.H.i.s"

"d.m.Y-H.i.s"

пробовал такие варианты... но ничего. Сбрасывал кеш страницы. Тишина.

Это точно то место и тот код, та как сюда вставил слово дата, и оно вывелось во всех строках

{$itemdate} дата</td>

Мистика ))) !!!

Кстати. Что ещё интересного нашёл.

Строка 305-309 имеет вид

		if( $langformatdate ) {
			$itemdate = date( $langformatdate, strtotime( $row['date'] ) );
		} else {
			$itemdate = date( "d.m.Y", strtotime( $row['date'] ) );
		}

Строка 1586-1590 имеет почти такой же вид, НО...

		if( $langformatdatefull ) {
			$row['editdate'] = date( $langformatdatefull, $row['editdate'] );
		} else {
			$row['editdate'] = date( "d.m.Y H:i:s", $row['editdate'] );
		}

Мы видим переменную $langformatdatefull вместо $langformatdate что говорит о присутствии в движке данного вывода

Мы видим "d.m.Y H:i:s" вместо "d.m.Y", что говорит о нужном нам функционале.

Остаётся найти где включать/отключать этот вывод в админке или где...

 

Ссылка на сообщение
Поделиться на других сайтах
31 минуту назад, WebPCK сказал:

Это конечно классно использовать модуль, но при обновлении движка который слава Богу бывает часто, придётся и модули переустанавливать так как зачастую код при обновлении меняется и многое слетает.

Это единственный правильный вариант. При обновлении вы в любом случае потеряете ручные правки....

9 минут назад, WebPCK сказал:

Но при добавлении к "d.m.Y" дополнительных данных H.i.s ничего не происходит.

И не произойдет - срабатывает первый вывод, т.к. не пустая переменная $langformatdate. 

Сделай перед if

$langformatdate = "d.m.y H:i";

И делай это через плагины....

Ссылка на сообщение
Поделиться на других сайтах

В editnews.php вот тут

$itemdate = date( $langformatdate, strtotime( $row['date'] ) );

меняй на 

	$itemdate = date( "d.m.Y H:i", strtotime( $row['date'] ) );

В static.php 

$itemdate = @date( $langformatdate, $row['date'] );

на

$itemdate = @date( "d.m.Y H:i", $row['date'] );

 

Ссылка на сообщение
Поделиться на других сайтах
3 минуты назад, alex32 сказал:

меняй на

ОНО ЖИВОЕ, ОНО РАБОТАЕТ.

https://prnt.sc/26kaant

Вот это решение, вот это я понимаю сработало так сработало.

БЛАГОДАРЮ. 

Ссылка на сообщение
Поделиться на других сайтах

Мда, каких только правок не придумают ))) Это задается в языковых файлах ))) adminpanel.png можно создать свой языковый пакет, а можно стандартный через систему плагинов изменить.

Ссылка на сообщение
Поделиться на других сайтах

Менять файл adminpanel.lng через систему плагинов, менять файл editnews.php через систему плагинов - разницы никакой,  если нет возможности настроить  в админке.  

Ссылка на сообщение
Поделиться на других сайтах
3 минуты назад, alex32 сказал:

Менять файл adminpanel.lng через систему плагинов, менять файл editnews.php через систему плагинов - разницы никакой,  если нет возможности настроить  в админке.

Есть. Языковые файлы статичнее, а значит вероятность будущего обновления с автоматическим безпроблемным применением к новым версиям, более существенна.

Ссылка на сообщение
Поделиться на других сайтах
6 часов назад, celsoft сказал:

Есть. Языковые файлы статичнее, а значит вероятность будущего обновления с автоматическим безпроблемным применением к новым версиям, более существенна.

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

22 часа назад, MSK сказал:

Поищите DLE EditNews Admin Template
Позволит в админке настроить нужный вид списка новостей...

Тут товарищ предложил модуль. Тоже отличные штуки там есть. Но это модуль, он сторонний, не обновится.

 

Моё мнение вообще на всё это. Раз уж DLE такой удобный для разработчиков которые пишут разные модули под него: Почему бы эти фишки по своему не внедрять? 

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

Не хватает модулей:  

Формы - создание и вывод всевозможных форм.

Статистика - максимально интересная для больших проектов с выборкой (я как то уже пост делал на эту тему)

Фильтр по доп. полям в новостях - как у крутых модулей для продажи товаров или услуг. Обязательно по доп.полям, чтобы не разбивать. 

Корзину товаров - с возможностью сделать заказ. Опрос про магазин уже лет 8 висит на сайте, дальше не двигается.

Оплата - внедрите систему для подключения сервисов для принятия оплаты. PayPal, Робокасса, Яндекс,Касса и парочка других именитых. Процессинг одним словом.

Парсинг - прости Господи. Какой-нибудь инструмент чтобы простые вещи парсить, приучить народ к интересному функционалу (погоду там, курс валюты, котировки парсить - вообще бомба будет).

 

Да за этими услугами народ в очередь выстроится. Зачем мучаться изобретать когда базовые необходимые модули будут включены (что вряд ли), ну хотя бы за доп.плату можно будет подключить. И ОБНОВЛЯТЬ!

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

Ссылка на сообщение
Поделиться на других сайтах

Модули зачем плодить то лишние? Они же нагрузку несут :)

Я просто в language/Russian/adminpanel.lng добавил формат времени да и все. Ну и в список задач после обновления просто повторить данную процедуру.

$langformatdate = "d.m.Y";  заменить на $langformatdate = "d.m.Y H:i";

Ссылка на сообщение
Поделиться на других сайтах
1 минуту назад, ntrtv сказал:

после обновления просто повторить данную процедуру

Программисты и около них/нас это народ - оптимизатор. Самые ленивые люди. Почему? Потому что сидят корпят над задачей скрипт которой сам в нужное время в нужном месте вставляет . (точку). Но зато это автоматизировано и не нужно потом над этим думать. А тут у вас предложение все эти мелкие правки делать вручную каждый раз после обновлений.

- "Так, обновились. Теперь пройдёмся по чек листу с моими +100500 хаками, поправим кодик...."

Так себе вариант. А когда это включено, и оптимизированно, это топ.

5 минут назад, ntrtv сказал:

Модули зачем плодить то лишние? Они же нагрузку несут :)

Ключевая проблема тут в слове "нагрузка". Это понятие относительное. Это осознанные риски заказчика и разработчика сайта, это дополнительные покупки ресурсов для выполнения Крайне Необходимых Задач. Для этого люди делают модули чтобы выполнять задачи. Это про бизнес. 

А вот вариант поставить движок и просто клепать статейки, это не про рост и не про бизнес. 

Если бы DLE был для "фана", он бы не стоил своих денег (был бы бесплатным)! И у нас не было бы десятков и сотен купленных лицензий DLE в кабинетах.

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

Отхватить жирный кусок от WordPress с его плагинами дырявыми и у WooCommerce для этого же WordPress, где каждая девочка сидит и пилит интернет магазинчики... Это как раз таки задача рынка.

Вот это про реальный разговор и реальный рынок.

 

Ссылка на сообщение
Поделиться на других сайтах
17 минут назад, ntrtv сказал:

Ну и в список задач после обновления просто повторить данную процедуру.

Хмм... Так система плагинов же позволяет изменять файлы в папке language

Ссылка на сообщение
Поделиться на других сайтах
7 часов назад, celsoft сказал:

Мда, каких только правок не придумают )))

А какая основная мысль существования движка и его постоянное развитие? Просто интересно знать.

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

Задают вопросы. - "Разработчики что ещё сделать в движке?" И понеслась техническая мелкая доработка переработка.

Нужно спрашивать у менеджеров по продажам, у web студий которые покупают движки а потом заказывают сторонние модули. Вот у них нужно интересоваться что нужно рынку. А ему нужно решение простое, удобное, всё в одном месте от одного разработчика, с долгосрочной поддержкой. Без опаски за правильность кода и его устойчивость к внешним факторам. Вот в эту сторону нужно обратить Великое Oко Celsoft!

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, ntrtv сказал:

Модули зачем плодить то лишние? Они же нагрузку несут :)

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

 

7 часов назад, celsoft сказал:

Языковые файлы статичнее, а значит вероятность будущего обновления с автоматическим безпроблемным применением к новым версиям, более существенна.

Это, кстати, сомнительный выигрыш, потому что эта переменная используется и в других файлах движка. А везде ли надо менять вид даты? да и вообще,  эта переменная в файле editnews на фиг не нужна.  Еще и проверки на ее существование. Так себе выигрыш. Что бы было. придумали переменную, и пусть будет. А она нужна? 

1 час назад, ntrtv сказал:

Я просто в language/Russian/adminpanel.lng добавил формат времени да и все. Ну и в список задач после обновления просто повторить данную процедуру.

$langformatdate = "d.m.Y";  заменить на $langformatdate = "d.m.Y H:i";

И что изменилось? те же самые два телодвижения. чем ваше решения круче? ваше нелепые телодвижения сделали что-то иное?

Изменено пользователем alex32
Ссылка на сообщение
Поделиться на других сайтах

Они не круче. Для нас они не нелепые. Я же вас не заставляю делать так же.  Нам удобно в админке видеть время публикации новости. Вам может это и не надо. Я просто сказал, как мы сделали. Можете, если вам надо, сделать по-своему.   Мы не используем систему плагинов. Мы изменения внесли в физический файл на сервере. У нас не так много правок в файле. Поэтому при обновлении скрипта не так много изменений в файлы вносить.

Изменено пользователем ntrtv
Ссылка на сообщение
Поделиться на других сайтах
5 минут назад, ntrtv сказал:

Они не круче. Для нас они не нелепые. Я же вас не заставляю делать так же.  Нам удобно в админке видеть время публикации новости. Вам может это и не надо. Я просто сказал, как мы сделал

Это да

 

5 минут назад, ntrtv сказал:

Мы не используем систему плагинов.

а это зря.

Ссылка на сообщение
Поделиться на других сайтах
5 минут назад, ntrtv сказал:

Почему зря? Она же несет повышенную нагрузку - так указано в админке. 

Нагрузка нагрузке рознь, не думали об этом? Система плагинов, внедренная Владимиром, на порядок в положительную сторону отличается от тех же плагинов, что используются в вордпрессе.  А вот какую нагрузку эти плагины несут, это зависит только от авторов плагинов. 

Ко то пишет плагин, у которого постоянно десяток запросов к БД, а кто то использует кэш ДЛЕ. есть разница?

7 минут назад, ntrtv сказал:

Почему зря? Она же несет повышенную нагрузку - так указано в админке. 

Так, если указанно в админке, головой думать уже не надо?

Изменено пользователем alex32
Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, ntrtv сказал:

Она же несет повышенную нагрузку - так указано в админке. 

Пункт 3 релиза 13.0

https://dle-news.ru/release/1747-datalife-engine-v130-final-release.html

Цитата

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

 

Изменено пользователем Captain
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...