Перейти к содержанию
Grandifer

Как массово удалить товары одной категории

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

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

Поделиться сообщением


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

Зайти в раздел товары, отфильтровать по категории и удалять.

Товаров сколько?

Поделиться сообщением


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

Зайти в раздел товары, отфильтровать по категории и удалять.

Товаров сколько?

Так ведь в том и дело, что я не вижу фильтра по категориям в товарах (oc 1.5.51)

Всего ~3.5k, из них около половины нужно удалить. Выборочно.

Поделиться сообщением


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

Недавно тоже искал вариант удаления товаров из категории. Написал простой php скрипт. Кому-то пригодится.

Ocstore 2.1

<?php
$server = "localhost";
$db = "test";
$username = "vasya";
$password = "pupkin";

//Connect to Mysql
$link = mysqli_connect($server, $username, $password, $db);
if (mysqli_connect_errno()) {
    printf("ERROR $server: %s\n", mysqli_connect_error());
    exit();
}
mysqli_set_charset($link, "utf8");

$q1 = mysqli_query($link,"SELECT product_id from oc_product_to_category WHERE category_id='63'");

while ($f1 = mysqli_fetch_array($q1)){
    $product_id = $f1[0];
    mysqli_query($link,"DELETE FROM oc_product WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_attribute WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_description WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_discount WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_filter WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_image WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_option WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_option_value WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_related WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_related WHERE related_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_reward WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_special WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_to_category WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_to_download WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_to_layout WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_to_store WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_product_recurring WHERE product_id = " . (int)$product_id);
    mysqli_query($link,"DELETE FROM oc_review WHERE product_id = '" . (int)$product_id . "'");
    mysqli_query($link,"DELETE FROM oc_url_alias WHERE query = 'product_id=" . (int)$product_id . "'");
}

mysqli_close($link);

?>

 

Изменено пользователем tambu34

Поделиться сообщением


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.