Trigger Browsersync

Trigger Browsersync Install Statistics

0
100%
Today: 0 Yesterday: 0 All-time: 1,294 downloads
Trigger Browsersync Icon

Try plugin: Trigger Browsersync

We'll create fresh WordPress site with Trigger Browsersync installed. You have 20 minutes to test the plugin after that site we'll be deleted.

Takes ~10 seconds to install.

About Trigger Browsersync

Integrates WordPress with Browsersync to trigger events like Reload when you edit pages and settings.

2


1


0


0


0

updated: 2 years ago
since: 7 years ago
author: Sami Greenbury

Description

Integrates WordPress with Browsersync to trigger events like reload when you edit pages.

The plugin also only triggers a reload for now. If you have requests or ideas for other functionality, get in touch.

Since you (should) disable this plugin on production sites, the WordPress stats won’t be reliable – if you find the plugin useful I’d really appreciate it if you’d let me know with a quick email or message!

Triggers

By default the plugin will trigger a reload on these actions:

  • save_post – Editing posts/pages/custom posts etc
  • added_option – Changing settings
  • attachment_updated – Editing media fields (caption etc)
  • updated_postmeta – Covers many things, particularly regenerating media thumbnails. Some meta_fields are ignored (see trigger_browsersync_irrelevant_meta_keys)
  • activated_plugin
  • deactivated_plugin
  • delete_widget

you can customise this as well as other Browsersync settings using filters:

add_filter('trigger_browsersync_reload_actions', function($filters) {
    // Remove a default. Bear in mind that one action you take (e.g. saving a page)
    // may trigger more than one hook.
    unset($filters['save_post']);
    // Add your own. The key name lets other filters remove it (like the line above)
    $filters['wp_logout'] = 'wp_logout';
    return $filters;
});

Ignoring Meta Keys

Not all meta_key updates (triggered by updated_postmeta) have any impact on the front-end functioning of your site. You can customise which meta_key values are ignored with the trigger_browsersync_irrelevant_meta_keys filter:

add_filter('trigger_browsersync_irrelevant_meta_keys', function($filters) {
    // Remove a default.
    unset($filters['_edit_lock']);
    // Add your own. The key name lets other filters remove it (like the line above)
    $filters['_edit_lock'] = '_edit_lock';
    return $filters;
});

Configuration with Filters

The default Browsersync settings will be used (http://localhost:3000) but you can use filters to change them. The filters are used every time the trigger is activated so you don’t need to set them before instanciating the class.

add_filter('trigger_browsersync_protocol', function(){ return 'https'; } );
add_filter('trigger_browsersync_host', function(){ return 'dev.server'; } );
add_filter('trigger_browsersync_port', function(){ return '4321'; } );

Or you can specify the whole URL which will cause the others to be ignored, but don’t include a trailing slash.

add_filter('trigger_browsersync_url', function(){ return 'http://localhost:3000'; } );

Environmental Configuration

Since you probably only want Browsersync on your development or staging site, the plugin will do nothing once you activate it it in WordPress.

To make it work, you’ll want to create a file to activate it. See Installation for instructions.

Logging Activity

Trigger Browsersync can log events to the WordPress log – this is especially useful for development on the plugin when you want to add or exclude a new event from triggering an action.

To enable logging add this filter to your enable-trigger-browsersync.php file (see Installation);

add_filter('trigger_browsersync_log_events', '__return_true');