WordPress.WP.AlternativeFunctions.file_system_operations_chmod

file system operations chmod

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
#301WP-LESS3516810k+Missing direct file access protection
#302Asesor de Cookies RGPD para normativa europea36949120k+wp function not compatible with requires wp
#303Bard Extra3615876600Text Domain Mismatch
#304Blaze Demo Importer36101948k+Output is not escaped
#305Cashflows for WooCommerce3611936600Text Domain Mismatch
#306Custom PHP Settings361537610k+Output is not escaped
#307Just TinyMCE Custom Styles36112281k+Missing Arg Domain
#308Shadowbox JS36246141k+Unsafe printing function
#309SMTP for SendGrid – YaySMTP3627961k+Non-prefixed global variable
#310Rabo Smart Pay for WooCommerce3614554600Text Domain Mismatch
#311WP LaTeX3610312700Output is not escaped
#312WPAvatar3642545700Unsafe printing function
#313Wppao Sitemap36128219k+Output is not escaped
#314Add From Server37522060k+Output is not escaped
#315Debug Log Viewer3726831k+Missing nonce verification
#316Images Optimize and Upload CF73713036600Non Singular String Literal Domain
#317Recent Posts Widget With Thumbnails3722246100k+Output is not escaped
#318Simple Image XML Sitemap37119161k+Output is not escaped
#319Theme Builder For Elementor37477282k+Text Domain Mismatch
#320Anant Sites — Elementor & Gutenberg Readymade Template Library Free & Pro Templates38201561k+Non-prefixed global variable
#321Automatic Post Tagger385923072k+Output is not escaped
#322HashThemes Demo Importer3875336k+Output is not escaped
#323MultiLine Files for Contact Form 73898409k+Text Domain Mismatch
#324Author Image3851331k+Output is not escaped
#325aBlocks – Gutenberg Blocks, User Dashboard Builder, Popup Builder, Form Builder & Animation Builder39224292k+Non-prefixed global variable
#326Alt Magic: AI Image Alt Text Generator for WP & Image Rename391531122k+Text Domain Mismatch
#327Elementor Website Builder – more than just a page builder394442710m+Non-prefixed global variable
#328GS Only PDF Preview3946361k+Output is not escaped
#329Complete Image Sitemap4055181k+Output is not escaped
#330Far Future Expiry Header4025367k+Request data is not unslashed
#331Search with Typesense4081122700Non-prefixed global variable
#332Wallet for WooCommerce403253820k+Non-prefixed hook name
#333Heroic Favicon Generator4110476k+Output is not escaped
#334Contact Form 7 Signature Addon45147446k+Text Domain Mismatch
#335404 Image Redirection (Replace Broken Images)4711885500Text Domain Mismatch
#336Drag and Drop Multiple File Upload for WooCommerce47131325k+Text Domain Mismatch
#337WP Prefix Changer472716900Missing Arg Domain
#338Ansar Import – One Click Starter Sites – for Elementor & Themes482711610k+Non-prefixed global variable
#339Veeqo for WooCommerce503017800Missing direct file access protection
#340AVIF Uploader5149444k+Missing Arg Domain
#341ImageMagick Engine56172760k+Nonce verification recommended
#342Easy GDPR Consent Forms – MailChimp577222500Text Domain Mismatch
#343Simple History – Track, Log, and Audit WordPress Changes5826120300k+Non-prefixed global variable
#344FluentSnippets – High-Performance Code Snippets, Header & Footer Code, Custom CSS & PHP Code Manager62343050k+Nonce verification recommended
#345SmartVideo – Video Player and CDN62412481k+Text Domain Mismatch
#346Termageddon: Cookie Consent & Privacy Compliance6226137k+Exception output is not escaped
#347Image Sitemap631114400Output is not escaped
#348CV Demo Importer642195400Non-prefixed global variable
#349WP-Farsi652636600Non-prefixed function
#350Desert Companion6841585120k+Non-prefixed global variable