Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Модули » Как сделать публикацию еще "несозревших" новостей?

Как сделать публикацию еще "несозревших" новостей?


     05.01.2015    Модули, Хаки    2031

вопрос
Здравствуйте. Подскажите пожалуйста, как сделать, что бы при публикации у пользователя было поле (желательно в виде календаря) выбора даты публикации, и как сделать что бы даже если дата публикации еще не наступила новость все равно была опубликована?
Спасибо заранее:-)....

Ответил: ychelovek


Не знаю правильно ли так делать, но я сделал так:
в engine/modules/addnews.php изменил

$adTime = $_POST['dates'];                
$thistime = strtotime($adTime);
$thistime = date( "Y-m-d H:i:s", $thistime );


В addnews.tpl добавил поле

<input type="datetime-local" name="dates" id="dates">

8 комментариев

Sander
PHP-developer

Sander - 5 января 2015 20:44 -

В настройках DLE есть параметр:

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

SanDev.pro - мой блог.

Telegram: @sandev
Skype: Sander8804

Sander
PHP-developer

Sander - 5 января 2015 20:44 -

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

SanDev.pro - мой блог.

Telegram: @sandev
Skype: Sander8804

ychelovek
Юзер

ychelovek - 5 января 2015 20:59 -

А нельзя ли как нибудь сделать что бы я добавил поле в addnews.tpl на JS сделал что бы в это поле только дату вписывали, и при нажатии на кнопку добавить это поле заменяло текущую дату date() ... Ну как костыль)

ychelovek
Юзер

ychelovek - 5 января 2015 21:06 -

Вот в данном запросе
$db->query( "INSERT INTO " . PREFIX . "_post (date, autor, short_story, full_story, xfields, title, keywords, category, alt_name, allow_comm, approve, allow_main, fixed, allow_br, symbol, tags) values ('$thistime', '{$member_id['name']}', '$short_story', '$full_story', '$filecontents', '$title', '', '$category_list', '$alt_name', '$allow_comm', '$approve', '$allow_main', '$news_fixed', '$allow_br', '$catalog_url', '" . $_POST['tags'] . "')" );


$thistime поменять на $_POST['date'] поля <input>(ну у DLE как то по другому реализуется передача полей)

ychelovek
Юзер

ychelovek - 5 января 2015 20:51 -

Спасибо, а я блин в оптимизации смотрел, а там другая функция, и думал нигде больше такого нету

ychelovek
Юзер

ychelovek - 7 января 2015 12:39 -

АП
UP

ychelovek
Юзер

ychelovek - 14 января 2015 13:13 -

UP(((

ychelovek
Юзер

ychelovek - 19 января 2015 22:24 -

Нормально ли сделать так:
Сделал поле, с name="dates"
изменил в addnews.php


$adTime = $_POST['dates'];                
                $thistime = strtotime($adTime);
                $thistime = date( "Y-m-d H:i:s", $thistime );



Вопрос в том, безопасно ли это?

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх