A predecessor of mine that worked on a small non-profit website decided to import massive amounts of posts from a news feed using a plugin called Feedzy.
The plugin, somehow, came unlinked from the posts it imported, so I have no simple way to delete all of this nonsense in the wordpress interface (that I know of).
Some of the posts were put in to a category containing other posts from the station, so even if I knew how, I couldn’t just delete a category of posts.
However in the area when viewing the list of posts in the wordpress interface, all of these posts have the words “(Imported by Feedzy from NCR)” grayed-out in the list like shown below.
“**Edit | Quick Edit | Trash | View |** (Imported by Feedzy from NCR)”
How can I delete all of this garbage?
[ad_2]
This is probably something best accomplished at the database level. You will need to get down to the SQL level, and identify what a Feedzy record looks like. Then you can collect and delete them. Easier said than done, but its possible.
I can think of 2 ways, find a plugin that will add a indepth post search function. Or do it via the backend via SQL to query the posts, then delete from there.
Add [this code](https://gist.github.com/Acephalia/72b781bb012526595d3be2a982ed88c9) via Code Snippets.
Then add a dummy page and add the shortcode : [feedzy_test]
If that finds and displays the posts correctly then you (or I) can just use that to write a function to wipe them.
Get someone with good SQL skills
I’m confused. You’re saying these “imported” posts were added to your database and not just fetched through an API? If so, just log in to phpMyAdmin and delete the table along with all associated metadata. I don’t know why people are saying that is difficult; it’s literally a couple clicks.
If you could get the post IDs (probably from the database), you could use [https://developer.wordpress.org/cli/commands/post/delete/](https://developer.wordpress.org/cli/commands/post/delete/) in a loop to remove them.
I’ve been poking around in phpMyAdmin as suggested, and I know only enough about databases to be dangerous. I worked on low level programming in the past, and now my job is more PR/graphic design related, so I’m a bit out of practice.
I found feezy in a table called “postmeta” rather than “posts.” I can’t go by post_id or meta_id because they’re all unique. It looks like I could identify them all by the “feedzy_job”, in this case it’s a value 11271.
Now, I just need to figure out how to remove specifically these items. According to phpMyAdmin, the table “postmeta” only has four columns: “meta_id, post_id, meta_key, and meta_value.” You guys have been sending me clues toward the right path. Thank you.
You could do this with the WP Sheet Editor plugin.
I always google questions like this since there’s no way I’m special enough to be the only person with a specific problem.
Per the [Feedzy documentation](https://docs.themeisle.com/article/1119-feedzy-rss-feeds-documentation):
> Delete the posts created from all feeds after a number of days – this global setting allows you to remove items older than the number of days set in the field. Apart from this, you can set it individually during the Feed to Post import so that only posts from specific imports will be deleted once the deadline is reached.
So just set the number of days to “1”, wait a day, and see if it deletes all of them.
If all the posts have the same tag “(Imported by…)” then a database search would work. Here’s what I would do:
1. Make a copy of your site, preferably on a staging server.
2. On Staging, try a database search with PHPMyAdmin or something for that string of text. ChatGPT is really helpful at helping write the syntax for this kind of thing. Then delete all of the results you find.
Alternately, you could bump up the number of posts that show in admin per page to like 250 or 500, hope it doesn’t crash the site, then search for “Feedxy” or that specific phrase. Select all, delete, see what remains.
Lmk if this helps. Feel free to DM follow up
Questions – this is an interesting problem, and I’m curious to know how it get resolved.