Post Types Order Security & Risk Analysis

wordpress.org/plugins/post-types-order

Sort posts and custom post type objects using a drag-and-drop, sortable JavaScript AJAX interface, or through the default WordPress dashboard

600K active installs v2.4.6 PHP 5.6+ WP 2.8+ Updated Mar 13, 2026
post-orderpost-sortpost-types-orderposts-orderposts-sort
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Post Types Order Safe to Use in 2026?

Generally Safe

Score 100/100

Post Types Order has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 21d ago
Risk Assessment

The post-types-order v2.4.6 plugin exhibits a generally strong security posture, as indicated by the static analysis and vulnerability history. A key strength is the complete absence of any known CVEs, suggesting a history of good security practices and timely patching by the developers. The code analysis reveals a small attack surface, with all identified entry points protected by authentication checks. Furthermore, the plugin makes excellent use of prepared statements for all SQL queries, a critical defense against SQL injection vulnerabilities. The overwhelming majority of output is properly escaped, mitigating cross-site scripting (XSS) risks. Taint analysis also shows no concerning flows with unsanitized data. However, a minor area for improvement lies in the output escaping, where a small percentage (10%) is not properly escaped, potentially leaving a small window for XSS if specific outputs are user-controlled and not adequately sanitized at the source. While the current version shows no critical or high-severity issues, maintaining this high standard with continued vigilance is important.

Key Concerns

  • 10% of outputs not properly escaped
Vulnerabilities
None known

Post Types Order Security Vulnerabilities

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

Post Types Order Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
12 prepared
Unescaped Output
4
38 escaped
Nonce Checks
4
Capability Checks
2
File Operations
2
External Requests
0
Bundled Libraries
0

SQL Query Safety

100% prepared12 total queries

Output Escaping

90% escaped42 total outputs
Data Flows
All sanitized

Data Flow Analysis

2 flows
saveArchiveAjaxOrder (include\class.cpto.php:439)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

Post Types Order Attack Surface

Entry Points2
Unprotected0

AJAX Handlers 2

authwp_ajax_update-custom-type-orderinclude\class.cpto.php:47
authwp_ajax_update-custom-type-order-archiveinclude\class.cpto.php:48
WordPress Hooks 24
filterpto/posts_orderby/ignorecompatibility\acf.php:27
filterpto/posts_orderby/ignorecompatibility\formidable.php:23
actionPTO/order_update_completecompatibility\LiteSpeed_Cache.php:22
filterpto/posts_orderby/ignorecompatibility\the-events-calendar.php:21
filterpto/posts_orderby/ignorecompatibility\themes\enfold.php:20
actionadmin_noticesinclude\class.cpto.php:23
filterinitinclude\class.cpto.php:25
filterpre_get_postsinclude\class.cpto.php:27
filterposts_orderbyinclude\class.cpto.php:28
actionadmin_initinclude\class.cpto.php:39
actionadmin_menuinclude\class.cpto.php:40
actionadmin_menuinclude\class.cpto.php:42
actionadmin_enqueue_scriptsinclude\class.cpto.php:45
filterplugin_action_links_post-types-order/post-types-order.phpinclude\class.cpto.php:50
filternetwork_admin_plugin_action_links_post-types-order/post-types-order.phpinclude\class.cpto.php:51
filterget_previous_post_whereinclude\class.cpto.php:80
filterget_previous_post_sortinclude\class.cpto.php:81
filterget_next_post_whereinclude\class.cpto.php:82
filterget_next_post_sortinclude\class.cpto.php:83
actionadmin_initinclude\class.interface.php:24
actionadmin_noticesinclude\class.options.php:51
actionplugins_loadedpost-types-order.php:32
actionplugins_loadedpost-types-order.php:43
actionwp_loadedpost-types-order.php:74
Maintenance & Trust

Post Types Order Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedMar 13, 2026
PHP min version5.6
Downloads16.1M

Community Trust

Rating90/100
Number of ratings296
Active installs600K
Developer Profile

Post Types Order Developer Profile

nsp-code

5 plugins · 1.2M total installs

78
trust score
Avg Security Score
99/100
Avg Patch Time
1630 days
View full developer profile
Detection Fingerprints

How We Detect Post Types Order

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/post-types-order/js/jquery.ui.core.min.js/wp-content/plugins/post-types-order/js/jquery.ui.mouse.min.js/wp-content/plugins/post-types-order/js/jquery.ui.sortable.min.js/wp-content/plugins/post-types-order/js/scripts.js/wp-content/plugins/post-types-order/css/admin.css/wp-content/plugins/post-types-order/css/style.css/wp-content/plugins/post-types-order/js/jquery.tablednd.js/wp-content/plugins/post-types-order/js/admin.js
Script Paths
/wp-content/plugins/post-types-order/js/jquery.ui.core.min.js/wp-content/plugins/post-types-order/js/jquery.ui.mouse.min.js/wp-content/plugins/post-types-order/js/jquery.ui.sortable.min.js/wp-content/plugins/post-types-order/js/scripts.js/wp-content/plugins/post-types-order/js/jquery.tablednd.js/wp-content/plugins/post-types-order/js/admin.js
Version Parameters
post-types-order/css/admin.css?ver=post-types-order/css/style.css?ver=post-types-order/js/jquery.ui.core.min.js?ver=post-types-order/js/jquery.ui.mouse.min.js?ver=post-types-order/js/jquery.ui.sortable.min.js?ver=post-types-order/js/scripts.js?ver=post-types-order/js/jquery.tablednd.js?ver=post-types-order/js/admin.js?ver=

HTML / DOM Fingerprints

CSS Classes
order-colsortable-tableorder-handle
HTML Comments
<!-- The main plugin class --><!-- Initialisation function --><!-- Constructor --><!-- Initialisation function -->+86 more
Data Attributes
data-post-typedata-taxonomy
JS Globals
CPTOcpto_settings
FAQ

Frequently Asked Questions about Post Types Order