[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f_VoRnOfEQLFeDYe8eBX3gQBSX3-oS4tO47P4dP610qQ":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":13,"tags":16,"homepage":13,"download_link":22,"security_score":23,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":25,"vulnerabilities":26,"developer":27,"crawl_stats":24,"alternatives":35,"analysis":135,"fingerprints":338},"sorted-post-taxonomy-reorder","Sorted – Post & Taxonomy Reorder","1.0","Galaxy Weblinks","https:\u002F\u002Fprofiles.wordpress.org\u002Fgalaxyweblinks\u002F","\u003Cp>\u003Cstrong>Sorted – Post & Taxonomy Reorder\u003C\u002Fstrong> gives you full control over the order of your WordPress content.\u003Cbr \u002F>\nYou can reorder posts, pages, and any custom post types or taxonomies effortlessly through an intuitive drag-and-drop interface.\u003Cbr \u002F>\nPerfect for customizing the display order on your site without writing a single line of code.\u003C\u002Fp>\n\u003Cp>Once activated, a \u003Cstrong>“Reorder”\u003C\u002Fstrong> menu will automatically appear under each post type in the WordPress admin area. From there, simply drag and drop your items to set the desired order. The plugin supports all registered post types and taxonomies, making it a lightweight and powerful content-sorting solution for any website.\u003C\u002Fp>\n\u003Ch3>Key Features:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Drag-and-drop interface to reorder posts and taxonomies.\u003C\u002Fli>\n\u003Cli>Supports all post types (posts, pages, custom post types).\u003C\u002Fli>\n\u003Cli>Reorder categories, tags, and custom taxonomies\u003C\u002Fli>\n\u003Cli>Simple one-click activation, no configuration needed\u003C\u002Fli>\n\u003Cli>Automatically integrates with existing admin menus\u003C\u002Fli>\n\u003Cli>Lightweight and developer-friendly\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Here’s a link to the documentation for the plugin. This will help you learn more about its features and how to use it.\u003Cbr \u002F>\n\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwp-plugins.galaxyweblinks.com\u002Fwp-plugins\u002Fsorted-post-taxonomy-reorder\u002Fdoc\u002F\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>For any feedback or queries regarding this plugin, please contact our \u003Ca href=\"https:\u002F\u002Fwp-plugins.galaxyweblinks.com\u002Fcontact\u002F\" rel=\"nofollow ugc\">Support team\u003C\u002Fa>.\u003C\u002Fp>\n","Easily reorder posts, pages, and taxonomies with a simple drag-and-drop interface directly from your WordPress dashboard.",0,112,"","6.8.5","4.0",[17,18,19,20,21],"custom-post-type","drag-and-drop","post-order","reorder","taxonomy","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsorted-post-taxonomy-reorder.1.0.zip",100,null,"2026-03-15T10:48:56.248Z",[],{"slug":28,"display_name":7,"profile_url":8,"plugin_count":29,"total_installs":30,"avg_security_score":31,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},"galaxyweblinks",40,24800,97,310,77,"2026-04-04T05:38:20.772Z",[36,62,80,100,120],{"slug":37,"name":38,"version":39,"author":40,"author_profile":41,"description":42,"short_description":43,"active_installs":44,"downloaded":45,"rating":46,"num_ratings":47,"last_updated":48,"tested_up_to":14,"requires_at_least":49,"requires_php":13,"tags":50,"homepage":56,"download_link":57,"security_score":58,"vuln_count":59,"unpatched_count":11,"last_vuln_date":60,"fetched_at":61},"custom-post-order-category","Custom Category Post Order","2.2","faaiq","https:\u002F\u002Fprofiles.wordpress.org\u002Ffaaiq\u002F","\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002F_UEMSqJvkRM?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Cp>Custom Post Order is a powerful WordPress plugin that lets you reorder posts using a simple drag-and-drop interface. Organize content based on custom post types or specific categories, allowing each category or post type to have its own unique post order. Ideal for bloggers, content managers, and website owners who want full control over post display order without altering database content.\u003C\u002Fp>\n\u003Cp>Key Features:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Custom post order for Home page (pro)\u003C\u002Fli>\n\u003Cli>Drag & Drop Post Reordering – Quickly rearrange posts by hand with an intuitive interface.\u003C\u002Fli>\n\u003Cli>Category-Specific Post Order – Sort and manage posts independently within each selected category.\u003C\u002Fli>\n\u003Cli>Custom Post Type Sorting – Organize any custom post type with flexible ordering options.\u003C\u002Fli>\n\u003Cli>Soft Delete Option – Hide posts from display without deleting them from the WordPress database.\u003C\u002Fli>\n\u003Cli>One-Click Alphabetical or Reverse Sorting (Premium Feature) – Automatically arrange posts A–Z or Z–A.\u003C\u002Fli>\n\u003Cli>Enable or Disable Sorting Functionality – Easily toggle ordering for specific post types or categories.\u003C\u002Fli>\n\u003Cli>Multilingual support added — translations now available for French, German, Italian, Russian, and Polish. Additional languages can be added upon request.\u003Cbr \u002F>\nOptimize your content structure, improve user experience, and take full control of how posts are displayed with the Custom Post Order Plugin for WordPress.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Arbitrary section 1\u003C\u002Fh3>\n","Order your post by category or custom post type by drag & drop interface.",500,36649,64,19,"2025-11-28T09:30:00.000Z","3.3",[51,52,53,54,55],"custom-post-order","custom-post-type-order","drag-and-drop-post-order","post-sorting","reorder-posts","https:\u002F\u002Fscriptut.com\u002Fwordpress\u002Fcustom-category-post-order\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcustom-post-order-category.zip",99,1,"2025-06-05 00:00:00","2026-03-15T15:16:48.613Z",{"slug":63,"name":64,"version":65,"author":66,"author_profile":67,"description":68,"short_description":69,"active_installs":11,"downloaded":70,"rating":11,"num_ratings":11,"last_updated":71,"tested_up_to":72,"requires_at_least":73,"requires_php":74,"tags":75,"homepage":78,"download_link":79,"security_score":23,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":61},"bracket-post-order","Bracket Post Order","1.2.3","bracket","https:\u002F\u002Fprofiles.wordpress.org\u002Fbracketdev\u002F","\u003Cp>\u003Cstrong>Bracket Post Order\u003C\u002Fstrong> gives you complete control over how your content is sorted — directly from the native WordPress admin screens you already use. No new interfaces to learn, no separate reorder pages. Just drag and drop.\u003C\u002Fp>\n\u003Cp>A key feature is \u003Cstrong>per-term post ordering\u003C\u002Fstrong>: the ability to define a different post order for each individual category, tag, or custom taxonomy term. Show your products in one order on “Summer Collection” and a completely different order on “Best Sellers” — each term maintains its own independent sort.\u003C\u002Fp>\n\u003Ch4>Three Types of Ordering\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>1. Global Post Ordering\u003C\u002Fstrong>\u003Cbr \u002F>\nDrag-and-drop to reorder posts, pages, and custom post types on the standard admin list table. The new order is saved to \u003Ccode>menu_order\u003C\u002Fcode> and automatically applied on the front end.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>2. Per-Term Post Ordering\u003C\u002Fstrong>\u003Cbr \u002F>\nFilter your admin list by a category or taxonomy term, and the interface switches to per-term mode. Drag posts into the order you want for \u003Cem>that specific term\u003C\u002Fem>. Assign the same post to multiple categories — each one keeps its own sort. New posts added to a term automatically appear first (newest on top).\u003C\u002Fp>\n\u003Cp>\u003Cstrong>3. Taxonomy Term Ordering\u003C\u002Fstrong>\u003Cbr \u002F>\nReorder categories, tags, and custom taxonomy terms themselves via drag-and-drop on the native \u003Ccode>edit-tags.php\u003C\u002Fcode> screen. The new term order is applied to \u003Ccode>get_terms()\u003C\u002Fcode> queries and navigation menus on the front end.\u003C\u002Fp>\n\u003Ch4>Key Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Reset Order\u003C\u002Fstrong> — Reset post order by date or title with one click. Most requested feature across all ordering plugins.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Undo\u003C\u002Fstrong> — “Order saved. [Undo]” link appears for 8 seconds after every reorder. Click to revert instantly.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Mobile\u002FTouch Support\u003C\u002Fstrong> — Full touch drag-and-drop on phones and tablets via jQuery UI Touch Punch.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Keyboard Accessibility\u003C\u002Fstrong> — Tab to a row, Enter to activate, Arrow keys to move, Enter to save, Escape to cancel. WCAG compliant.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Order Column\u003C\u002Fstrong> — “#” column shows each post’s position number at a glance.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WPML & Polylang Support\u003C\u002Fstrong> — Per-term ordering works correctly across languages.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Admin Bar Indicator\u003C\u002Fstrong> — Shows current ordering mode (Global or Per-Term) in the admin bar.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Settings Link\u003C\u002Fstrong> — Quick access from the Plugins page.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How It Works\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Go to \u003Cstrong>Settings > Bracket Post Order\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Toggle on the post types you want to reorder\u003C\u002Fli>\n\u003Cli>Toggle on taxonomies for per-term post ordering\u003C\u002Fli>\n\u003Cli>Toggle on taxonomies for term reordering\u003C\u002Fli>\n\u003Cli>Visit your admin list pages and start dragging\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>Changes save automatically via AJAX — no page refresh needed.\u003C\u002Fp>\n\u003Ch4>Built for WordPress, Not Against It\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Works directly inside native admin list tables (\u003Ccode>edit.php\u003C\u002Fcode> and \u003Ccode>edit-tags.php\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>Uses standard \u003Ccode>menu_order\u003C\u002Fcode> for global ordering — compatible with any theme\u003C\u002Fli>\n\u003Cli>Uses \u003Ccode>term_order\u003C\u002Fcode> for taxonomy terms — the same column WordPress defines\u003C\u002Fli>\n\u003Cli>Per-term order stored as term meta — clean, portable, conflict-free\u003C\u002Fli>\n\u003Cli>Front-end queries are modified transparently via \u003Ccode>pre_get_posts\u003C\u002Fcode> and \u003Ccode>posts_clauses\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Explicit \u003Ccode>orderby\u003C\u002Fcode> parameters (date, title, etc.) are never overridden\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Works With\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Any public custom post type (portfolios, team members, testimonials, events, FAQs, services)\u003C\u002Fli>\n\u003Cli>WooCommerce products and product categories\u003C\u002Fli>\n\u003Cli>Any registered taxonomy with a UI\u003C\u002Fli>\n\u003Cli>Page builders that use standard \u003Ccode>WP_Query\u003C\u002Fcode> (Elementor, Divi, Beaver Builder)\u003C\u002Fli>\n\u003Cli>Themes that follow WordPress template hierarchy\u003C\u002Fli>\n\u003Cli>WPML and Polylang multilingual plugins\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>For Developers\u003C\u002Fh4>\n\u003Cp>Bracket Post Order provides hooks so you can extend or control its behavior:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002F\u002F Filter: skip per-term ordering for a specific query\nadd_filter( 'bracket_po_apply_term_post_order', function( $apply, $term_id, $query ) {\n    \u002F\u002F Return false to skip\n    return $apply;\n}, 10, 3 );\n\n\u002F\u002F Filter: modify the retrieved term post order\nadd_filter( 'bracket_po_get_term_post_order', function( $ordered_ids, $term_id ) {\n    return $ordered_ids;\n}, 10, 2 );\n\n\u002F\u002F Actions: fired after order is saved via drag-and-drop\ndo_action( 'bracket_po_global_order_updated', $post_ids );\ndo_action( 'bracket_po_term_post_order_updated', $term_id, $post_ids );\ndo_action( 'bracket_po_term_order_updated', $term_ids );\n\n\u002F\u002F Actions: fired after order is reset\ndo_action( 'bracket_po_global_order_reset', $post_type, $sort_by );\ndo_action( 'bracket_po_term_post_order_reset', $term_id );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>To apply per-term order in custom queries, set \u003Ccode>orderby\u003C\u002Fcode> to \u003Ccode>menu_order\u003C\u002Fcode> and include a \u003Ccode>tax_query\u003C\u002Fcode> with a single term:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>$query = new WP_Query( [\n    'post_type' => 'product',\n    'orderby'   => 'menu_order',\n    'order'     => 'ASC',\n    'tax_query' => [ [\n        'taxonomy' => 'product-category',\n        'field'    => 'term_id',\n        'terms'    => 42,\n    ] ],\n] );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>The plugin will automatically apply the saved per-term order via \u003Ccode>FIELD()\u003C\u002Fcode> SQL — posts not in the saved order appear first (newest on top).\u003C\u002Fp>\n","Drag-and-drop ordering for posts, pages, custom post types, and taxonomy terms — with per-category post ordering.",176,"2026-03-02T11:23:00.000Z","6.9.4","6.2","7.4",[76,18,19,20,77],"custom-order","taxonomy-order","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbracket-post-order\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbracket-post-order.1.2.3.zip",{"slug":81,"name":82,"version":83,"author":84,"author_profile":85,"description":86,"short_description":87,"active_installs":88,"downloaded":89,"rating":90,"num_ratings":29,"last_updated":91,"tested_up_to":72,"requires_at_least":92,"requires_php":93,"tags":94,"homepage":98,"download_link":99,"security_score":23,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":61},"real-custom-post-order","Real Custom Post Order: Create a custom order for your content","1.3.130","devowl.io GmbH","https:\u002F\u002Fprofiles.wordpress.org\u002Fdevowl\u002F","\u003Cp>\u003Cstrong>Create a custom order of your content by dragging and dropping\u003C\u002Fstrong> for the following content types:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Posts\u003C\u002Fli>\n\u003Cli>Pages\u003C\u002Fli>\n\u003Cli>WooCommerce products\u003C\u002Fli>\n\u003Cli>All other custom post types\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Simple and intuitive sorting for your content!\u003C\u002Fp>\n\u003Ch3>Free Sandbox\u003C\u002Fh3>\n\u003Cp>You want to try Real Custom Post Order before installing? \u003Cstrong>Take a free sandbox\u003C\u002Fstrong> and play around!\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Ftry.devowl.io\u002F?product=RCPO\" rel=\"nofollow ugc\">Create sandbox\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Why should you create a custom post order?\u003C\u002Fh3>\n\u003Cp>Many WordPress sites grow over time and with it the number of posts, pages, products, etc. It can be difficult to find the right content that is related to each other if you use the default order by publication date from WordPress. A custom order of posts – whether it’s a post order, a custom page order, a custom product order, or a custom post type order – can help you organize your content in a more intuitive way that helps you find your content more simply and quickly.\u003C\u002Fp>\n\u003Ch3>Compatibility\u003C\u002Fh3>\n\u003Cp>We try our best to make Real Custom Post Order compatible with other plugins that enhance your WordPress. At the moment we have explicit compatibility with the following plugins:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fdevowl.io\u002Fgo\u002Freal-category-management?source=wordpress-org&plugin=real-custom-post-order\" rel=\"nofollow ugc\">Real Category Management\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Freal-media-library-lite\u002F\" rel=\"ugc\">Real Media Library\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwoocommerce\u002F\" rel=\"ugc\">WooCommerce\u003C\u002Fa> (custom post order for products only)\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwordpress-seo\u002F\" rel=\"ugc\">Yoast SEO\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpseo.de\u002F\" rel=\"nofollow ugc\">wpSEO\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Supported Languages\u003C\u002Fh3>\n\u003Cp>Real Custom Post Order is \u003Cstrong>in multiple languages available\u003C\u002Fstrong>:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>English\u003C\u002Fli>\n\u003Cli>German\u003C\u002Fli>\n\u003Cli>Dutch\u003C\u002Fli>\n\u003Cli>Spanish\u003C\u002Fli>\n\u003Cli>French\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>If you want to help us add a translation in your language, please \u003Ca href=\"https:\u002F\u002Fdevowl.io\u002Fsupport\u002F\" rel=\"nofollow ugc\">open a support ticket\u003C\u002Fa> and we will help you with the technical part. Thanks for your participation!\u003C\u002Fp>\n","Custom post order for posts, pages, WooCommerce products and custom post types using drag and drop. Simple and intuitive sorting of your content!",9000,321603,96,"2025-12-02T08:36:00.000Z","5.9","7.4.0",[95,51,52,96,97],"custom-page-order","custom-product-order","custom-taxonomy-order","https:\u002F\u002Fdevowl.io","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Freal-custom-post-order.1.3.130.zip",{"slug":101,"name":102,"version":103,"author":104,"author_profile":105,"description":106,"short_description":107,"active_installs":108,"downloaded":109,"rating":23,"num_ratings":110,"last_updated":111,"tested_up_to":112,"requires_at_least":15,"requires_php":13,"tags":113,"homepage":13,"download_link":118,"security_score":119,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":61},"custom-reorder-manager","Custom Reorder Manager","1.2.0","Babu Kolassery","https:\u002F\u002Fprofiles.wordpress.org\u002Fbabukolassery\u002F","\u003Cp>You can use the Custom Reorder Manager ( CRO ) plugin to take full control of your WordPress post’s sort order.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Add reorder on demand.\u003C\u002Fstrong> Our CRO settings allow you to add Re-order sub menu under WP custom\u002Fdefault post-types with just a click of the button!\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Add them any type.\u003C\u002Fstrong> Reorder manager can be added to all public post-types such as post, page, media and custom post-types!\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Add them any taxonomy.\u003C\u002Fstrong> Reorder manager can be added to all taxonomies such as categories, tags and custom taxonomies!\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Show them everywhere.\u003C\u002Fstrong> Load and display your posts in CRO order using any theme template file with our hassle free and developer friendly functions!\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Made for developers.\u003C\u002Fstrong> Use functions like: cro_posts(string post_type, array $args = null) and cro_posts_by_taxonomy(array $cro_params, array $args = null) to build powerful templates fast.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Simple & Intuitive\u003C\u002Fli>\n\u003Cli>Powerful functions\u003C\u002Fli>\n\u003Cli>User friendly drag & drop sorting\u003C\u002Fli>\n\u003Cli>Taxonomy & custom post-type based sorting\u003C\u002Fli>\n\u003C\u002Ful>\n","Reorder WordPress posts with drag & drop mechanism.",10,3467,3,"2017-11-29T05:29:00.000Z","4.9.29",[114,115,20,116,117],"order-custom-post-types","order-posts","sort-by-post-types","sort-by-taxonomy","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcustom-reorder-manager.1.2.zip",85,{"slug":121,"name":122,"version":123,"author":124,"author_profile":125,"description":126,"short_description":127,"active_installs":108,"downloaded":128,"rating":23,"num_ratings":59,"last_updated":129,"tested_up_to":14,"requires_at_least":15,"requires_php":130,"tags":131,"homepage":133,"download_link":134,"security_score":23,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":61},"gap3coders-taxonomy-post-order","GAP3 Coders Taxonomy Post Order","1.0.1","GAP3","https:\u002F\u002Fprofiles.wordpress.org\u002Fgap3coders\u002F","\u003Cp>GAP3 Coders Taxonomy Post Order is a powerful WordPress plugin that allows you to easily reorder posts within any taxonomy term using an intuitive drag-and-drop interface. The custom order automatically applies to your website’s frontend without requiring any code modifications.\u003C\u002Fp>\n\u003Ch4>Key Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Drag & Drop Interface\u003C\u002Fstrong> – Intuitive admin interface for reordering posts\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Automatic Frontend Integration\u003C\u002Fstrong> – No code changes required, works immediately\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Universal Taxonomy Support\u003C\u002Fstrong> – Works with categories, tags, and custom taxonomies\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Custom Post Type Compatible\u003C\u002Fstrong> – Supports all public post types\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WP_Query Integration\u003C\u002Fstrong> – Automatically applies to custom queries with tax_query\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Keyboard Accessible\u003C\u002Fstrong> – Full keyboard navigation support\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Mobile Responsive\u003C\u002Fstrong> – Works perfectly on all devices\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Performance Optimized\u003C\u002Fstrong> – Lightweight and efficient\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Security First\u003C\u002Fstrong> – Follows WordPress security best practices\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How It Works\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Cstrong>Admin Interface\u003C\u002Fstrong>: Navigate to “GAP3 Coders Taxonomy Post Order” in your WordPress admin\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Select Taxonomy\u003C\u002Fstrong>: Choose any taxonomy (categories, tags, or custom)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Choose Term\u003C\u002Fstrong>: Select the specific term you want to reorder\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Drag & Drop\u003C\u002Fstrong>: Reorder posts using the intuitive interface\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Automatic Application\u003C\u002Fstrong>: Changes apply immediately to your frontend\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Supported Queries\u003C\u002Fh4>\n\u003Cp>The plugin automatically applies custom ordering to:\u003Cbr \u002F>\n* Taxonomy archive pages (category.php, tag.php, taxonomy.php)\u003Cbr \u002F>\n* Custom WP_Query instances with tax_query parameters\u003Cbr \u002F>\n* Main query modifications via pre_get_posts\u003Cbr \u002F>\n* Any query that filters by taxonomy terms\u003C\u002Fp>\n\u003Ch4>Developer Friendly\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Clean, well-documented code\u003C\u002Fli>\n\u003Cli>WordPress coding standards compliant\u003C\u002Fli>\n\u003Cli>Extensible architecture\u003C\u002Fli>\n\u003Cli>Proper sanitization and validation\u003C\u002Fli>\n\u003Cli>Translation ready\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>For support, feature requests, or bug reports, please contact us at gap3coders@gmail.com\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>Developed by GAP3 Coders with ❤️ for the WordPress community.\u003C\u002Fp>\n","Easily reorder posts within taxonomy terms using drag-and-drop interface. Custom order automatically applies to frontend without any code changes.",361,"2025-07-09T09:51:00.000Z","7.0",[76,132,19,55,21],"drag-drop","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fgap3coders-taxonomy-post-order\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgap3coders-taxonomy-post-order.1.0.1.zip",{"attackSurface":136,"codeSignals":196,"taintFlows":238,"riskAssessment":328,"analyzedAt":337},{"hooks":137,"ajaxHandlers":177,"restRoutes":192,"shortcodes":193,"cronEvents":194,"entryPointCount":195,"unprotectedCount":11},[138,144,148,152,156,161,165,168,171,175],{"type":139,"name":140,"callback":141,"file":142,"line":143},"action","admin_menu","sortptr_admin_menu","sorted-post-taxonomy-reorder.php",26,{"type":139,"name":145,"callback":146,"file":142,"line":147},"admin_enqueue_scripts","sortptr_enqueue_styles",27,{"type":139,"name":149,"callback":150,"file":142,"line":151},"init","sortptr_enable_menu_order_for_posts",32,{"type":139,"name":153,"callback":154,"file":142,"line":155},"pre_get_posts","sortptr_post_type_reorder",33,{"type":157,"name":158,"callback":159,"priority":108,"file":142,"line":160},"filter","get_terms","sortptr_custom_order_terms",34,{"type":157,"name":162,"callback":163,"priority":108,"file":142,"line":164},"wp_tag_cloud","sortptr_custom_order_widget",35,{"type":139,"name":149,"callback":166,"file":142,"line":167},"sortptr_save_custom_settings",36,{"type":139,"name":149,"callback":169,"file":142,"line":170},"sortptr_reset_reorder",37,{"type":157,"name":172,"callback":173,"file":142,"line":174},"posts_orderby","closure",506,{"type":157,"name":172,"callback":173,"priority":108,"file":142,"line":176},538,[178,184,186,190],{"action":179,"nopriv":180,"callback":181,"hasNonce":182,"hasCapCheck":180,"file":142,"line":183},"sortptr-save-custom-order",false,"sortptr_save_custom_taxonomy_order",true,28,{"action":179,"nopriv":182,"callback":181,"hasNonce":182,"hasCapCheck":180,"file":142,"line":185},29,{"action":187,"nopriv":180,"callback":188,"hasNonce":182,"hasCapCheck":180,"file":142,"line":189},"sortptr-save-custom-post-order","sortptr_save_custom_post_order",30,{"action":187,"nopriv":182,"callback":188,"hasNonce":182,"hasCapCheck":180,"file":142,"line":191},31,[],[],[],4,{"dangerousFunctions":197,"sqlUsage":229,"outputEscaping":231,"fileOperations":11,"externalRequests":11,"nonceChecks":195,"capabilityChecks":11,"bundledLibraries":237},[198,203,204,207,208,211,212,214,215,217,218,221,224,227],{"fn":199,"file":200,"line":201,"context":202},"unserialize","includes\\sortptr-mainmenu-settings.php",8,"$sortptr_spost_types = !empty(unserialize(get_option('sortptr_spost_types'))) ? unserialize(get_opti",{"fn":199,"file":200,"line":201,"context":202},{"fn":199,"file":200,"line":205,"context":206},9,"$sortptr_staxonomies = !empty(unserialize(get_option('sortptr_staxonomies'))) ? unserialize(get_opti",{"fn":199,"file":200,"line":205,"context":206},{"fn":199,"file":209,"line":210,"context":206},"includes\\sortptr-taxonomymenu-settings.php",21,{"fn":199,"file":209,"line":210,"context":206},{"fn":199,"file":142,"line":213,"context":202},121,{"fn":199,"file":142,"line":213,"context":202},{"fn":199,"file":142,"line":216,"context":206},122,{"fn":199,"file":142,"line":216,"context":206},{"fn":199,"file":142,"line":219,"context":220},409,"$custom_order = ! empty( $serialized_array ) ? @unserialize( $serialized_array ) : [];",{"fn":199,"file":142,"line":222,"context":223},440,"$custom_order = unserialize($custom_order);",{"fn":199,"file":142,"line":225,"context":226},495,"$custom_order = unserialize($post_serialized_array);",{"fn":199,"file":142,"line":228,"context":226},529,{"prepared":11,"raw":11,"locations":230},[],{"escaped":232,"rawEcho":59,"locations":233},68,[234],{"file":209,"line":235,"context":236},63,"raw output",[],[239,261,272,288],{"entryPoint":240,"graph":241,"unsanitizedCount":59,"severity":260},"sortptr_save_custom_taxonomy_order (sorted-post-taxonomy-reorder.php:286)",{"nodes":242,"edges":257},[243,247,251],{"id":244,"type":245,"label":246,"file":142,"line":32},"n0","source","$_POST",{"id":248,"type":249,"label":250,"file":142,"line":32},"n1","transform","→ sortptr_save_stored_order_value()",{"id":252,"type":253,"label":254,"file":142,"line":255,"wp_function":256},"n2","sink","update_option() [Settings Manipulation]",82,"update_option",[258,259],{"from":244,"to":248,"sanitized":180},{"from":248,"to":252,"sanitized":180},"low",{"entryPoint":262,"graph":263,"unsanitizedCount":59,"severity":260},"sortptr_save_custom_post_order (sorted-post-taxonomy-reorder.php:314)",{"nodes":264,"edges":269},[265,267,268],{"id":244,"type":245,"label":246,"file":142,"line":266},337,{"id":248,"type":249,"label":250,"file":142,"line":266},{"id":252,"type":253,"label":254,"file":142,"line":255,"wp_function":256},[270,271],{"from":244,"to":248,"sanitized":180},{"from":248,"to":252,"sanitized":180},{"entryPoint":273,"graph":274,"unsanitizedCount":11,"severity":260},"sortptr_save_custom_settings (sorted-post-taxonomy-reorder.php:550)",{"nodes":275,"edges":285},[276,279,280,283],{"id":244,"type":245,"label":277,"file":142,"line":278},"$_POST['post_types']",561,{"id":248,"type":253,"label":254,"file":142,"line":278,"wp_function":256},{"id":252,"type":245,"label":281,"file":142,"line":282},"$_POST['taxonomies']",568,{"id":284,"type":253,"label":254,"file":142,"line":282,"wp_function":256},"n3",[286,287],{"from":244,"to":248,"sanitized":182},{"from":252,"to":284,"sanitized":182},{"entryPoint":289,"graph":290,"unsanitizedCount":327,"severity":260},"\u003Csorted-post-taxonomy-reorder> (sorted-post-taxonomy-reorder.php:0)",{"nodes":291,"edges":319},[292,295,297,298,299,301,303,305,307,309,313,316],{"id":244,"type":245,"label":293,"file":142,"line":294},"$_POST (x3)",295,{"id":248,"type":253,"label":296,"file":142,"line":219,"wp_function":199},"unserialize() [Object Injection]",{"id":252,"type":245,"label":277,"file":142,"line":278},{"id":284,"type":253,"label":254,"file":142,"line":278,"wp_function":256},{"id":300,"type":245,"label":281,"file":142,"line":282},"n4",{"id":302,"type":253,"label":254,"file":142,"line":282,"wp_function":256},"n5",{"id":304,"type":245,"label":293,"file":142,"line":32},"n6",{"id":306,"type":249,"label":250,"file":142,"line":32},"n7",{"id":308,"type":253,"label":254,"file":142,"line":255,"wp_function":256},"n8",{"id":310,"type":245,"label":311,"file":142,"line":312},"n9","$_POST (x4)",343,{"id":314,"type":249,"label":315,"file":142,"line":312},"n10","→ sortptr_get_stored_order_value()",{"id":317,"type":253,"label":254,"file":142,"line":318,"wp_function":256},"n11",71,[320,321,322,323,324,325,326],{"from":244,"to":248,"sanitized":182},{"from":252,"to":284,"sanitized":182},{"from":300,"to":302,"sanitized":182},{"from":304,"to":306,"sanitized":180},{"from":306,"to":308,"sanitized":180},{"from":310,"to":314,"sanitized":180},{"from":314,"to":317,"sanitized":180},7,{"summary":329,"deductions":330},"The \"sorted-post-taxonomy-reorder\" plugin version 1.0 presents a mixed security posture.  On the positive side, it demonstrates good practices by utilizing prepared statements for all SQL queries and properly escaping nearly all output. The absence of known CVEs and a clean vulnerability history are also strong indicators of a well-maintained and secure plugin. Furthermore, all identified entry points, including AJAX handlers, appear to have nonce checks in place, which is a crucial security measure.\n\nHowever, the static analysis reveals a significant concern regarding the use of the `unserialize` function. This function is notoriously dangerous as it can lead to Remote Code Execution (RCE) if an attacker can control the data being unserialized. While there are no direct indicators of immediate exploitation in the taint analysis (no critical or high severity flows), the presence of `unserialize` without apparent sanitization or strict input validation for the unserialized data represents a potential attack vector.  The taint analysis also indicates that three out of four flows have unsanitized paths, which, while not classified as critical or high, suggests a potential for subtle vulnerabilities if the data sources are not tightly controlled.\n\nIn conclusion, while the plugin benefits from a lack of known vulnerabilities and adherence to many secure coding practices, the indiscriminate use of `unserialize` is a notable weakness. This, coupled with the presence of unsanitized paths in the taint analysis, necessitates careful attention to how data is handled by this plugin. Developers should prioritize validating and sanitizing any data before passing it to `unserialize` to mitigate the risk of potential exploits.",[331,334],{"reason":332,"points":333},"Dangerous function used (unserialize)",15,{"reason":335,"points":336},"Flows with unsanitized paths detected",6,"2026-03-17T05:45:34.110Z",{"wat":339,"direct":354},{"assetPaths":340,"generatorPatterns":345,"scriptPaths":346,"versionParams":349},[341,342,343,344],"\u002Fwp-content\u002Fplugins\u002Fsorted-post-taxonomy-reorder\u002Fassets\u002Fcss\u002Fsortptr-style.css","\u002Fwp-content\u002Fplugins\u002Fsorted-post-taxonomy-reorder\u002Fassets\u002Fcss\u002Fjquery-ui.css","\u002Fwp-content\u002Fplugins\u002Fsorted-post-taxonomy-reorder\u002Fassets\u002Fjs\u002Fsortptr-script.js","\u002Fwp-content\u002Fplugins\u002Fsorted-post-taxonomy-reorder\u002Fassets\u002Fjs\u002Fsortptr-sortable-ui.js",[],[347,348],"assets\u002Fjs\u002Fsortptr-script.js","assets\u002Fjs\u002Fsortptr-sortable-ui.js",[350,351,352,353],"sorted-post-taxonomy-reorder\u002Fassets\u002Fcss\u002Fsortptr-style.css?ver=","sorted-post-taxonomy-reorder\u002Fassets\u002Fcss\u002Fjquery-ui.css?ver=","sorted-post-taxonomy-reorder\u002Fassets\u002Fjs\u002Fsortptr-script.js?ver=","sorted-post-taxonomy-reorder\u002Fassets\u002Fjs\u002Fsortptr-sortable-ui.js?ver=",{"cssClasses":355,"htmlComments":356,"htmlAttributes":357,"restEndpoints":359,"jsGlobals":360,"shortcodeOutput":362},[],[],[358],"data-sortptr-nonce",[],[361],"sortptr_ajax_object",[]]