Support » Plugin: Edit Flow » Large user list causing slow performance

  • Resolved cb2112


    We currently have 315k+ subscribers on our WordPress site. There are delays in loading admin pages and post pages with the notification plugin enabled. This includes adding users to Edit Flow groups and when trying to create/change posts and pages. I’m assuming this is due to having to populate the users list from a large user base.

    How can we modify any get/list users functions to select only admins, editors, authors and contributors from the userbase and ignore any subscribers? I notice that pagination for the user lists is on a TODO list (for sites that have billions of users as noted in code).

    Any help would be greatly appreciated!



Viewing 7 replies - 1 through 7 (of 7 total)
  • Plugin Author Daniel Bachhuber


    Do you have any special roles set up? The user selection form is only supposed to grab contributors and above by default (e.g. "who" => "author")

    There are no special roles set up, just the WordPress default ones nor are there any additional roles defined in EditFlow. However, there are some 300k of newsletter subscribers also stored in the user database, however these users are not assigned to any site. Perhaps we can filter on that?

    Plugin Author Daniel Bachhuber


    To clarify, are the subscribers showing up in your users list, or just the contributors, authors, and editors? How many of the latter do you have?

    The subscribers (all 43,000 plus) are showing up in addition to the contributors (620), authors (112), editors (68).

    I’ve verified that the newsletter subscribers (not assigned to any site) are not being pulled into the list.

    Plugin Author Daniel Bachhuber


    With that many editors, authors and contributors, I think you’re going to have performance issues regardless. Could it be that a small number of users only ever need to be subscribed to posts? If that was the case, you could limit the query to just specific user IDs.


    Sorry for the long delay in getting back to you. The client had considered going in a different direction but decided this is the best plugin available. Having said that, can you provide me with a bit of assistance in modifying the query to select specific user IDs?

    Thank you.

    Plugin Author Daniel Bachhuber


    Sure, you can use a filter like this:

    add_filter( 'ef_users_select_form_get_users_args', 'efx_users_select_form_get_users_args' );
    function efx_users_select_form_get_users_args( $args ) {
    	$args['include'] = array(
    			1, // User id == 1
    	return $args;

    You’ll want to modify the ‘include’ argument to contain the user IDs for the users you’d like included. Whew, that’s a mouthful 🙂

Viewing 7 replies - 1 through 7 (of 7 total)
  • The topic ‘Large user list causing slow performance’ is closed to new replies.