14 дек
Инструкция по добавлению функции отложенного постинга новостей к модулю DLE Socialposting, если на сайте используется функция "Поддержка публикации новостей на еще не наступившую дату"

1. Отложенный постинг будет происходить только если включен постинг по крону и добавлены задания для постинга в расписание крона на сервере/хостинге.
По этому необходимо для начала в админке модуля - Общие настройки - включить опцию Постинг по крону и соответственно добавить задания в панели сервера/хостинга.

2. Добавить в таблицу списка постинга дополнительное поле, выполнив запрос:
ALTER TABLE `dle_socialposting_list` ADD `time2post` DATETIME NOT NULL DEFAULT '2000-01-01 00:00:00' AFTER `finished`;


3. Файл: /engine/modules/socialposting/posting.php
Найти:
Для версии модуля 3.1 и выше:
$sqlExport[] = "('" . $rowP['id'] . "', '" . $news_id . "', '0')";

Для версии модуля 3.0 и ниже:
$sqlExport[] = "('" . $rowP['id'] . "', '" . $news_id . "')";

Заменить на:
Для версии модуля 3.1 и выше:
$sqlExport[] = "('" . $rowP['id'] . "', '" . $news_id . "', '0', '" . $thistime . "')";

Для версии модуля 3.0 и ниже:
$sqlExport[] = "('" . $rowP['id'] . "', '" . $news_id . "', '" . $thistime . "')";


Найти:
Для версии модуля 3.1 и выше:
(`conf_id`, `post_id`, `finished`)

Для версии модуля 3.0 и ниже:
(`conf_id`, `post_id`)

Заменить на:
Для версии модуля 3.1 и выше:
(`conf_id`, `post_id`, `finished`, `time2post`)

Для версии модуля 3.0 и ниже:
(`conf_id`, `post_id`, `time2post`)


4. Файл: cron.php (в корне сайта)
Найти:
include_once ENGINE_DIR . '/modules/socialposting/cron.php';

Заменить на:
			require_once ENGINE_DIR . '/data/config.posting.php';
			$thistime = date( "Y-m-d H:i:s", time() );
			$row_post = $db->super_query( "SELECT DISTINCT post_id FROM " . PREFIX . "_socialposting_list WHERE finished='0' AND time2post<='" . $thistime . "' AND conf_id IN ( SELECT id FROM " . PREFIX . "_socialposting_conf WHERE activ='1' ) ORDER BY id ASC LIMIT 0,1" );
			$news_id = $row_post['post_id'];
			if( isset($news_id) ) {
				include_once ENGINE_DIR . '/modules/socialposting/cron.php';
			}


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