Модератор
Юрій
(@yube)
У левых постов есть общие параметры, по которым их легко отследить
Это вопрос или констатация?
ВОПРОС: Как мне удалить эти посты из бд не затрагивая рубрики и метки?
Констатация 🙂 -> У левых постов есть общие параметры, по которым их легко отследить
Модератор
Юрій
(@yube)
Ну так огласите эти признаки-параметры. Без этого трудно что-то конкретное советовать.
Вообще-то, сначала надо найти источник проблемы, а уже потом бороться с симптомами. Иначе Вы просто не будете успевать удалять. Боты могут очень быстро гадить.
p.s.offtop. я только что удалял спам из почтовой очереди наперегонки с ботом. Я выиграл только тогда, когда поменял пароль юзеру-растеряхе.
абсолютно с вами согласен, что надо бороться с причиной, а потом уже с последствиями. Но пока причину выявить не получается, пробую по переменно отключать некоторые плагины, когда вижу, что все равно публикуется, пробую другие. Пока такой список плагинов:
Akismet
Auto Highslide
My Category Order
Really Simple CAPTCHA
Restrict Widgets
RusToLat
Sitemap Generator
Sucuri Security — Auditing, Malware Scanner and Hardening
WP-Mail-SMTP
Yoast SEO
До этого были еще несколько, на которых пало подозрение
All in one SEO pack
Contact form 7
Тема тоже может быть, не исключаю.
Общие признаки записей в БД такие:
post_content, post_excerpt всегда начинается с этого:
<table name=»barwp» id=»stronghoriz»><tr><td>
Модератор
Юрій
(@yube)
Посмотрите, есть ли для этих постов соотв. записи в wp_postmeta и wp_term_relationships. Если нет, то удаление достаточно простое (через PMA):
delete from wp_posts where post_content like '<table name="barwp"%'
Если же есть и там, и там, то немного сложнее: сначала получить список ID этих постов, потом удалять по списку where id in (...)
для wp_posts и с соотв. именем поля для других таблиц (да, можно и одним запросом сделать, но я его навскидку не напишу)
Бэкап базы перед маневрами — это святое.
Да, связи есть в других таблицах, ибо после выполнения первого запроса все метки и рубрики слетают.
А вот сам не сильно владею SQL, второй запрос составить и мне слабо 🙂
Чет бьюсь, никак, может сможете поправить? Мыслю правильно?
SELECT wp_term_relationships.* FROM wp_term_relationships, wp_postmeta.* FROM wp_postmeta, wp_posts WHERE wp_term_relationships.object_id = wp_posts.ID AND wp_postmeta.meta_id = wp_posts.ID AND wp_posts.post_content LIKE ‘%barwp%’