MainWP Community

Reporting required updates to clients

Hi All,

I’m not actually new to MainWP, but have only very recently (this year!) begun to put the pieces of the puzzle together in order to supply a worthwhile maintenance plan to clients.

One thing that would be immensely useful would be teh ability to send a report to a web design client, who has not actually signed up for a maintenance plan, that highlights everything that has NOT been done, everything that NEEDS updating etc.

This would be a great means of really getting a message to clients that their sites need the TLC that is provided by a maintenace plan susbcription.

So, is there a way that I’ve yet to spot, or would a possible future extension be able to provide a ‘You really should sign up for a plan, just look at the peril your site is in!’ stye of report, to focus the clients attention a little on the routine maintenance of their site?

Many thanks!
Lee

2 Likes

@midsussexwebsites I believe you are referring to MainWP Report extension, but for that you would need to install MainWP child on that prospect client’s site and connect it to your Dashboard to be able to create needed report, if I correctly understood your requirement.

You could go with one of our Reporting extension and create custom tokens. By default, there are no tokens to show available updates, but there are hooks to create tokens.

// Create Custom tokens
add_filter( 'mainwp_client_reports_tokens_groups', 'mycustom_reports_tokens_groups' );
function mycustom_reports_tokens_groups( $tokens ) {
       // examples
       $tokens['plugins']['sections'][] = array( 'name' => 'section.plugins.custompluginsection', 'desc' => 'Custom plugin section descriptions' );
       $tokens['plugins']['nav_group_tokens']['custompluginsection'] = 'Custom plugin section';
       $tokens['custompluginsection'][] = array( 'name' => 'plugin.custompluginsection.tokenname1', 'desc' => 'Token1 name descriptions' );
       $tokens['custompluginsection'][] = array( 'name' => 'plugin.custompluginsection.tokenname2', 'desc' => 'Token2 name descriptions' );
       return $tokens;

}

// token values
add_filter('mainwp_client_reports_custom_tokens', 'mycustom_reports_custom_tokens');
function mycustom_reports_custom_tokens($tokens_values, $report) {
       $tokens_values['[plugin.custompluginsection.tokenname1]'] = 'Value for custom token name1';
       $tokens_values['[plugin.custompluginsection.tokenname2]'] = 'Value for custom token name2';
       return $tokens_values;
}
1 Like

Thanks for the reply. The scenario is that I have the child plugin on all client sites presently and have them setup within MainWp. Some clients have a paid arrangement with me to maintain their sites, some don’t, but they are all active in MainWP nevertheless. Those that do not have a maintenace agreement in place are grouped accordingly.

Until recently I have gone ahead and kept everything in order for them, but from the start of this year I decided it was time they paid their way or maintained their own sites.

So I have created reports for all maintenance paying clients. Now I’d like to create a report for those clients that I wish to convince of the virtues of an agreement, a report that shows them specifically what I can see in the dashboard, i.e. everything that needs upddating etc. to bring their site up to date!

These are typically clients that would never venture into the Wordpress admin area, and I suspect never have done so, so for them it’s a case of they can’t see the potential problems, so don’t worry about it! So a means of reporting to them (think of it as responsible reporting I guess) that they need to act would be a great way to strengthen the case for them to once again consider subscribing to a plan.

1 Like

Thanks Bogdan, will certainly take a look at this - though the truth be told, as a ‘non-coder’ I don’t think I have the brains for it :slight_smile: but if this would allow me to get the details of available updates that’d certainly fulfil the need. Appreciate the reply, wish me luck, I feel faint just looking at the code!