WordPress.WP.AlternativeFunctions.file_system_operations_mkdir

file system operations mkdir

The plugin performs filesystem work with raw PHP functions where WordPress expects safer filesystem handling.

medium weight

Why It Shows Up

Plugin Check found functions such as `fopen`, `fwrite`, `chmod`, `mkdir`, `readfile`, or related operations.

Why It Matters

WordPress sites can use different filesystem permissions and transports. Raw filesystem calls can fail on common hosts or write to unsafe locations.

How to Fix

  • Use WordPress filesystem helpers when writing, reading, or changing files in plugin-managed paths.
  • Validate paths and keep writes inside directories owned by the plugin or WordPress uploads.
  • Never write PHP code from user input or remote responses.

Affected Plugins

RankPluginScoreErrorsWarningsInstallsAddedUpdatedTop Issue
#1BulletProof Security05,0484,94920k+Output is not escaped
#2Intercom060716k+Non-prefixed function
#3Live Shopping & Shoppable Videos For WooCommerce079174400Non-prefixed global variable
#4Plugin Check (PCP)012814010k+Non-prefixed global variable
#5Themify Builder95,3342,1715k+Text Domain Mismatch
#6JetBackup – Backup, Restore & Migrate101,567156200k+Exception output is not escaped
#7404 Solution155821,53210k+Non-prefixed class
#8AnyComment174454495k+Output is not escaped
#9Efí Bank17886553300Exception output is not escaped
#10Administrator Z182,061799400Output is not escaped
#11Advanced File Manager – Ultimate File Manager for WordPress And Document Library Solution181,229923100k+Exception output is not escaped
#12Shopping Cart & eCommerce Store188,24018,4783k+Non-prefixed global variable
#13Matomo Analytics – Powerful, Privacy-First Insights for WordPress191,993892100k+Exception output is not escaped
#14Really Simple Security – Simple and Performant Security (formerly Really Simple SSL)195303753m+Missing Translators Comment
#15WP Directory Kit191,5022,6412k+Non-prefixed global variable
#16Brizy – Page Builder2058572660k+Output is not escaped
#17Broadstreet20434273800Output is not escaped
#18Duplicator – Backups & Migration Plugin – Cloud Backups, Scheduled Backups, & More202,8741,9881m+Non-prefixed global variable
#19EventPrime – Events Calendar, Bookings, Tickets & AI208464,2247k+Non-prefixed global variable
#20MBE eShip205277401k+Non-prefixed global variable
#21Microthemer Lite – Visual Editor to Customize CSS201,0041,69910k+Non-prefixed global variable
#22Pix por Piggly (para Woocommerce)205471954k+Exception output is not escaped
#23Powered Cache – Caching and Optimization for WordPress – Easily Improve PageSpeed & Web Vitals Score201472313k+Exception output is not escaped
#24Robin Image Optimizer – Unlimited Image Optimization, WebP & AVIF20556543100k+Output is not escaped
#25Booster for WooCommerce – PDF Invoices, Abandoned Cart, Variation Swatches & 100+ Tools207873,41630k+Non-prefixed global variable
#26WP Compress – Instant Performance & Speed Optimization204,2923,69110k+Non Singular String Literal Domain
#27Backup Migration219991,08180k+Non-prefixed global variable
#28Kadence Security – Password, Two Factor Authentication, and Brute Force Protection211,060959700k+Missing Translators Comment
#29Captcha Them All213003235k+Output is not escaped
#30Spam protection, Honeypot, Anti-Spam by CleanTalk218351,146200k+Missing nonce verification
#31Comet Cache2185724520k+Output is not escaped
#32DELUCKS SEO213621,171300Missing nonce verification
#33FileOrganizer – WordPress File Manager21549261200k+unlink unlink
#34Filter Everything — WordPress & WooCommerce Filters2163494350k+Non-prefixed global variable
#35Campaign Monitor for WordPress213864612k+Non-prefixed global variable
#36Link Library211,9321,38710k+Unsafe printing function
#37Mergado Pack212,323588700Output is not escaped
#38Modular DS: Monitor, update, and backup multiple websites211998240k+Exception output is not escaped
#39MultiParcels Shipping For WooCommerce212454264k+Request data is not unslashed
#40Points Management System For Gamification, Ranks, Badges, and Loyalty Rewards Program – myCred211,4363,34510k+Non-prefixed global variable
#41Paid Membership Subscriptions – Effortless Memberships, Recurring Payments & Content Restriction211,9945,33110k+Non-prefixed hook name
#42User Profile Builder – Beautiful User Registration Forms, User Profiles & User Role Editor217391,49540k+Non-prefixed global variable
#43SeatReg213501,842300Missing nonce verification
#44Smart Forms – when you need more than just a contact form217765745k+Output is not escaped
#45UPC/EAN/GTIN Barcode Generator/Importer21776311500Exception output is not escaped
#46Buckaroo Payments for WooCommerce216923512k+Exception output is not escaped
#47WebP Express21160427300k+Non-prefixed global variable
#48Wise Chat214705155k+Output is not escaped
#49Razorpay for WooCommerce21980864100k+Non-prefixed function
#50Wordfence Security – Firewall, Malware Scan, and Login Security211,8933,2925m+Output is not escaped