Sorted – Post & Taxonomy Reorder Security & Risk Analysis

wordpress.org/plugins/sorted-post-taxonomy-reorder

Easily reorder posts, pages, and taxonomies with a simple drag-and-drop interface directly from your WordPress dashboard.

0 active installs v1.0 PHP + WP 4.0+ Updated Unknown
custom-post-typedrag-and-droppost-orderreordertaxonomy
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Download
Safety Verdict

Is Sorted – Post & Taxonomy Reorder Safe to Use in 2026?

Generally Safe

Score 100/100

Sorted – Post & Taxonomy Reorder has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs
Risk Assessment

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.

However, 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.

In 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.

Key Concerns

  • Dangerous function used (unserialize)
  • Flows with unsanitized paths detected
Vulnerabilities
None known

Sorted – Post & Taxonomy Reorder Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Code Analysis
Analyzed Mar 17, 2026

Sorted – Post & Taxonomy Reorder Code Analysis

Dangerous Functions
14
Raw SQL Queries
0
0 prepared
Unescaped Output
1
68 escaped
Nonce Checks
4
Capability Checks
0
File Operations
0
External Requests
0
Bundled Libraries
0

Dangerous Functions Found

unserialize$sortptr_spost_types = !empty(unserialize(get_option('sortptr_spost_types'))) ? unserialize(get_optiincludes\sortptr-mainmenu-settings.php:8
unserialize$sortptr_spost_types = !empty(unserialize(get_option('sortptr_spost_types'))) ? unserialize(get_optiincludes\sortptr-mainmenu-settings.php:8
unserialize$sortptr_staxonomies = !empty(unserialize(get_option('sortptr_staxonomies'))) ? unserialize(get_optiincludes\sortptr-mainmenu-settings.php:9
unserialize$sortptr_staxonomies = !empty(unserialize(get_option('sortptr_staxonomies'))) ? unserialize(get_optiincludes\sortptr-mainmenu-settings.php:9
unserialize$sortptr_staxonomies = !empty(unserialize(get_option('sortptr_staxonomies'))) ? unserialize(get_optiincludes\sortptr-taxonomymenu-settings.php:21
unserialize$sortptr_staxonomies = !empty(unserialize(get_option('sortptr_staxonomies'))) ? unserialize(get_optiincludes\sortptr-taxonomymenu-settings.php:21
unserialize$sortptr_spost_types = !empty(unserialize(get_option('sortptr_spost_types'))) ? unserialize(get_optisorted-post-taxonomy-reorder.php:121
unserialize$sortptr_spost_types = !empty(unserialize(get_option('sortptr_spost_types'))) ? unserialize(get_optisorted-post-taxonomy-reorder.php:121
unserialize$sortptr_staxonomies = !empty(unserialize(get_option('sortptr_staxonomies'))) ? unserialize(get_optisorted-post-taxonomy-reorder.php:122
unserialize$sortptr_staxonomies = !empty(unserialize(get_option('sortptr_staxonomies'))) ? unserialize(get_optisorted-post-taxonomy-reorder.php:122
unserialize$custom_order = ! empty( $serialized_array ) ? @unserialize( $serialized_array ) : [];sorted-post-taxonomy-reorder.php:409
unserialize$custom_order = unserialize($custom_order);sorted-post-taxonomy-reorder.php:440
unserialize$custom_order = unserialize($post_serialized_array);sorted-post-taxonomy-reorder.php:495
unserialize$custom_order = unserialize($post_serialized_array);sorted-post-taxonomy-reorder.php:529

Output Escaping

99% escaped69 total outputs
Data Flows
3 unsanitized

Data Flow Analysis

4 flows3 with unsanitized paths
sortptr_save_custom_taxonomy_order (sorted-post-taxonomy-reorder.php:286)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

Sorted – Post & Taxonomy Reorder Attack Surface

Entry Points4
Unprotected0

AJAX Handlers 4

authwp_ajax_sortptr-save-custom-ordersorted-post-taxonomy-reorder.php:28
noprivwp_ajax_sortptr-save-custom-ordersorted-post-taxonomy-reorder.php:29
authwp_ajax_sortptr-save-custom-post-ordersorted-post-taxonomy-reorder.php:30
noprivwp_ajax_sortptr-save-custom-post-ordersorted-post-taxonomy-reorder.php:31
WordPress Hooks 10
actionadmin_menusorted-post-taxonomy-reorder.php:26
actionadmin_enqueue_scriptssorted-post-taxonomy-reorder.php:27
actioninitsorted-post-taxonomy-reorder.php:32
actionpre_get_postssorted-post-taxonomy-reorder.php:33
filterget_termssorted-post-taxonomy-reorder.php:34
filterwp_tag_cloudsorted-post-taxonomy-reorder.php:35
actioninitsorted-post-taxonomy-reorder.php:36
actioninitsorted-post-taxonomy-reorder.php:37
filterposts_orderbysorted-post-taxonomy-reorder.php:506
filterposts_orderbysorted-post-taxonomy-reorder.php:538
Maintenance & Trust

Sorted – Post & Taxonomy Reorder Maintenance & Trust

Maintenance Signals

WordPress version tested6.8.5
Last updatedUnknown
PHP min version
Downloads112

Community Trust

Rating0/100
Number of ratings0
Active installs0
Developer Profile

Sorted – Post & Taxonomy Reorder Developer Profile

Galaxy Weblinks

40 plugins · 25K total installs

77
trust score
Avg Security Score
97/100
Avg Patch Time
310 days
View full developer profile
Detection Fingerprints

How We Detect Sorted – Post & Taxonomy Reorder

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

Asset Paths
/wp-content/plugins/sorted-post-taxonomy-reorder/assets/css/sortptr-style.css/wp-content/plugins/sorted-post-taxonomy-reorder/assets/css/jquery-ui.css/wp-content/plugins/sorted-post-taxonomy-reorder/assets/js/sortptr-script.js/wp-content/plugins/sorted-post-taxonomy-reorder/assets/js/sortptr-sortable-ui.js
Script Paths
assets/js/sortptr-script.jsassets/js/sortptr-sortable-ui.js
Version Parameters
sorted-post-taxonomy-reorder/assets/css/sortptr-style.css?ver=sorted-post-taxonomy-reorder/assets/css/jquery-ui.css?ver=sorted-post-taxonomy-reorder/assets/js/sortptr-script.js?ver=sorted-post-taxonomy-reorder/assets/js/sortptr-sortable-ui.js?ver=

HTML / DOM Fingerprints

Data Attributes
data-sortptr-nonce
JS Globals
sortptr_ajax_object
FAQ

Frequently Asked Questions about Sorted – Post & Taxonomy Reorder