[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fDkNsP-7P18s13uztvZUAvFmj48UeWZCQApYLndJHsGw":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":25,"download_link":26,"security_score":27,"vuln_count":28,"unpatched_count":29,"last_vuln_date":30,"fetched_at":31,"vulnerabilities":32,"developer":96,"crawl_stats":38,"alternatives":104,"analysis":209,"fingerprints":493},"post-expirator","Schedule Post Changes With PublishPress Future: Unpublish, Delete, Change Status, Trash, Change Categories","4.9.4","PublishPress","https:\u002F\u002Fprofiles.wordpress.org\u002Fpublishpress\u002F","\u003Cp>The PublishPress Future plugin allows you to schedule changes to posts, pages and other content types. With this plugin you can create automatic actions to unpublish, delete, trash, move a post to a new status and more. With the Pro version you can update your content using custom workflows with multiple steps and schedules.\u003C\u002Fp>\n\u003Cp>Here’s an overview of what you can do with PublishPress Future:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Select future action dates in the right sidebar when you are editing a post. This makes it very easy to schedule changes to your content.\u003C\u002Fli>\n\u003Cli>Receive email notifications when Future makes changes to your content.\u003C\u002Fli>\n\u003Cli>Build Action Workflows that allow you to update your content using custom workflows with multiple steps and schedules (available in the Pro version).\u003C\u002Fli>\n\u003Cli>Control post changes via integrations with Advanced Custom Fields and other plugins (available in the Pro version).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>PublishPress Future Pro\u003C\u002Fh3>\n\u003Cblockquote>\n\u003Cp>\u003Cstrong>Upgrade to PublishPress Future Pro\u003C\u002Fstrong>\u003Cbr \u002F>\n  This plugin is the free version of the PublishPress Future plugin. The Pro version comes with all the features you need to schedule changes to your WordPress content. \u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Ffuture\" title=\"PublishPress Future Pro\" rel=\"nofollow ugc\">Click here to purchase the best plugin for scheduling WordPress content updates!\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch3>Options for Future Actions on Posts\u003C\u002Fh3>\n\u003Cp>With PublishPress Future, you can configure actions that will happen automatically to your content. Here are the changes you can choose for your posts:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Change the status to “Draft”.\u003C\u002Fli>\n\u003Cli>Delete the post.\u003C\u002Fli>\n\u003Cli>Send the post to the Trash.\u003C\u002Fli>\n\u003Cli>Change the status to “Private”.\u003C\u002Fli>\n\u003Cli>Enable the “Stick to the top of the blog” option.\u003C\u002Fli>\n\u003Cli>Disable the “Stick to the top of the blog” option.\u003C\u002Fli>\n\u003Cli>Remove all existing categories, and add new categories.\u003C\u002Fli>\n\u003Cli>Keep all existing categories, and add new categories.\u003C\u002Fli>\n\u003Cli>Keep all existing categories, except for those specified in this change.\u003C\u002Fli>\n\u003Cli>Move the post to a custom status (available in the Pro version)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fways-to-expire-posts\u002F\" rel=\"nofollow ugc\">Click here for details on scheduling post changes\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Custom Workflows to Schedule Content Changes\u003C\u002Fh3>\n\u003Cp>With PublishPress Future Pro, you can build Action Workflows. These allow you to update your content using custom workflows with multiple steps and schedules. Here are some examples of what you can do with Action Workflows:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Email the site admin when a post is updated.\u003C\u002Fli>\n\u003Cli>Change the post status to “Trash” a week after it was published.\u003C\u002Fli>\n\u003Cli>15 days after the post is published, move the post to the “Draft” status and add a new category.\u003C\u002Fli>\n\u003Cli>1 year after a post is published, send an email to the author asking them to check the content.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fworkflows\u002F\" rel=\"nofollow ugc\">Click here for details on workflows for changes\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Display the Action Date in Your Content\u003C\u002Fh3>\n\u003Cp>PublishPress Future allows you to place automatically show the expiry or action date inside your articles. The date will be added at the bottom of your post.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Ffooter-display\u002F\" rel=\"nofollow ugc\">Click here to see the Footer Display options\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>You can use shortcodes to show the expiration date inside your posts. You can customize the shortcode output with several formatting options.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fshortcodes-to-show-expiration-date\u002F\" rel=\"nofollow ugc\">Click here to see the shortcode options\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Choose Actions Defaults for Post Types\u003C\u002Fh3>\n\u003Cp>PublishPress Future can support any post type in WordPress. Go to Settings > PublishPress Future > Defaults and you can choose default actions for each post type.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fdefaults-for-post-types\u002F\" rel=\"nofollow ugc\">Click here to see the default options\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>PublishPress Future Email Notifications\u003C\u002Fh3>\n\u003Cp>The PublishPress Future plugin can send you email notifications when your content is changed. You can control the emails by going to Settings > PublishPress Future > General Settings.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Femail-notifications\u002F\" rel=\"nofollow ugc\">Click here to see the notification options\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Integrations With Other Plugins\u003C\u002Fh3>\n\u003Cp>In PublishPress Future Pro it is possible to schedule changes to your posts based on metadata. This makes it possible to integrate PublishPress Future with other plugins.  For example, you can create a date field in the Advanced Custom Fields plugin and use that to control the date for Future Actions.\u003C\u002Fp>\n\u003Cp>When you are using an integration, there are five types of data that you can update in PublishPress Future:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Action Status: This field specifies if the action should be enabled.\u003C\u002Fli>\n\u003Cli>Action Date: This field stores the scheduled date for the action.\u003C\u002Fli>\n\u003Cli>Action Type: This field stores the type of action that will be executed.\u003C\u002Fli>\n\u003Cli>Taxonomy Name: The taxonomy name for being used when selecting terms.\u003C\u002Fli>\n\u003Cli>Taxonomy Terms: A list of term’s IDs for being used by the action.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fmetadata-scheduling\u002F\" rel=\"nofollow ugc\">Click here to see how to integrate Future with other plugins\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Import the Future Actions\u003C\u002Fh3>\n\u003Cp>PublishPress Future Pro supports imports from external data sources. You can import posts and automatically create Future Actions associated with those posts.\u003C\u002Fp>\n\u003Cp>The best approach is to use the Metadata Scheduling feature. If you’re using a plugin such as WP All Import, you can match up the import tables with the fields you have selected in the Metadata Scheduling feature.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fimports-and-metadata-scheduling\u002F\" rel=\"nofollow ugc\">Click here to see how to import data for Future Actions\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Details on How Post Changes Works\u003C\u002Fh3>\n\u003Cp>For each expiration event, a custom cron job is scheduled. This can help reduce server overhead for busy sites. This plugin REQUIRES that WP-CRON is setup and functional on your webhost.  Some hosts do not support this, so please check and confirm if you run into issues using the plugin.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fscheduling-cron-jobs\u002F\" rel=\"nofollow ugc\">Click here to see the technical details for this plugin\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Logs for All Your Post Changes\u003C\u002Fh3>\n\u003Cp>PublishPress Future Pro allows you to keep a detailed record of all the post updates. PublishPress Future records several key data points for all actions:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>The post that the action was performed on.\u003C\u002Fli>\n\u003Cli>Details of the post update.\u003C\u002Fli>\n\u003Cli>When the change was made to the post.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Faction-logs\u002F\" rel=\"nofollow ugc\">Click here to see more about the logs feature\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Join PublishPress and get the Pro plugins\u003C\u002Fh3>\n\u003Cp>The Pro versions of the PublishPress plugins are well worth your investment. The Pro versions have extra features and faster support. \u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fpricing\u002F\" rel=\"nofollow ugc\">Click here to join PublishPress\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Join PublishPress and you’ll get access to these nine Pro plugins:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fauthors\" rel=\"nofollow ugc\">PublishPress Authors Pro\u003C\u002Fa> allows you to add multiple authors and guest authors to WordPress posts.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fblocks\" rel=\"nofollow ugc\">PublishPress Blocks Pro\u003C\u002Fa> has everything you need to build professional websites with the WordPress block editor.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fcapabilities\" rel=\"nofollow ugc\">PublishPress Capabilities Pro\u003C\u002Fa> is the plugin to manage your WordPress user roles, permissions, and capabilities.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fchecklists\" rel=\"nofollow ugc\">PublishPress Checklists Pro\u003C\u002Fa> enables you to define tasks that must be completed before content is published.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Ffuture\" rel=\"nofollow ugc\">PublishPress Future Pro\u003C\u002Fa>  is the plugin for scheduling changes to your posts.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fpermissions\" rel=\"nofollow ugc\">PublishPress Permissions Pro\u003C\u002Fa>  is the plugin for advanced WordPress permissions.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fpublishpress\" rel=\"nofollow ugc\">PublishPress Planner Pro\u003C\u002Fa> is the plugin for managing and scheduling WordPress content.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Frevisions\" rel=\"nofollow ugc\">PublishPress Revisions Pro\u003C\u002Fa> allows you to update your published pages with teamwork and precision.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fseries\" rel=\"nofollow ugc\">PublishPress Series Pro\u003C\u002Fa> enables you to group content together into a series\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Together, these plugins are a suite of powerful publishing tools for WordPress. If you need to create a professional workflow in WordPress, with moderation, revisions, permissions and more… then you should try PublishPress.\u003C\u002Fp>\n\u003Ch4>Bug Reports\u003C\u002Fh4>\n\u003Cp>Bug reports for PublishPress Future are welcomed in our \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fpublishpress\u002Fpublishpress-future\" rel=\"nofollow ugc\">repository on GitHub\u003C\u002Fa>. Please note that GitHub is not a support forum, and that issues that are not properly qualified as bugs will be closed.\u003C\u002Fp>\n","PublishPress Future can make scheduled changes to your content. You can unpublish posts, move posts to a new status, update the categories, and more.",100000,3997676,90,172,"2025-12-22T14:19:00.000Z","6.9.4","6.7","7.4",[20,21,22,23,24],"automatic-changes","schedule-changes","unpublish-posts","update-posts","workflows","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fpost-expirator\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpost-expirator.4.9.4.zip",95,5,0,"2026-01-11 00:00:00","2026-03-15T15:16:48.613Z",[33,48,60,72,83],{"id":34,"url_slug":35,"title":36,"description":37,"plugin_slug":4,"theme_slug":38,"affected_versions":39,"patched_in_version":6,"severity":40,"cvss_score":41,"cvss_vector":42,"vuln_type":43,"published_date":30,"updated_date":44,"references":45,"days_to_patch":47},"CVE-2025-69361","post-expirator-missing-authorization","Post Expirator \u003C= 4.9.3 - Missing Authorization","The Schedule Post Changes With PublishPress Future: Unpublish, Delete, Change Status, Trash, Change Categories plugin for WordPress is vulnerable to unauthorized access due to a missing capability check on a function in all versions up to, and including, 4.9.3. This makes it possible for authenticated attackers, with Contributor-level access and above, to perform an unauthorized action.",null,"\u003C=4.9.3","medium",4.3,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:N\u002FS:U\u002FC:N\u002FI:L\u002FA:N","Missing Authorization","2026-01-14 15:12:15",[46],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F06ac994a-1f49-4c7f-ba76-054deaf25c51?source=api-prod",4,{"id":49,"url_slug":50,"title":51,"description":52,"plugin_slug":4,"theme_slug":38,"affected_versions":39,"patched_in_version":6,"severity":40,"cvss_score":53,"cvss_vector":54,"vuln_type":43,"published_date":55,"updated_date":56,"references":57,"days_to_patch":59},"CVE-2025-14718","schedule-post-changes-with-publishpress-future-unpublish-delete-change-status-trash-change-categories-missing-authorizat-2","Schedule Post Changes With PublishPress Future: Unpublish, Delete, Change Status, Trash, Change Categories \u003C= 4.9.3 - Missing Authorization to Authenticated (Contributor+) Workflow Manipulation","The Schedule Post Changes With PublishPress Future plugin for WordPress is vulnerable to authorization bypass in all versions up to, and including, 4.9.3. This is due to the plugin not properly verifying that a user is authorized to perform an action. This makes it possible for authenticated attackers, with Contributor-level access and above, to create, update, delete, and publish malicious workflows that may automatically delete any post upon publication or update, including posts created by administrators.",5.4,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:N\u002FS:U\u002FC:N\u002FI:L\u002FA:L","2026-01-08 17:41:07","2026-01-09 06:34:57",[58],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F8198d81a-40c0-49c1-8c38-f5ef6fb911ad?source=api-prod",1,{"id":61,"url_slug":62,"title":63,"description":64,"plugin_slug":4,"theme_slug":38,"affected_versions":65,"patched_in_version":66,"severity":40,"cvss_score":41,"cvss_vector":67,"vuln_type":43,"published_date":68,"updated_date":69,"references":70,"days_to_patch":59},"CVE-2025-13741","schedule-post-changes-with-publishpress-future-unpublish-delete-change-status-trash-change-categories-missing-authorizat","Schedule Post Changes With PublishPress Future: Unpublish, Delete, Change Status, Trash, Change Categories \u003C= 4.9.2 - Missing Authorization to Authenticated (Contributor+) Authors' Emails Exposure","The Schedule Post Changes With PublishPress Future: Unpublish, Delete, Change Status, Trash, Change Categories plugin for WordPress is vulnerable to unauthorized access of data due to a missing capability check on the getAuthors function in all versions up to, and including, 4.9.2. This makes it possible for authenticated attackers, with Contributor-level access and above, to retrieve emails for all users with edit_posts capability.","\u003C=4.9.2","4.9.3","CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:N\u002FS:U\u002FC:L\u002FI:N\u002FA:N","2025-12-15 22:49:04","2025-12-16 11:15:46",[71],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F2f67da8c-da60-4c77-a8b8-7dfc027662e9?source=api-prod",{"id":73,"url_slug":74,"title":75,"description":76,"plugin_slug":4,"theme_slug":38,"affected_versions":77,"patched_in_version":78,"severity":40,"cvss_score":41,"cvss_vector":42,"vuln_type":43,"published_date":79,"updated_date":80,"references":81,"days_to_patch":59},"CVE-2025-13149","schedule-post-changes-with-publishpress-future-unpublish-delete-change-status-trash-change-categories-authenticated-auth","Schedule Post Changes With PublishPress Future: Unpublish, Delete, Change Status, Trash, Change Categories \u003C= 4.9.1 - Authenticated (Author+) Missing Authorization to Post\u002FPage Status Modification","The Schedule Post Changes With PublishPress Future: Unpublish, Delete, Change Status, Trash, Change Categories plugin for WordPress is vulnerable to unauthorized modification of data due to a missing authorization check on the \"saveFutureActionData\" function in all versions up to, and including, 4.9.1. This makes it possible for authenticated attackers, with author level access and above, to change the status of arbitrary posts and pages via the REST API endpoint.","\u003C=4.9.1","4.9.2","2025-11-20 19:53:09","2025-11-21 08:28:13",[82],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F82ea0ebc-08aa-4ef5-b6b1-c7c13715ef6d?source=api-prod",{"id":84,"url_slug":85,"title":86,"description":87,"plugin_slug":4,"theme_slug":38,"affected_versions":88,"patched_in_version":89,"severity":40,"cvss_score":41,"cvss_vector":42,"vuln_type":90,"published_date":91,"updated_date":92,"references":93,"days_to_patch":95},"CVE-2021-24783","post-expirator-contributor-arbitrary-post-schedule-deletion","Post Expirator \u003C= 2.5.1 - Contributor+ Arbitrary Post Schedule Deletion","The Post Expirator WordPress plugin before 2.6.0 does not have proper capability checks in place, which could allow users with a role as low as Contributor to schedule deletion of arbitrary posts.","\u003C=2.5.1","2.6.0","Incorrect Authorization","2021-10-11 00:00:00","2024-01-22 19:56:02",[94],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Ff0576cde-8d32-4f06-899a-a9ebff99d8ba?source=api-prod",834,{"slug":97,"display_name":7,"profile_url":8,"plugin_count":98,"total_installs":99,"avg_security_score":100,"avg_patch_time_days":101,"trust_score":102,"computed_at":103},"publishpress",11,272100,98,321,78,"2026-04-04T02:50:35.967Z",[105,128,152,174,191],{"slug":106,"name":107,"version":108,"author":109,"author_profile":110,"description":111,"short_description":112,"active_installs":113,"downloaded":114,"rating":115,"num_ratings":116,"last_updated":117,"tested_up_to":16,"requires_at_least":118,"requires_php":18,"tags":119,"homepage":123,"download_link":124,"security_score":125,"vuln_count":126,"unpatched_count":29,"last_vuln_date":127,"fetched_at":31},"mailchimp-for-woocommerce","Mailchimp for WooCommerce","6.0","Mailchimp","https:\u002F\u002Fprofiles.wordpress.org\u002Fmailchimp\u002F","\u003Cp>Join the 17 million customers who use Mailchimp, the world’s largest marketing automation platform, to develop their e-commerce marketing strategy. With the official Mailchimp for WooCommerce integration, your customers and their purchase data are automatically synced with your Mailchimp account, making it easy to send targeted campaigns, automatically follow up with customers post-purchase, recommend products, recover abandoned carts, and measure the ROI of your marketing efforts. And it’s completely free.\u003C\u002Fp>\n\u003Ch3>What you can do with this plugin\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Sync to your Audience in Mailchimp with purchase data.\u003C\u002Fli>\n\u003Cli>Sync new subscribers to your Audience when they create an account and opt-in.\u003C\u002Fli>\n\u003Cli>Set up marketing automations to remind customers about items they left in their cart or viewed on your site, win back lapsed customers, and follow up post-purchase. (Now available for free accounts!)\u003C\u002Fli>\n\u003Cli>Showcase product recommendations.\u003C\u002Fli>\n\u003Cli>Track and segment customers based on purchase history and purchase frequency.\u003C\u002Fli>\n\u003Cli>View detailed data on your marketing performance in your Mailchimp Dashboard.\u003C\u002Fli>\n\u003Cli>Find new customers, connect with current ones, and drive them all to your website with \u003Ca href=\"https:\u002F\u002Fmailchimp.com\u002Ffeatures\u002Ffacebook-ads\u002F\" rel=\"nofollow ugc\">Facebook\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fmailchimp.com\u002Ffeatures\u002Finstagram-ads\u002F\" rel=\"nofollow ugc\">Instagram\u003C\u002Fa> ads. Then, set up \u003Ca href=\"https:\u002F\u002Fmailchimp.com\u002Ffeatures\u002Fgoogle-remarketing-ads\u002F\" rel=\"nofollow ugc\">Google remarketing\u003C\u002Fa> ads to turn your site visitors into shoppers.\u003C\u002Fli>\n\u003Cli>Automatically embed a pop-up form that converts your website visitors to subscribers.\u003C\u002Fli>\n\u003Cli>Add discount codes created in WooCommerce to your emails and automations with a Promo Code content block\u003C\u002Fli>\n\u003Cli>Create beautiful landing pages that make it easy to highlight your products, promote a sale or giveaway, and grow your audience.\u003C\u002Fli>\n\u003Cli>This plugin is \u003Ca href=\"https:\u002F\u002Fwpml.org\u002Fplugin\u002Fmailchimp-for-woocommerce\u002F\" rel=\"nofollow ugc\">WPML compatible\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Important Notes\u003C\u002Fh3>\n\u003Cp>This plugin supports our most powerful API 3.0 features, and is intended for users who have not yet integrated their WooCommerce stores with Mailchimp.\u003Cbr \u002F>\nYou can run this new integration at the same time as your current WooCommerce integration for Mailchimp. However, data from the older integration will display separately in subscriber profiles, and can’t be used with e-commerce features that require API 3.0.\u003Cbr \u002F>\nWordPress.com compatibility is limited to Business tier users only.\u003C\u002Fp>\n","Connect your store to your Mailchimp audience to track sales, create targeted emails, send abandoned cart emails, and more.",300000,23116904,80,725,"2026-03-10T13:15:00.000Z","6.2",[120,121,122,24],"ecommerce","email","mailchimp","https:\u002F\u002Fmailchimp.com\u002Fconnect-your-store\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmailchimp-for-woocommerce.6.0.zip",99,2,"2022-08-03 00:00:00",{"slug":129,"name":130,"version":131,"author":132,"author_profile":133,"description":134,"short_description":135,"active_installs":136,"downloaded":137,"rating":138,"num_ratings":47,"last_updated":139,"tested_up_to":140,"requires_at_least":141,"requires_php":142,"tags":143,"homepage":149,"download_link":150,"security_score":125,"vuln_count":59,"unpatched_count":29,"last_vuln_date":151,"fetched_at":31},"themarketer","theMarketer – Email marketing, Newsletters, Automation & Loyalty for Woocommerce","1.5.5","themarketer2023","https:\u002F\u002Fprofiles.wordpress.org\u002Fthemarketer2023\u002F","\u003Cp>theMarketer is an \u003Cem>email marketing & automation platform\u003C\u002Fem>, which also provides a powerful \u003Cem>Loyalty Program\u003C\u002Fem> for eCommerce businesses. This add-on tracks every action that you visitors make on your website, in order to provide a personalized experience for each and every user.\u003C\u002Fp>\n\u003Cp>Being one of the first companies to provide the necessary tools for an affordable Loyalty Program, https:\u002F\u002Fthemarketer.com\u002F offers you the necessary tools to engage your customers on multiple channels, such as Email, Push notifications and SMS, while also enabling you to increase customer retention and lifetime value with our powerful Loyalty Program.\u003C\u002Fp>\n\u003Ch3>theMarketer Features:\u003C\u002Fh3>\n\u003Cp>\u003Cem>Newsletters\u003C\u002Fem> – The starting point of every email marketing journey. You can use our pre-defined templates or build your own using our visual builder. You can send your first campaign in a matter of minutes.\u003C\u002Fp>\n\u003Cp>\u003Cem>Unique Campaigns\u003C\u002Fem> – Create personalized newsletter that matter across all channels. Be anywhere your customers are and deliver a consistent and personalized experience through email, SMS, and push notifications.\u003C\u002Fp>\n\u003Cp>\u003Cem>Marketing automation\u003C\u002Fem> – Impeccable customer journeys that drive sales on autopilot. Design action-based, code-free, targeted automations that engage and convert around the clock.\u003C\u002Fp>\n\u003Cp>\u003Cem>Feedback and Reviews\u003C\u002Fem> – Build trust and manage your online reputation. Collect, monitor, and respond to your reviews quicker and easier to give your customers a voice, develop a trustworthy brand, and grow your sales.\u003C\u002Fp>\n\u003Cp>\u003Cem>Loyalty Program\u003C\u002Fem> – Meet the loyalty program that will transform your business. Stop burning your budget on online ads. Retain your hard-earned customers and maximize their engagement and lifetime value with powerful and catchy solutions designed for your business.\u003C\u002Fp>\n\u003Cp>\u003Cem>Referral Program\u003C\u002Fem> – From new customers to Brand Ambassadors. Reward users and incentivize them to share your brand with their community and friends and grow your customer base in the most powerful and cost-effective way.\u003C\u002Fp>\n\u003Cp>\u003Cem>Launcher\u003C\u002Fem> – Meet your most powerful online shop assistant. Skyrocket your conversion rate and encourage your visitors to engage with your shop and become part of your community with theMarketer’s handy launcher.\u003C\u002Fp>\n\u003Ch3>Pricing\u003C\u002Fh3>\n\u003Cp>\u003Cem>Free under 1000 subscribers.\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>theMarketer paid plans start from as low as 20 EUR\u002Fmonth. Subscription prices are calculated based on the number of unique subscribers your store has.\u003C\u002Fp>\n","Collect subscribers. Send newsletters. Create 1:1 personalised emails using dynamic blocks. Activate one of almost 30 predefined workflows.",600,9543,100,"2026-03-03T12:11:00.000Z","6.8.5","4.6","5.6",[144,145,146,147,148],"email-marketing","email-workflows","loyalty-program","marketing-automation","newsletter","https:\u002F\u002Fthemarketer.com\u002Fintegrations\u002Fwoocommerce","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fthemarketer.1.5.5.zip","2025-05-07 00:00:00",{"slug":153,"name":154,"version":155,"author":156,"author_profile":157,"description":158,"short_description":159,"active_installs":160,"downloaded":161,"rating":13,"num_ratings":162,"last_updated":163,"tested_up_to":164,"requires_at_least":165,"requires_php":166,"tags":167,"homepage":171,"download_link":172,"security_score":173,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"gravity-forms-post-updates","Gravity Forms: Post Updates","1.2.23","Jupitercow","https:\u002F\u002Fprofiles.wordpress.org\u002Fjcow\u002F","\u003Cp>\u003Cstrong>Requires PHP 5.3 or greater\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Allows you to use Gravity Forms to update any post on the front end. If you use the “Gravity Forms + Custom Post Types”, you can even update custom post types and use custom taxonomies.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Supports custom field file uploading and deletion with thumbnails or mime type icons for existing items.\u003C\u002Fli>\n\u003Cli>Fixed a bugs on multi selects and checkboxes.\u003C\u002Fli>\n\u003Cli>Fixed bug on Categories.\u003C\u002Fli>\n\u003Cli>Completely removed the ability to delete posts.\u003C\u002Fli>\n\u003Cli>There are some filters to customize things now.\u003C\u002Fli>\n\u003Cli>Adds non-query-var template method to setup a form.\u003C\u002Fli>\n\u003Cli>Adds a really basic shortcode to setup a form (UPDATE: This is still supported, but it is better to use the addition, below, to the gravityform shortcode).\u003C\u002Fli>\n\u003Cli>Adds an additional attribute to the gravityform shortcode: “update”\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>SHORTCODE\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>[gravityform id=\"1\" update] \u002F\u002F Loads current post for editing\n\n[gravityform id=\"1\" update=\"34\"] \u002F\u002F Loads post where ID=34 for editing\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>We worked with Rocketgenius, makers of Gravity Forms, to get a small upgrade added that allows us to extend their shortcode, so now you can simply add the “update” attribute to the normal “gravityform” shortcode. If you only add “update”, it will load the current post in to update. If you add an integer to the update attribute, it will use that to load a post by its ID.\u003C\u002Fp>\n\u003Ch4>URL QUERY VARIABLE\u003C\u002Fh4>\n\u003Col>\n\u003Cli>At the heart, it is pretty similar to how it was, but now there is a nonce required to activate it.\u003C\u002Fli>\n\u003Cli>\n\u003Cp>So you should use the action to create your links.\u003C\u002Fp>\n\u003Cp>do_action(‘gform_update_post\u002Fedit_link’);\u003C\u002Fp>\n\u003Cp>do_action(‘gform_update_post\u002Fedit_link’, array(\u003Cbr \u002F>\n    ‘post_id’ => $post->ID,\u003Cbr \u002F>\n    ‘url’     => home_url(‘\u002Fedit_post\u002F’),\u003Cbr \u002F>\n) );\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Arguments (query string or array)\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>post_id\u003C\u002Fcode> (int) (optional) The id of the post you want to edit. Default: global $post->ID\u003C\u002Fli>\n\u003Cli>\u003Ccode>url\u003C\u002Fcode> (string|int) (optional) Either the full url of the page where your edit form resides, or an id for the page\u002Fpost where the edit form resides. Default: get_permalink()\u003C\u002Fli>\n\u003Cli>\u003Ccode>text\u003C\u002Fcode> (string) (optional) The link text. Default: “Edit Post”\u003C\u002Fli>\n\u003Cli>\u003Ccode>title\u003C\u002Fcode> (string) (optional) The title attribute of the anchor tag. Default: (text) parameter\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Get just the URL\u003C\u002Fh3>\n\u003Cp>This will return a basic edit url\u003C\u002Fp>\n\u003Cpre>\u003Ccode>apply_filters('gform_update_post\u002Fedit_url', '');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Specify post to edit (post_id) and post that holds the edit form (url)\u003C\u002Fp>\n\u003Cpre>\u003Ccode>apply_filters('gform_update_post\u002Fedit_url', 1, home_url('\u002Fedit_post\u002F'));\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Shortcode to show the edit link\u003C\u002Fh3>\n\u003Cpre>\u003Ccode>[gform_update_post_edit_link]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Specify post to edit (post_id) and post that holds the edit form (url)\u003Cbr \u002F>\n    [gform_update_post_edit_link post_id=1 url=6]\u003C\u002Fp>\n\u003Ch4>IN TEMPLATE\u003C\u002Fh4>\n\u003Cp>You can use the action to force a form show a specific post:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>do_action('gform_update_post\u002Fsetup_form');\n\ndo_action('gform_update_post\u002Fsetup_form', $post->ID);\n\ndo_action('gform_update_post\u002Fsetup_form', array('post_id' => $post->ID, 'form_id' => $form_id));\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Parameters\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>post_id\u003C\u002Fcode> (int|array) (optional) The id of the post you want to edit or an array with post id and\u002For form id. This allows you to specify the form id, so that update functionality does not get applied to other forms on the page. Default: global $post->ID\u003C\u002Fli>\n\u003C\u002Ful>\n","Allows you to use Gravity Forms to update any post on the front end.",300,14969,13,"2015-07-02T20:53:00.000Z","4.2.39","3.6.1","",[168,169,170,23],"front-end","frontend","gravity-forms","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fgravity-forms-post-updates\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgravity-forms-post-updates.1.2.23.zip",85,{"slug":175,"name":176,"version":177,"author":178,"author_profile":179,"description":180,"short_description":181,"active_installs":182,"downloaded":183,"rating":29,"num_ratings":29,"last_updated":184,"tested_up_to":140,"requires_at_least":185,"requires_php":186,"tags":187,"homepage":189,"download_link":190,"security_score":138,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"everlytic","Everlytic for WooCommerce","1.8.4","ade1705","https:\u002F\u002Fprofiles.wordpress.org\u002Fade1705\u002F","\u003Cp>Integrate with \u003Ca href=\"https:\u002F\u002Feverlytic.com\" rel=\"nofollow ugc\">Everlytic\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>What you can do with this plugin\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Connect your WooCommerce store with Everlytic.\u003C\u002Fli>\n\u003Cli>Send abandoned cart emails.\u003C\u002Fli>\n\u003Cli>Pull your products directly into the Everlytic builder for easy mailer design.\u003C\u002Fli>\n\u003Cli>Create ecommerce workflows.\u003C\u002Fli>\n\u003Cli>Sync your contacts between WooCommerce and Everlytic.\u003C\u002Fli>\n\u003Cli>Insert your coupons directly from your store into the Everlytic Builder.\u003C\u002Fli>\n\u003Cli>Trigger a workflow when a customer purchases from your store.\u003C\u002Fli>\n\u003C\u002Ful>\n","Connect your store to Everlytic for E-Commerce",30,4157,"2025-07-23T18:59:00.000Z","4.9","7.0",[120,121,188,24],"evelytic","http:\u002F\u002Feverlytic.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Feverlytic.1.8.4.zip",{"slug":192,"name":193,"version":194,"author":195,"author_profile":196,"description":197,"short_description":198,"active_installs":199,"downloaded":200,"rating":29,"num_ratings":29,"last_updated":166,"tested_up_to":201,"requires_at_least":185,"requires_php":166,"tags":202,"homepage":206,"download_link":207,"security_score":138,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":208},"vextras-woocommerce","Vextras for WooCommerce","2.0.2","ryanhungate","https:\u002F\u002Fprofiles.wordpress.org\u002Fryanhungate\u002F","\u003Cp>\u003Cstrong>Integrations and messaging designed for online retailers\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Vextras allows WooCommerce retailers to send targeted e-mails based on customer behavior like abandoned carts, customer reviews, rewards and more. In addition, shop owners can sync their e-commerce store with software they depend on to run their businesses.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Messaging Workflows\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cem>Targeted e-mail messaging that will create sales & save time\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>Trigger abandoned cart emails, first-time buyer rewards, customer reminders, order status updates and more from our pre-built \u003Ca href=\"https:\u002F\u002Fwww.vextras.com\u002Fworkflows\" rel=\"nofollow ugc\">workflows\u003C\u002Fa>. Target your customers when it matters the most in one simple, easy-to-use rule builder.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Inject live data from your store to create relevant, personalized emails.\u003C\u002Fli>\n\u003Cli>Send abandoned cart reminders, invoices and much more.\u003C\u002Fli>\n\u003Cli>Choose a workflow, set criteria and start sending messages to your customers in minutes.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Apps\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cem>Sync your e-commerce store with software you already use\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>Every \u003Ca href=\"https:\u002F\u002Fwww.vextras.com\u002Fapps\" rel=\"nofollow ugc\">app integration\u003C\u002Fa> we’ve built goes far beyond a typical plugin. From the start we’ve created powerful, automated connections with the online retailer in mind. Now, you can connect with great cloud software like MailChimp, Xero, and Zapier in just a few clicks.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Real-time data feeds.\u003C\u002Fli>\n\u003Cli>Integrate your online store with hundreds of apps.\u003C\u002Fli>\n\u003Cli>No complicated set-ups or recipes to configure, everything just works.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Product Manager\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>If you run an e-commerce store, you’ve probably spent quite a bit of time working with product information you get from suppliers. It may not sound like a big deal, but it can be a real headache for store owners. When you consider the variety of suppliers and the quality of the information they provide, it’s difficult to manage without resorting to home-grown programs or even worse – Excel or Access. These solutions may work, but they’re slow, difficult to upgrade and require a lot of manual intervention to work correctly. Until now, there hasn’t been a single consolidated system that can effectively manage your product information.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Connect your product catalog with your vendors\u003C\u002Fli>\n\u003Cli>Effortlessly update pricing and inventory\u003C\u002Fli>\n\u003Cli>Exclude, add, update and merge product information\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>More Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Intuitive dashboard – Track key metrics of your store’s performance at various time intervals.\u003C\u002Fli>\n\u003Cli>App metrics – See key stats for each app integration. Information is compiled in real-time.\u003C\u002Fli>\n\u003Cli>Valuable customer insights – See historical sales stats, what products are purchased, and even how often customers buy from your store.\u003C\u002Fli>\n\u003Cli>Rich customer profiles – Profile details are automatically created from order information with links to useful data about your customers.\u003C\u002Fli>\n\u003Cli>Customer workflow stats – Gain unique perspective about your customers behavior and see which e-mails convert the best.\u003C\u002Fli>\n\u003Cli>Send direct messages – Easily reach out to your customers inside any customer profile.\u003C\u002Fli>\n\u003Cli>Order details – See information about products ordered and easily access product pages in one-click.\u003C\u002Fli>\n\u003Cli>Advanced workflow rule logic – Target your customers with precision. Dial in filters for products ordered, by opt-in preference and much more, depending on the workflow activated.\u003C\u002Fli>\n\u003Cli>White label e-mail sending – Make delivery of any workflows message appear like it’s coming from your store’s domain.\u003C\u002Fli>\n\u003Cli>Dynamic workflow data – Personalize any e-mail workflow with hundreds of content variables that are available from your store’s API.\u003C\u002Fli>\n\u003Cli>Starter e-mail templates – Design your own HTML templates or use our starter templates to get going in no time.\u003C\u002Fli>\n\u003Cli>Google UTM tracking – We automatically apply Google Analytics UTM tracking parameters to your workflow messages, so you can keep all of your site’s reporting in sync.\u003C\u002Fli>\n\u003Cli>Free training – If you need help we’re happy to schedule a call anytime. We also have an extensive docs area that’s available 24\u002F7.\u003C\u002Fli>\n\u003Cli>No commitment – There are no long-term contracts when you use Vextras. Pay as long as you feel our product provides value in building your online business.\u003C\u002Fli>\n\u003C\u002Ful>\n","Vextras is a must-have plugin for any WooCommerce store that wants to drive sales, stay organized and help their customers.",10,1965,"5.6.17",[203,121,204,205,24],"automation","marketing","messaging","https:\u002F\u002Fvextras.com\u002Fconnect-your-store\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fvextras-woocommerce.2.0.2.zip","2026-03-15T10:48:56.248Z",{"attackSurface":210,"codeSignals":238,"taintFlows":364,"riskAssessment":477,"analyzedAt":492},{"hooks":211,"ajaxHandlers":226,"restRoutes":227,"shortcodes":228,"cronEvents":237,"entryPointCount":126,"unprotectedCount":29},[212,218,224],{"type":213,"name":214,"callback":215,"file":216,"line":217},"filter","post-expirator_wp_reviews_allow_display_notice","shouldDisplayBanner","legacy\\classes\\Reviews.class.php",22,{"type":219,"name":220,"callback":221,"file":222,"line":223},"action","init","closure","post-expirator.php",132,{"type":219,"name":220,"callback":221,"priority":199,"file":222,"line":225},136,[],[],[229,234],{"tag":230,"callback":231,"file":232,"line":233},"futureaction","renderShortcode","src\\Modules\\Expirator\\Controllers\\ShortcodeController.php",48,{"tag":235,"callback":231,"file":232,"line":236},"postexpirator",53,[],{"dangerousFunctions":239,"sqlUsage":240,"outputEscaping":255,"fileOperations":59,"externalRequests":29,"nonceChecks":362,"capabilityChecks":285,"bundledLibraries":363},[],{"prepared":241,"raw":47,"locations":242},73,[243,247,249,252],{"file":244,"line":245,"context":246},"src\\Framework\\Database\\DBTableSchemaHandler.php",372,"$wpdb->query() with variable interpolation",{"file":244,"line":248,"context":246},378,{"file":250,"line":251,"context":246},"src\\Framework\\Logger\\Logger.php",94,{"file":253,"line":254,"context":246},"src\\Modules\\Expirator\\Migrations\\V30104ArgsColumnLength.php",79,{"escaped":256,"rawEcho":257,"locations":258},324,49,[259,262,264,266,269,271,274,277,279,282,284,286,288,290,293,295,297,299,301,303,305,307,308,309,310,312,315,317,319,322,323,325,327,329,331,333,335,337,338,340,343,346,347,349,350,352,354,357,359],{"file":260,"line":162,"context":261},"src\\Modules\\Debug\\Views\\raw-debug-log.html.php","raw output",{"file":263,"line":223,"context":261},"src\\Modules\\Expirator\\Controllers\\PostListController.php",{"file":263,"line":265,"context":261},235,{"file":267,"line":268,"context":261},"src\\Modules\\Expirator\\Tables\\ScheduledActionsTable.php",343,{"file":267,"line":270,"context":261},831,{"file":272,"line":273,"context":261},"src\\Modules\\Workflows\\Controllers\\PostsList.php",88,{"file":275,"line":276,"context":261},"src\\Modules\\Workflows\\Controllers\\WorkflowsList.php",716,{"file":275,"line":278,"context":261},797,{"file":280,"line":281,"context":261},"src\\Views\\ad-banner-right-sidebar.php",12,{"file":280,"line":283,"context":261},18,{"file":280,"line":285,"context":261},24,{"file":280,"line":287,"context":261},34,{"file":280,"line":289,"context":261},41,{"file":291,"line":292,"context":261},"src\\Views\\expire-column.php",68,{"file":291,"line":294,"context":261},74,{"file":291,"line":296,"context":261},115,{"file":298,"line":162,"context":261},"src\\Views\\menu-debug-log.php",{"file":298,"line":300,"context":261},15,{"file":298,"line":302,"context":261},39,{"file":298,"line":304,"context":261},59,{"file":298,"line":306,"context":261},63,{"file":298,"line":115,"context":261},{"file":298,"line":273,"context":261},{"file":298,"line":138,"context":261},{"file":298,"line":311,"context":261},102,{"file":313,"line":314,"context":261},"src\\Views\\menu-diagnostics.php",124,{"file":313,"line":316,"context":261},135,{"file":313,"line":318,"context":261},144,{"file":320,"line":321,"context":261},"src\\Views\\menu-display.php",62,{"file":320,"line":138,"context":261},{"file":320,"line":324,"context":261},231,{"file":320,"line":326,"context":261},247,{"file":320,"line":328,"context":261},308,{"file":320,"line":330,"context":261},313,{"file":320,"line":332,"context":261},319,{"file":320,"line":334,"context":261},325,{"file":320,"line":336,"context":261},331,{"file":320,"line":268,"context":261},{"file":320,"line":339,"context":261},351,{"file":341,"line":342,"context":261},"src\\Views\\menu-general.php",46,{"file":344,"line":345,"context":261},"src\\Views\\menu-notifications.php",65,{"file":344,"line":241,"context":261},{"file":344,"line":348,"context":261},93,{"file":344,"line":311,"context":261},{"file":344,"line":351,"context":261},148,{"file":344,"line":353,"context":261},156,{"file":355,"line":356,"context":261},"src\\Views\\tabs-future-actions.php",66,{"file":358,"line":321,"context":261},"src\\Views\\tabs-settings.php",{"file":360,"line":361,"context":261},"src\\Views\\taxonomy-field.php",14,17,[],[365,383,391,406,414,423,455],{"entryPoint":366,"graph":367,"unsanitizedCount":59,"severity":40},"redirectToWorkflowEditor (src\\Modules\\Workflows\\Controllers\\WorkflowEditor.php:87)",{"nodes":368,"edges":380},[369,374],{"id":370,"type":371,"label":372,"file":373,"line":125},"n0","source","$_GET","src\\Modules\\Workflows\\Controllers\\WorkflowEditor.php",{"id":375,"type":376,"label":377,"file":373,"line":378,"wp_function":379},"n1","sink","wp_redirect() [Open Redirect]",122,"wp_redirect",[381],{"from":370,"to":375,"sanitized":382},false,{"entryPoint":384,"graph":385,"unsanitizedCount":59,"severity":40},"\u003CWorkflowEditor> (src\\Modules\\Workflows\\Controllers\\WorkflowEditor.php:0)",{"nodes":386,"edges":389},[387,388],{"id":370,"type":371,"label":372,"file":373,"line":125},{"id":375,"type":376,"label":377,"file":373,"line":378,"wp_function":379},[390],{"from":370,"to":375,"sanitized":382},{"entryPoint":392,"graph":393,"unsanitizedCount":29,"severity":405},"renderNotices (src\\Framework\\WordPress\\Facade\\NoticeFacade.php:68)",{"nodes":394,"edges":402},[395,398],{"id":370,"type":371,"label":396,"file":397,"line":102},"$_GET (x2)","src\\Framework\\WordPress\\Facade\\NoticeFacade.php",{"id":375,"type":376,"label":399,"file":397,"line":400,"wp_function":401},"echo() [XSS]",81,"echo",[403],{"from":370,"to":375,"sanitized":404},true,"low",{"entryPoint":407,"graph":408,"unsanitizedCount":29,"severity":405},"\u003CNoticeFacade> (src\\Framework\\WordPress\\Facade\\NoticeFacade.php:0)",{"nodes":409,"edges":412},[410,411],{"id":370,"type":371,"label":396,"file":397,"line":102},{"id":375,"type":376,"label":399,"file":397,"line":400,"wp_function":401},[413],{"from":370,"to":375,"sanitized":404},{"entryPoint":415,"graph":416,"unsanitizedCount":59,"severity":405},"\u003Cmenu-debug-log> (src\\Views\\menu-debug-log.php:0)",{"nodes":417,"edges":421},[418,420],{"id":370,"type":371,"label":372,"file":298,"line":419},29,{"id":375,"type":376,"label":399,"file":298,"line":115,"wp_function":401},[422],{"from":370,"to":375,"sanitized":382},{"entryPoint":424,"graph":425,"unsanitizedCount":126,"severity":454},"handleCancelScheduledActions (src\\Modules\\Workflows\\Controllers\\WorkflowsList.php:486)",{"nodes":426,"edges":449},[427,430,433,439,442,445],{"id":370,"type":371,"label":428,"file":275,"line":429},"$_POST",517,{"id":375,"type":431,"label":432,"file":275,"line":429},"transform","→ workflowHasScheduledActions()",{"id":434,"type":376,"label":435,"file":436,"line":437,"wp_function":438},"n2","get_var() [SQLi]","src\\Modules\\Workflows\\Models\\ScheduledActionsModel.php",290,"get_var",{"id":440,"type":371,"label":428,"file":275,"line":441},"n3",533,{"id":443,"type":431,"label":444,"file":275,"line":441},"n4","→ cancelWorkflowScheduledActions()",{"id":446,"type":376,"label":447,"file":436,"line":351,"wp_function":448},"n5","query() [SQLi]","query",[450,451,452,453],{"from":370,"to":375,"sanitized":382},{"from":375,"to":434,"sanitized":382},{"from":440,"to":443,"sanitized":382},{"from":443,"to":446,"sanitized":382},"high",{"entryPoint":456,"graph":457,"unsanitizedCount":126,"severity":454},"\u003CWorkflowsList> (src\\Modules\\Workflows\\Controllers\\WorkflowsList.php:0)",{"nodes":458,"edges":471},[459,461,463,464,465,466,467,469],{"id":370,"type":371,"label":428,"file":275,"line":460},329,{"id":375,"type":376,"label":399,"file":275,"line":462,"wp_function":401},575,{"id":434,"type":371,"label":428,"file":275,"line":429},{"id":440,"type":431,"label":432,"file":275,"line":429},{"id":443,"type":376,"label":435,"file":436,"line":437,"wp_function":438},{"id":446,"type":371,"label":428,"file":275,"line":441},{"id":468,"type":431,"label":444,"file":275,"line":441},"n6",{"id":470,"type":376,"label":447,"file":436,"line":351,"wp_function":448},"n7",[472,473,474,475,476],{"from":370,"to":375,"sanitized":404},{"from":434,"to":440,"sanitized":382},{"from":440,"to":443,"sanitized":382},{"from":446,"to":468,"sanitized":382},{"from":468,"to":470,"sanitized":382},{"summary":478,"deductions":479},"The Post Expirator plugin, version 4.9.4, exhibits a generally positive security posture, adhering to many best practices. The static analysis reveals a robust use of prepared statements for SQL queries (95%) and proper output escaping for the majority of outputs (87%).  Furthermore, the plugin implements a significant number of nonce and capability checks, indicating an effort to secure its functionalities.  The absence of critical or high-severity taint flows, alongside a lack of unpatched CVEs, further reinforces this positive outlook.\n\nHowever, there are areas for concern. The presence of 5 taint flows with unsanitized paths, specifically identified as high severity, is a notable risk. While the static analysis did not directly label these as exploitable vulnerabilities, unsanitized paths can often lead to privilege escalation or data exposure if combined with other factors. The plugin's history of 5 medium-severity CVEs, primarily related to missing or incorrect authorization, suggests a recurring pattern of authorization enforcement issues. While these are currently patched, this history warrants vigilance. The plugin also has a very small attack surface with no unprotected entry points, which is a significant strength.",[480,482,484,487,489],{"reason":481,"points":281},"High severity unsanitized path taint flows (2)",{"reason":483,"points":199},"5 medium severity CVEs in history",{"reason":485,"points":486},"5 unsanitized path taint flows",8,{"reason":488,"points":47},"13% of SQL queries not using prepared statements",{"reason":490,"points":491},"13% of outputs not properly escaped",3,"2026-03-16T17:08:42.071Z",{"wat":494,"direct":511},{"assetPaths":495,"generatorPatterns":504,"scriptPaths":505,"versionParams":506},[496,497,498,499,500,501,502,503],"\u002Fwp-content\u002Fplugins\u002Fpost-expirator\u002Fassets\u002Fcss\u002Ffrontend.css","\u002Fwp-content\u002Fplugins\u002Fpost-expirator\u002Fassets\u002Fcss\u002Ffrontend.min.css","\u002Fwp-content\u002Fplugins\u002Fpost-expirator\u002Fassets\u002Fcss\u002Fsettings.css","\u002Fwp-content\u002Fplugins\u002Fpost-expirator\u002Fassets\u002Fcss\u002Fsettings.min.css","\u002Fwp-content\u002Fplugins\u002Fpost-expirator\u002Fassets\u002Fjs\u002Ffrontend.js","\u002Fwp-content\u002Fplugins\u002Fpost-expirator\u002Fassets\u002Fjs\u002Ffrontend.min.js","\u002Fwp-content\u002Fplugins\u002Fpost-expirator\u002Fassets\u002Fjs\u002Fsettings.js","\u002Fwp-content\u002Fplugins\u002Fpost-expirator\u002Fassets\u002Fjs\u002Fsettings.min.js",[],[500,502],[507,508,509,510],"post-expirator\u002Fassets\u002Fcss\u002Ffrontend.css?ver=","post-expirator\u002Fassets\u002Fcss\u002Fsettings.css?ver=","post-expirator\u002Fassets\u002Fjs\u002Ffrontend.js?ver=","post-expirator\u002Fassets\u002Fjs\u002Fsettings.js?ver=",{"cssClasses":512,"htmlComments":515,"htmlAttributes":517,"restEndpoints":520,"jsGlobals":523,"shortcodeOutput":526},[513,514],"post-expirator-frontend","post-expirator-settings-page",[516],"\u003C!-- Post Expirator Settings -->",[518,519],"data-post-expirator-field","data-post-expirator-post-id",[521,522],"\u002Fwp-json\u002Fpost-expirator\u002Fv1\u002Fsettings","\u002Fwp-json\u002Fpost-expirator\u002Fv1\u002Fstatus",[524,525],"postExpiratorSettings","PostExpiratorFrontend",[527],"[post-expirator-status]"]