Skip to main content

What You’ll Learn

  • Setting up the Pro Reports extension and Child Reports plugin
  • Creating recurring and one-time reports
  • Customizing report templates with tokens
  • Managing client information and branding

Extension Add-on - This add-on provides standalone functionality within MainWP Dashboard. No third-party plugins required.
The MainWP Pro Reports Extension combines the free MainWP Child Reports plugin with a customizable reporting engine. The Child Reports plugin tracks changes on your child sites, while the Pro Reports Extension on your Dashboard gathers that information and converts it to PDF reports. Key features:
  • Generate professional reports in seconds
  • Pre-made templates to get you started
  • Automatic PDF attachment to emails
  • Include or exclude specific content
  • Customizable template system
  • Custom branding options
Report preview

Setting up the Pro Reports Extension

Installation

1

Install MainWP Child Reports

Install the MainWP Child Reports plugin on all child sites. This free plugin records logging events that appear in your reports. Records are kept for 100 days.
2

Install Pro Reports Extension

Install the MainWP Pro Reports Extension on your Dashboard.
3

Sync your sites

Sync your sites so the Dashboard can detect which sites have the Child Reports plugin installed.
Reports require recorded activity. The MainWP Child Reports plugin must collect site data before reports can show meaningful content. After installation, allow several days for the plugin to record events such as updates, posts, and changes. Reports generated immediately after installation will display empty sections.
To test Pro Reports with default settings, skip to Create a One-Time Report. Client information and custom branding can be configured later.

MainWP Child Reports Plugin

The MainWP Child Reports plugin records changes on your child sites and communicates them to the Pro Reports Extension. Built on the Stream Plugin, it requires PHP 7.0 or higher.

Viewing Recorded Data

Go to WP Admin > Settings > MainWP Child > MainWP Child Reports on your child site to see recorded activity. Child reports data

Child Reports Settings

Child Reports settings Navigate to WP Admin > Settings > MainWP Child > MainWP Child Reports Settings to configure the plugin.
SettingDescription
Hide from reportsExcludes the MainWP Child Reports plugin from reports
Keep Records IndefinitelyRetains all records (not recommended for performance)
Keep Records forMaximum days to retain activity records (default: 100)
Akismet TrackingTrack comment spam attempts blocked by Akismet (not recommended)
Comment Flood TrackingTrack duplicate comments blocked by WordPress (not recommended)
WP-Cron TrackingTrack cron event activity (not recommended)
Reset DatabaseDelete all activity reports from the database

Client Information

Pro Reports uses tokens to personalize reports without creating separate versions for each client. Tokens are placeholders like [client.email] and [client.name] that get replaced with actual values when reports generate. You can define client information in two ways:
MethodDescriptionBest For
Client FeatureDefine information once, assign multiple sites to a clientManaging many sites per client
Per-Site SettingsSet information individually on each site’s Edit pageMaximum flexibility
When the same token is defined in both locations, the per-site value takes priority.

Setting Per-Site Client Information

1

Navigate to site settings

Go to MainWP Dashboard > Sites > Manage Sites and click Edit on the desired site.
2

Configure tokens

Locate the Pro Reports Tokens section and enter values for tokens you plan to use.Pro report tokens
3

Save settings

Click Save Settings.

Report Types

Pro Reports offers two report formats. Recurring reports run on a schedule you define. One-time reports cover a specific date range you select manually.
AspectRecurringOne-Time
ScheduleDaily, Weekly, or MonthlyNone (manual send)
Date RangeAutomatic based on scheduleCustom start and end dates
ActionSchedule ReportSend Now
Use CaseOngoing client updatesProject completion, audits

Create a Recurring Report

1

Open Create Report

Go to MainWP Dashboard > Extensions > Pro Reports > Create Report.
2

Configure report settings

Create report
SettingDescription
Report titleName for identifying this report
Report typeSelect Recurring
ScheduleDaily, Weekly, or Monthly
Send report onDay of week or month (for Weekly/Monthly schedules)
Report PDF file nameOptional custom filename for the PDF attachment
Report TemplateSelect from available templates
3

Customize content and design

Report settings
TabOptions
Custom ContentCustomize heading, introduction, and closing message using tokens
Report DataChoose sections to include. Default “Hide if empty” omits sections with no activity
Custom BrandingUpload logo and header image, customize colors
4

Configure email settings

FieldDescription
Send email fromYour email address and name
Send email toClient email and name (supports tokens like [client.email])
Reply-toOptional reply address
Email subjectSubject line (supports tokens)
Email messageEmail body (supports tokens)
Email templateSelect template style
BCC email addressOptional blind copy recipient
Additional attachmentsOptional extra files
5

Select sites and schedule

Select sites in the right-hand metabox. Preview as HTML or download the PDF for review. Click Save Draft to save without scheduling, or Schedule Report when ready.Report site selection

Create a One-Time Report

1

Open Create Report

Go to MainWP Dashboard > Extensions > Pro Reports > Create Report.
2

Configure report settings

One time report
SettingDescription
Report titleName for identifying this report
Report typeSelect One-time
Report date rangeStarting and ending dates
Report PDF file nameOptional custom filename
Report TemplateSelect from available templates
3

Customize content and design

Report data settings
TabOptions
Custom ContentCustomize heading, introduction, and closing message using tokens
Report DataChoose sections to include. Default “Hide if empty” omits sections with no activity
Custom BrandingUpload logo and header image, customize colors
4

Configure email settings

FieldDescription
Send email fromYour email address and name
Send email toClient email and name (supports tokens)
Reply-toOptional reply address
Email subjectSubject line (supports tokens)
Email messageEmail body (supports tokens)
Email templateSelect template style
BCC email addressOptional blind copy recipient
Additional attachmentsOptional extra files
5

Select sites and send

Select sites in the right-hand metabox. Preview as HTML or download the PDF for review. Click Save Draft to save without sending, or Send Now when ready.Report sites selection

Pro Reports Dashboard

MainWP Child Reports Overview The MainWP > Extensions > Pro Reports > Child Reports Dashboard page monitors all child sites with the MainWP Child Reports plugin installed.

Status Indicators

Row ColorMeaningAvailable Action
RedPlugin not activatedActivate
YellowUpdate availableUpdate
NormalPlugin active and currentHide/Unhide

Dashboard Columns

ColumnDescription
VersionMainWP Child Reports plugin version
Last ReportWhen the last report was sent
Reports DB SizeDatabase space used by reports
Bulk actions for Activate, Update, Hide, and Unhide are available at the top of the page. If a site with the plugin installed does not appear, re-sync your sites.

Translate Titles and Headings

Pro Reports 4.1.1 introduced the Custom Titles feature for translating and customizing all titles, subtitles, and table headings. Find this option in the Report Content & Design Customization section. Report custom titles Customized strings are saved per report, allowing multiple language versions. Actual data values depend on the language of plugins, themes, and WordPress Core on child sites and cannot be translated through this feature.

Create Custom Report Templates

Pro Reports uses PHP templates that you can customize with HTML. The process involves copying a built-in template and modifying it to suit your needs.

Creating a Custom Template

1

Download the extension

2

Extract and locate templates

Extract the plugin files and find the default templates in /mainwp-pro-reports-extension/templates/reports/.
3

Copy and customize

Copy a PHP file, rename it, and edit with your preferred code editor.
4

Upload the template

Upload your customized PHP file to /wp-content/uploads/mainwp/report-templates/ on your Dashboard site.
5

Select the template

Your template appears in the Report template dropdown.Report template selection

Token Types

Pro Reports uses four token types that you can add directly to PHP templates or through the visual editor.
TypeDescriptionExample
Client TokensDisplay data from Individual Child site settings[client.email], [client.name]
Section TokensLoop through database records within a date range[section.plugins.installed]...[/section.plugins.installed]
Data TokensDisplay specific values inside section tokens[plugin.name], [plugin.installed.date]
Counter TokensDisplay counts outside section tokens[plugin.installed.count]
See all available tokens: Available Pro Reports Tokens

Client Tokens

Client tokens display data set in the Individual Child site Edit tab. Set values for tokens you plan to use in reports. Site token values Use [client.email] in the Send email to field to send reports to multiple clients automatically. Email settings Click Insert tokens to see available options. Field tokens

How Tokens Work Together

The following example demonstrates all three token types working together in a template:
Plugins installed: [plugin.installed.count]

[section.plugins.installed]
  Plugin: [plugin.name]
  Installed: [plugin.installed.date]
[/section.plugins.installed]
Counter tokens display totals and must appear outside section tags. They end with .count. Section tokens loop through database records within the report date range. They require opening and closing tags. Data tokens display specific values and must appear between section token tags. Report data preview Template tokens

Delete Reports

Delete report
1

Navigate to reports

Go to MainWP > Extensions > Pro Reports > Reports.
2

Delete the report

Click the Actions Menu on the report you want to delete, select Delete, and confirm.

Duplicate Reports

Duplicate report
1

Navigate to reports

Go to MainWP > Extensions > Pro Reports > Reports.
2

Duplicate the report

Click the Actions Menu, select Duplicate, enter a new title, configure Send To and Send From fields, and click Save Draft.

PDF Storage

PDFs generated by Pro Reports are saved on the Dashboard site in /wp-content/uploads/mainwp_pro_reports/.

Pro Reports REST API

All MainWP REST API calls, including documentation and examples, are available on Postman. See MainWP REST API for details on enabling the API and managing keys.