Custom Settings for Easy Blogging on a Multisite Config

What needs to be done so that the easy blogging settings (such as wizard and CPTs) are different for each sub-sites on a multisite configuration?

  • Tom Eagles

    @rmandmllc

    That would require something way beyond this possibilities of this plugin, the whole idea behind this plugin is to provide a uniformed level of user experience across the whole network.

    You could try our jobs board here

    Sorry to report bad news but that's just the way we went with the plugin, i will tag the developer and see if he knows of something or how complex you idea would be.

    Kindest Regards

    Tom

  • Vladislav

    Hello,

    The recent Easy Blogging releases expose a filter hook for option getting, that's triggered each time an option is requested. The filter name is in this format "wdeb_get_option-{$pfx}-{$key}", where $pfx is the option namespace (e.g. "wdeb" for regular Easy mode, "wdeb_wizard" for Easy wizard), and $key is the option name being requested (e.g. "plugin_theme" or "hijack_start_page"). By hooking up to this filter, you can target different options for different sites on your network - and also, only target the options you actually wish to change, while leaving others to inherit the plugin defaults.

  • rmandmllc

    @Vladislav

    Thank you, we see that this hook "wdeb_get_option-{$pfx}-{$key}" does indeed return an option from a Easy Blogging Setting, however it seems this function cannot be used outside the plugin to make Easy Blogging customisable at a sub-site level.

    The goal here is to link a different Easy Blogging Set-up to different themes, so if for example we have 2 themes on our network, we would have 2 instances of Easy Blogging for each of them, each with its own options and settings.

    We see the plugin keeps its files in wp_sitemeta, in 4 columns: wdeb_wizard, wdeb_wdws_history, wdeb_activated_plugins and wdeb. The logical step to make this function at a sub-site level seems to have these 4 entries X number of themes, and of course change the way it's managed from the dashboard. The question is, could the Easy Blogging Plugin be somewhat kept in its original structure (regarding classes and methods) and have an exterior handler instantiate multiple set-ups?

    Another question would be, how much will this affect the overall speed/need of resources, if, for example, there are 20 instances of Easy Blogging?

    Thank you.

  • Vladislav

    Hello,

    Actually, if I got everything right, I believe there could be a simpler way to achieve something along the lines you proposed, but in a bit different manner of thinking. In this scenario we would be using the mentioned options hook rather then having 20+ instances of Easy Blogging (which would, indeed, be somewhat heavy). There would be only one, central Easy Blogging instance - but, by making use of the "wdeb_get_option-{$pfx}-{$key}" hook, we would feed it different data based on your preferences - and thus, in effect, have a customized environment for each run.

    This idea relies on some custom code in a mu-plugin or theme's functions.php (which is in this case possibly even better) to intercept the "wdeb_get_option-{$pfx}-{$key}" hook and feed it different data, which could come from any source - be it hardcoded in your code, or some sort of theme settings. This way also has the benefit of keeping the plugin code and your improvements and customization upon it clearly separated - the plugin itself would be kept without changes, which will come in handy for future updates too.

    I hope this helps. Of course, it's possible I misunderstood your usage scenario, in which case I apologize and would love to learn more about it.