Отложенная публикация товара

Правила раздела: faq.php?mode=okay
Модератор: Модераторы

andrij
andrij
Репутация: 0
Сообщения: 21
Зарегистрирован: 07.02.2017
С нами: 7 лет 1 месяц

Сообщение #1 andrij » 15.02.2017, 16:09

Может кто сталкивался

Как задать дату публикации товара
Тоесть залить через импорт весь каталог а пускать в индекс по чуть чуть

Зарание спасибо за идеии

m1hasik M
Аватара
m1hasik M
Возраст: 32
Репутация: 31
Сообщения: 200
Зарегистрирован: 12.11.2015
С нами: 8 лет 4 месяца
Откуда: Днепр
Skype

Сообщение #2 m1hasik » 16.02.2017, 09:14

andrij писал(а):Может кто сталкивался

Как задать дату публикации товара
Тоесть залить через импорт весь каталог а пускать в индекс по чуть чуть

Зарание спасибо за идеии

Вероятно вам подойдет такое решение:

Использование:
1. Ложим в любое место в папку с симплой (можно во вложенную)
2. Проверяем работу, перейдя по ссылке
http://(Путь к скрипту)/Simpla-productactivator.php?min=10&max=20
где min - минимальное количество активируемых за запуск товаров, а max - максимальное
если не указать эти параметры, то используется
min=5
max=20
(естественно это можно исправить прямо в скрипте)

Если все нормально скрипт напишет примерно такое
Обновлено 5 продуктов с ID = 3,4,8,12,16
3. Вешаем на крон с нужной периодичностью


Файлик от симплы, но на окай тоже подойдет, если подпилить
Вложения
Simpla-productactivator.zip
(988 байт) 141 скачивание

korshunov
korshunov
Репутация: 146
Сообщения: 1854
Зарегистрирован: 03.12.2015
С нами: 8 лет 3 месяца
Skype

Сообщение #3 korshunov » 16.02.2017, 11:44

Довольно сложное решение, надо бы использовать средства, который дает CMS, это многое упростило бы.

Куда проще, например, так:

Код: Выделить всё

<?php
chdir($_SERVER['DOCUMENT_ROOT']);

require_once('api/Okay.php');
$okay = new Okay();

$min = $okay->request->get('min', 'integer');
$max = $okay->request->get('max', 'integer');

if(!$min) $min=5;
if(!$max) $max=20;
$qty=mt_rand($min,$max);

$okay->db->query("UPDATE s_products SET visible=1 WHERE visible=0 order by rand() LIMIT $qty ");

echo "Обновлено товаров - ". $okay->db->affected_rows() ;


Или даже совсем кратенько

Код: Выделить всё

<?php
chdir($_SERVER['DOCUMENT_ROOT']);
require_once('api/Okay.php');
$okay = new Okay();
$okay->db->query("UPDATE s_products SET visible=1 WHERE visible=0 order by rand() LIMIT ".mt_rand(5,20));

andrij
andrij
Репутация: 0
Сообщения: 21
Зарегистрирован: 07.02.2017
С нами: 7 лет 1 месяц

Спасибо за помощь

Сообщение #4 andrij » 16.02.2017, 21:31

Спасибо за помощь!

Но я новичок и не совсем понятно куда и что вставлять

andrij
andrij
Репутация: 0
Сообщения: 21
Зарегистрирован: 07.02.2017
С нами: 7 лет 1 месяц

Сообщение #5 andrij » 28.04.2017, 14:35

Добрый день

может знаете как сделать
чтоб категории в которых нет активных товаров не отображались в меню

Зарание спасибо

korshunov
korshunov
Репутация: 146
Сообщения: 1854
Зарегистрирован: 03.12.2015
С нами: 8 лет 3 месяца
Skype

Сообщение #6 korshunov » 28.04.2017, 15:02

andrij писал(а):Добрый день

может знаете как сделать
чтоб категории в которых нет активных товаров не отображались в меню

Зарание спасибо

Вы ведь вопрос этот задавали уже и ответ Вам был дан:
viewtopic.php?f=10&t=309&p=1597#p1597


Название раздела: Вопросы по работе с OkayCMS
Правила раздела: faq.php?mode=okay

Быстрый ответ


Введите код в точности так, как вы его видите. Регистр символов не имеет значения.
Код подтверждения

   

Вернуться в «Вопросы по работе с OkayCMS»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 33 гостя