Изменение даты сообщения в комментариях к теме.

Автор maxville, 30 января 2015, 14:51:57

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

maxville

Ребят, подскажите, пожалуйста, как можно осуществить следующее:

Сейчас номер сообщения и дата отображается вот так

Re: название топика
« Ответ #4 : 21:46:30 25.01.2015 »


в Display.template.php имеет вид

<div class="keyinfo">
<h5 id="subject_', $message['id'], '">
<a href="', $message['href'], '" rel="nofollow">', $message['subject'], '</a>
</h5>
<div class="smalltext">« <strong>', !empty($message['counter']) ? $txt['reply_noun'] . ' #' . $message['counter'] : '', ' ', $txt['on'], ':</strong> ', $message['time'], ' »</div>
</div>';




как хотелось бы:

#4         Сегодня в 14:30




т.е. при этом  #4 оставалась ссылкой на сообщение (сами знаете, иногда нужно на них ссылаться).
Если комментарий был оставлен в прошедшие дни текущей недели, то отображалось бы:

#4       Понедельник 22:15

если вчера то  -

#4         Вчера в 9:30

Без секунд, и первого нуля, типа как сейчас 09:30:26.

Не думаю что это так сложно, но времени на это я убью ооочень много если буду разбираться в одиночку.
За ранее, спасибо!

karavan

Админка - Конфигурация - Характеристики и настройки - Настройки отображения - Разрешить функцию "Сегодня" - Сегодня и вчера.
Не уверен что полностью, но частично, то что вы хотите, и полностью "штатными" средствами.

maxville

не, это то понятно :) оно включено, и работает именно на первой странице форума и там где разделы. Т.е. этот параметр не влияет на отображение даты в комментариях.

maxville


digger®

Цитата: maxville от 30 января 2015, 15:00:18
не, это то понятно :) оно включено, и работает именно на первой странице форума и там где разделы. Т.е. этот параметр не влияет на отображение даты в комментариях.
Вы в этой теме посмотрите на даты в комментариях

maxville

действительно, вчера и сегодня отображается. Что-то я тупанул. Ну, это только часть вопроса.

maxville


karavan


GeorG

Цитата: maxville от 30 января 2015, 14:51:57как хотелось бы:

#4         Сегодня в 14:30

т.е. при этом  #4 оставалась ссылкой на сообщение (сами знаете, иногда нужно на них ссылаться).


<div class="keyinfo">
<div class="smalltext"><strong><a id="subject_', $message['id'], '" href="', $message['href'], '" rel="nofollow">', !empty($message['counter']) ? '#' . $message['counter'] : '', '</a> </strong> ', $message['time'], '</div>
</div>';


Только так у вас на первое сообщение ссылки не получается, т.к., подсчет со второго начинается всегда.
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

maxville

Спасибо за ответ Georg, я еще в тот день поправил :)
На первый пост не нужно, для этого можно всегда просто ссылаться на сам топик.

В общем, секунды убрал через админку, в разделе свойства и параметры, выставил формат отображения времени: %e %b %Y, в %H:%M

на главной форума и в разделе с темами дата отображается теперь так:



и в  Display.template.php блок отвечающий за показ номер, ссылки и даты сообщения подзаменил на:

<div class="keyinfo">
<div class="smalltext"><a href="', $message['href'], '" rel="nofollow"> ', !empty($message['counter']) ? $txt[''] . ' #' . $message['counter'] : '', ' ', $txt['on'], ' </a>', $message['time'], '</div>
<div id="msg_', $message['id'], '_quick_mod"></div>
</div>';


после этого в темах время сообщения отображается так:



Хотелось бы сделать так, чтобы прошедшие дни текущей недели отображались как - в понедельник, в вторник и т.д.



При этом оставить - сегодня и вчера

GeorG

Так вы же запутаетесь потом сами.
Например тот же понедельник был 26 января и сегодня 2 февраля опять понедельник.
Откроете так страницу с темами, а там одни понедельники и вторники, а чисел нет.
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

maxville

#11
Цитата: GeorG от 02 февраля 2015, 00:03:02Так вы же запутаетесь потом сами.
Например тот же понедельник был 26 января и сегодня 2 февраля опять понедельник.
Откроете так страницу с темами, а там одни понедельники и вторники, а чисел нет.

нет, исключено, я же написал что

Цитата: maxville от 01 февраля 2015, 13:19:54При этом оставить - сегодня и вчера

2 февраля это будет на форуме как сегодня, + можно делать же по уму, а именно брать для отображения названия дня недели от текущего дня - последние, например, 6 дней..

даже получается что 5 дней, тк у нас же еще "вчера" есть. Т.е. если сегодня понедельник, то на форуме будет отображаться сообщения за сегодня как - сегодня, за вчера как -вчера, а вот уже дальше - не 31 янв 2015, а просто суббота, и так далее до вторника.

digger®

Цитата: maxville от 02 февраля 2015, 14:47:562 февраля это будет на форуме как сегодня, + можно делать же по уму, а именно брать для отображения названия дня недели от текущего дня - последние, например, 6 дней..
Нужно написать свою функцию для форматирования даты. Проверять порядковый номер текущей недели и сравнивать с порядковым номером недели в дате сообщения, если совпадают - отображать день недели текстом.

maxville

про написание функции то понятно :) а кто может её написать и подсказать куда её вставить?


maxville

хм, за всё существование SMF это никого не интересовало что ли? :) я думал готовое давно есть..