{"id":276937,"date":"2026-02-07T11:41:58","date_gmt":"2026-02-07T11:41:58","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/contentflow-manager\/"},"modified":"2026-02-07T21:11:44","modified_gmt":"2026-02-07T21:11:44","slug":"content-flow-manager","status":"publish","type":"plugin","link":"https:\/\/ro.wordpress.org\/plugins\/content-flow-manager\/","author":16447006,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.2","stable_tag":"1.0.2","tested":"6.9.4","requires":"6.0","requires_php":"8.0","requires_plugins":null,"header_name":"Content Flow Manager","header_author":"Lagostechboy (classic40)","header_description":"Adds an editorial content review workflow to WordPress.","assets_banners_color":"ddf0f0","last_updated":"2026-02-07 21:11:44","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/lagostechboy.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":196,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.1":{"tag":"1.0.1","author":"classic40","date":"2026-02-07 11:41:24"},"1.0.2":{"tag":"1.0.2","author":"classic40","date":"2026-02-07 21:11:44"}},"upgrade_notice":{"1.0.2":"<ul>\n<li>Fixed issue where restoring a trashed post caused an error<\/li>\n<li>Improved workflow handling for system-triggered post state changes<\/li>\n<\/ul>\n\n<hr \/>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3455896,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3455896,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3456086,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3456086,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.1","1.0.2"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3456086,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3456086,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3456086,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3456086,"resolution":"4","location":"assets","locale":""}},"screenshots":{"1":"Post list view showing content marked as <strong>Pending Review<\/strong>","2":"Post editor review panel where editors\/admins approve or reject content with notes","3":"Author dashboard view displaying review feedback and content status","4":"Admin\/editor dashboard showing full content review and approval history"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[255415,255416,96456,9233,255417],"plugin_category":[53],"plugin_contributors":[255391],"plugin_business_model":[],"class_list":["post-276937","plugin","type-plugin","status-publish","hentry","plugin_tags-content-approval","plugin_tags-editorial-review","plugin_tags-editorial-workflow","plugin_tags-multi-author","plugin_tags-publishing-workflow","plugin_category-ratings-and-reviews","plugin_contributors-classic40","plugin_committers-classic40"],"banners":{"banner":"https:\/\/ps.w.org\/content-flow-manager\/assets\/banner-772x250.png?rev=3456086","banner_2x":"https:\/\/ps.w.org\/content-flow-manager\/assets\/banner-1544x500.png?rev=3456086","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/content-flow-manager\/assets\/icon-128x128.png?rev=3455896","icon_2x":"https:\/\/ps.w.org\/content-flow-manager\/assets\/icon-256x256.png?rev=3455896","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/content-flow-manager\/assets\/screenshot-1.png?rev=3456086","caption":"Post list view showing content marked as <strong>Pending Review<\/strong>"},{"src":"https:\/\/ps.w.org\/content-flow-manager\/assets\/screenshot-2.png?rev=3456086","caption":"Post editor review panel where editors\/admins approve or reject content with notes"},{"src":"https:\/\/ps.w.org\/content-flow-manager\/assets\/screenshot-3.png?rev=3456086","caption":"Author dashboard view displaying review feedback and content status"},{"src":"https:\/\/ps.w.org\/content-flow-manager\/assets\/screenshot-4.png?rev=3456086","caption":"Admin\/editor dashboard showing full content review and approval history"}],"raw_content":"<!--section=description-->\n<p><strong>Content Flow Manager<\/strong> adds a structured, professional editorial review workflow to WordPress.<\/p>\n\n<p>It is designed for <strong>multi-author blogs, editorial teams, news platforms, content agencies, and organizations<\/strong> that need to review, approve, or reject content <em>before<\/em> it is published.<\/p>\n\n<p>Instead of relying on informal checks, chat messages, or external tools, Content Flow Manager introduces a clear approval process directly inside the WordPress editor.<\/p>\n\n\n\n<h3>Why Content Flow Manager?<\/h3>\n\n<p>WordPress is powerful \u2014 but out of the box, it needs a true editorial approval layer.<\/p>\n\n<p>On multi-author sites, this often leads to:\n- Posts being published accidentally\n- Feedback scattered across emails or chat tools\n- No clear approval history\n- Editors lacking visibility into content status<\/p>\n\n<p><strong>Content Flow Manager bridges this gap<\/strong> by introducing a structured review step between content creation and publication \u2014 without changing how authors write.<\/p>\n\n\n\n<h3>Real-World Use Cases<\/h3>\n\n<p><strong>1. Multi-Author Blogs<\/strong><br \/>\nAuthors create content freely while editors retain full control over what gets published.<br \/>\nPosts are submitted for review, feedback is given directly in WordPress, and only approved content goes live.<\/p>\n\n<p><strong>2. News &amp; Editorial Websites<\/strong><br \/>\nDesigned for editorial teams that need accountability and traceability.<br \/>\nEditors can approve or reject stories with notes, creating a clear approval trail for every post.<\/p>\n\n<p><strong>3. Corporate &amp; Marketing Teams<\/strong><br \/>\nMarketing teams draft announcements, campaigns, or updates while managers review and approve content before publishing \u2014 preventing mistakes and maintaining brand consistency.<\/p>\n\n<p><strong>4. Educational &amp; Community Platforms<\/strong><br \/>\nIdeal for platforms where instructors, moderators, or administrators must review submitted content before it becomes public.<\/p>\n\n<p><strong>5. Agencies Managing Client Content<\/strong><br \/>\nWriters prepare content while clients or internal reviewers approve final versions, keeping everything auditable and centralized inside WordPress.<\/p>\n\n\n\n<h3>How It Works (Simple Flow)<\/h3>\n\n<ol>\n<li>An author creates or updates a post<\/li>\n<li>The post is marked as <strong>Pending Review<\/strong><\/li>\n<li>An editor or administrator reviews the content<\/li>\n<li>The reviewer <strong>approves or rejects<\/strong> the post with a note<\/li>\n<li>The author sees feedback and can revise accordingly<\/li>\n<li>Approved content is published with full traceability<\/li>\n<\/ol>\n\n<p>No emails. No spreadsheets. No confusion.<\/p>\n\n<p>Everything happens inside WordPress.<\/p>\n\n\n\n<h3>Why I Built This Plugin<\/h3>\n\n<p>I built Content Flow Manager after working on multi-author and editorial WordPress sites where content quality mattered, but proper approval workflows were missing.<\/p>\n\n<p>Too often, review processes lived outside WordPress \u2014 in chats, emails, or shared documents \u2014 leading to confusion, missed feedback, and accidental publishing.<\/p>\n\n<p>This plugin was built to:\n- Keep the entire editorial process inside WordPress\n- Provide clear accountability for approvals\n- Give authors transparent feedback\n- Offer a clean, extensible foundation developers can trust<\/p>\n\n<p>The goal is not to replace WordPress \u2014 but to <strong>complete it<\/strong> for serious content teams.<\/p>\n\n\n\n<h3>Key Features<\/h3>\n\n<ul>\n<li>Editorial review system with <strong>approve \/ reject<\/strong> actions<\/li>\n<li>Reviewer notes and feedback visible to authors<\/li>\n<li>Clear <strong>pending review<\/strong> state after content submission<\/li>\n<li>Author dashboard to track review status and feedback<\/li>\n<li>Admin\/editor dashboard showing full approval history<\/li>\n<li>Review activity logs stored in a custom database table<\/li>\n<li>Secure implementation using nonces, sanitization, and capability checks<\/li>\n<li>Cron-based reminders for pending reviews<\/li>\n<li>Developer-friendly, extensible architecture using modern PHP<\/li>\n<\/ul>\n\n\n\n<h3>Developer Notes<\/h3>\n\n<ul>\n<li>Namespace: <code>Lagostechboy\\EditorialWorkflow<\/code><\/li>\n<li>Modern PHP with strict typing<\/li>\n<li>PSR-4\u2013style autoloading<\/li>\n<li>Clean separation of concerns (Workflow, Hooks, Admin UI, Database)<\/li>\n<li>GPL licensed and WordPress.org compliant<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>content-flow-manager<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> menu in WordPress.<\/li>\n<li>The plugin will automatically create its required database table on activation.<\/li>\n<li>Create or edit a post and use the <strong>Review Status<\/strong> panel to manage approvals.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"who%20can%20approve%20or%20reject%20content%3F\"><h3>Who can approve or reject content?<\/h3><\/dt>\n<dd><p>Users with editorial capabilities (Editors and Administrators by default) can review and approve content.<\/p><\/dd>\n<dt id=\"can%20authors%20see%20reviewer%20feedback%3F\"><h3>Can authors see reviewer feedback?<\/h3><\/dt>\n<dd><p>Yes. Authors can view reviewer notes and approval status directly from their dashboard.<\/p><\/dd>\n<dt id=\"is%20this%20suitable%20for%20multi-author%20sites%3F\"><h3>Is this suitable for multi-author sites?<\/h3><\/dt>\n<dd><p>Absolutely. Content Flow Manager is specifically designed for multi-author and editorial team workflows.<\/p><\/dd>\n<dt id=\"does%20it%20support%20custom%20post%20types%3F\"><h3>Does it support custom post types?<\/h3><\/dt>\n<dd><p>Yes. Any post type that supports the editor and standard WordPress capabilities can be included.<\/p><\/dd>\n<dt id=\"can%20developers%20extend%20the%20workflow%3F\"><h3>Can developers extend the workflow?<\/h3><\/dt>\n<dd><p>Yes. The plugin is built with a clean architecture that allows developers to extend states, hooks, and logic.<\/p>\n\n<\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Fixed issue where restoring a trashed post caused an error<\/li>\n<li>Improved workflow handling for system-triggered post state changes<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Minor security improvements<\/li>\n<li>Internal workflow refinements<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Editorial workflow system implemented<\/li>\n<li>Review logging database schema added<\/li>\n<li>Admin and author dashboards introduced<\/li>\n<li>Cron-based review reminders<\/li>\n<li>Secure and extensible architecture<\/li>\n<\/ul>","raw_excerpt":"A professional editorial content approval workflow for WordPress. Perfect for multi-author sites.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ro.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/276937","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ro.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ro.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ro.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=276937"}],"author":[{"embeddable":true,"href":"https:\/\/ro.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/classic40"}],"wp:attachment":[{"href":"https:\/\/ro.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=276937"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ro.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=276937"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ro.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=276937"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ro.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=276937"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ro.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=276937"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ro.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=276937"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}