Many WPMUDev plugins have problem with PHP 5.4


Since our server host company upgraded our server to PHP 5.4, we are getting many errors. While I undertand the plugins need to be backwards compatible, surely they should also be forwards compatible?

Plugins showing the error:
Comments Plus
Ultimate Branding

Here is just a small sample of the error messages showing:

Strict Standards: Redefining already defined constructor for class Wdcp_PublicPages in
public_html/wp-content/plugins/comments-plus/lib/class_wdcp_public_pages.php on line 12

Strict Standards: Non-static method Wdcp_PublicPages::serve() should not be called statically in
public_html/wp-content/plugins/comments-plus/comments-plus.php on line 101

Strict Standards: Redefining already defined constructor for class AppointmentsGcal in
public_html/wp-content/plugins/appointments/includes/class.gcal.php on line 26

Notice: Undefined property: stdClass::$url_type in
public_html/wp-content/plugins/ultimate-branding/ultimate-branding-files/modules/custom-admin-bar-files/inc/UB_Admin_Bar_Menu.php on line 129

Now, we have made some -fast-and-dirty work-arounds to stop them showing for now, but as soon as there is an update for these plugins (if it does not fix these errors), then these error messages are going to show again to front end users, which will look very unprofessional.

Please help with a long-term solution. Can you update the plugins to fix these please?

Thank you

  • Timothy Bowers

    Hey there Duncan,

    Thanks for getting in touch, hope you had a fantastic weekend.

    We do need to support PHP 5.2.4, this is due to WordPress commitment:

    As you noted we do need to be both backwards and forwards compatible, and in this case we are. Those strict standards and notices are both just notices, they should not prevent the plugin from functioning at all.

    If you do have any issues with functionality I'd welcome you to open a ticket for those and we'll happily address those.

    Of course we'll mention those notices to our developers, but one thing to note is that in a production environment you should turn off error reporting so that your end users don't see them at all. With WP_DEBUG you can still record any output like this:

    You can use the WP_DEBUG_LOG to record those, and then WP_DEBUG_DISPLAY to ensure they're not echoed to the browser.

    A sandbox environment is where debugging should be enabled to test and ensure there are no issues before pushing live. Of course there are instances where you need to enable them to debug something.

    As I mentioned, I'll pass this along to our developers too.

    Thanks for letting us know Duncan, have a great day! :slight_smile:

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.