Scanner says core files were modified? Open the diff. After wp2shell, that is often leftover access.

How to read it

Get started

Security Ninja sample templates for MainWP Pro Reports

Copy ready-made HTML blocks for lean monthly reports, issue-focused reports, or a complete Security Ninja token demo.

These HTML blocks are starting points for MainWP Pro Reports. Paste one into a report template, adjust the headings and CSS to match your agency, then preview it with a connected child site.

Run MainWP Sync at least once before testing. The [securityninja.month.summary] progress lines use daily metrics history, which fills over time when sites sync.

Lean client summary

Use this for a short monthly status section that gives clients a score, issue count, and vulnerability count.

<section class="security-ninja-summary">
  <h2>Website security summary</h2>
  [securityninja.month.summary]

  <p><strong>Current score:</strong> [securityninja.score]</p>
  <p><strong>Tests needing attention:</strong> [securityninja.tests.issues.count]</p>
  <p><strong>Known vulnerabilities:</strong> [securityninja.vulnerabilities]</p>
</section>

Issues-focused report

Use this when the report should show what needs attention and the recent activity behind it.

<section class="security-ninja-issues">
  <h2>Security work this month</h2>
  [securityninja.month.summary]

  <h3>Tests needing attention</h3>
  [securityninja.tests.issues.table]

  <h3>Known vulnerabilities</h3>
  [securityninja.vulnerabilities.table]

  <h3>Recent security events</h3>
  [securityninja.events.table]
</section>

Complete token demo

Use this while building or testing a template. It includes every Security Ninja token registered by extension version 2.3.0.

<section class="security-ninja-complete">
  <h2>Security Ninja report</h2>
  [securityninja.month.summary]

  <h3>Current status</h3>
  <p><strong>Score:</strong> [securityninja.score]</p>
  <p><strong>Known vulnerabilities:</strong> [securityninja.vulnerabilities]</p>
  <p><strong>Passed tests:</strong> [securityninja.tests.passed.count]</p>
  <p><strong>Tests needing attention:</strong> [securityninja.tests.issues.count]</p>
  <p><strong>Recorded events:</strong> [securityninja.events.count]</p>

  <h3>All security tests</h3>
  [securityninja.tests.table]

  <h3>Passed tests</h3>
  [securityninja.tests.passed.table]

  <h3>Tests needing attention</h3>
  [securityninja.tests.issues.table]

  <h3>Known vulnerabilities</h3>
  [securityninja.vulnerabilities.table]

  <h3>Recent events</h3>
  [securityninja.events.table]
</section>

If a token is empty

  • Run MainWP Sync for the child site.
  • Run Security Ninja tests so the score and test tables are current.
  • Confirm Security Ninja Pro is active on the child when you need events.
  • Allow daily metrics history to build before expecting a useful month-to-month trend.

See the complete token reference for descriptions and troubleshooting.

Still stuck? Get help or contact us.

Larger screenshot

Enlarged image