Investigating WSO Web Shell Indicators in a MODX Project
A practical incident-oriented note on spotting suspicious connector activity and WSO web shell indicators in a compromised MODX project.
Release notes, extras updates, guides, videos, and practical Evolution CMS knowledge in one place.
A practical incident-oriented note on spotting suspicious connector activity and WSO web shell indicators in a compromised MODX project.
Why API-mode scripts can fail with an undefined startCMSSession error and what that usually means about the bootstrap sequence in Evolution CMS.
A historical ecosystem note on the early installer direction for MODX Evolution and the effort to make first-time setup less intimidating.
How to combine EvoGallery pagination with a lightbox flow such as Fancybox when one gallery page should show only a limited number of thumbnails at a time.
Why many teams moved template editing out of the manager and into an IDE workflow, using file includes, versioning, and diff tools for safer development.
A release note for MODX Evolution 1.0.13 RC4 and the matching community custom build, reflecting the final stabilization stage before the 1.0.13 release line.
How to enrich AjaxSearch result templates with parent resource data so the result list shows more context than the matched page title alone.
How to structure checkbox TV values so autoFilter can work with them predictably instead of receiving loosely formatted label strings.
How to work with custom DocLister JSON config files without mixing local overrides into core config paths or losing track of what the listing actually does.
A historical ecosystem note on CacheExtender 0.5 and why cache-control helpers mattered for high-traffic or highly dynamic Evo projects.
A short ecosystem note on ddTypograph 2.0 beta and why output-cleaning utilities remained important for editorial Evolution CMS projects.
How malformed URLs such as triple-slash paths can slip into Evolution CMS projects and why they should be normalized before they turn into indexing or routing noise.
How checkbox TVs interact with Ditto filters and what to watch for when the stored values do not behave like a simple one-value field.
Why tagManager filtering with AJAX can start returning 404s on paginated URLs and how to keep state, routing, and pagination aligned.
How catalogFill maps columns to TV values in Evolution CMS and why keeping that config explicit makes large catalog imports easier to maintain.
How to think about DocLister when the listing needs data from multiple related tables instead of only resource fields and TVs.
How the modExtra training workflow helped developers understand package structure, processors, assets, and transport builds in the MODX ecosystem.
A practical eForm pattern for contact forms with file uploads, captcha, validation, and hosted-mail constraints on legacy Evolution CMS builds.
How a custom checkbox-style TV input can be added to Evolution CMS when the standard checkbox field is too limited for the project’s needs.
How to extend Shopkeeper price updates on the frontend when option changes should also recalculate comparison prices or savings labels.