Перемещение записей у которых есть вхождение укзанной фразы в заголовке в указанную рубрику
Имеем:
Например, есть 3 категории:
- Макияж
- Волосы
- Маникюр
Есть 3 записи:
- Как красить волосы
- Фразцузский маникюр своими руками
- Как правильно наносить основу под макияж
Все эти записи раскиданы по разным категориям, могут даже все находиться в одной и той же категории.
Задача:
Записи, у которых ЗАГОЛОВОК содержит ключевую фразу "волосы" положить в категорию "Волосы", а ту категорию, которая сейчас установлена - снять, чтобы запись находилась только в одной категории (например была категория "Макияж", а стала "Волосы"). То есть в данном случае запись "Как красить волосы" перекладываем в категорию "Волосы", остальные записи пропускаем.
Это пример. По факту на живом сайте несколько ТЫСЯЧ записей, 30 категорий и порядка 100 ключевых фраз (некоторые фразы могут состоять из 2-3 слов), по которым нужно отсеивать записи. Надо это учесть, чтобы при запуске скрипта всё не легло (возможно я буду как-то поэтапно запускать).
попробуй плагин batch-move / только где-нибудь в тестовом варианте сначала /
там вроде можно отфильтровать записи по ключу. если получится, отпишешь.
Вот код который вам поможет:
Как использовать:
ВАЖНО:
Обязательно сделай дамп базы данных перед запуском.
ЗАМЕТКИ:
Код можно запускать много раз, он сам себе не мешает...
Если записей очень много, и код не может обработать все за раз, то нужно использовать параметры offset и limit. Будем обрабатывать по сто записей, для этого по очереди переходим по следующим ссылкам: