In the StockPack plugin at the time of this post, all the providers are available by default in the provider selector. This is so that you can search stock images from Adobe Stock, Unsplash, Pixabay, and Depositphotos without leaving the WordPress admin. You can now change that from the settings, or with the stockpack providers filter.
Changing providers from settings
From the setting, page uncheck the providers you want to remove from your list. Then click save.
The provider filter overwrites the options here, so make sure to remove the filter if you want to use the settings.
Remove a provider from the list
The filter we introduced is called `stockpack_providers` and it feeds the providers array allowing easy change.
Here’s an example of removing Pixabay from the list by using the stockpack providers filter:
<?php function stockpack_providers( $providers ) { return [ 'Deposit Photos' => __( 'Deposit Photos', 'stockpack' ), 'Adobe Stock' => __( 'Adobe Stock', 'stockpack' ), 'Unsplash' => __( 'Unsplash', 'stockpack' ), ]; } add_filter( 'stockpack_providers', 'stockpack_providers', 20, 1 );
You will need to add the code in your theme’s functions.php file or a site-specific plugin.
The code works by specifying which providers to be shown, so it’s important to note that this will keep the list based on options you add.
Hide the provider selector
If you want to hide the provider selector you can just return an empty array. In that case, the default will be the only option, and the select will disappear.
To control the default you need to access https://stockpack.co/providers and select the one you need.
Here’s the code to remove the providers select from StockPack:
<?php function stockpack_providers( $providers ) { return []; } add_filter( 'stockpack_providers', 'stockpack_providers', 20, 1 );
Keep only free options
To only keep free options in the providers selector, you can use this code:
<?php function stockpack_providers( $providers ) { return [ ‘Pexels’ => __( ‘Pexels’, ‘stockpack’ ), ‘Pixabay’ => __( ‘Pixabay’, ‘stockpack’ ), ‘Unsplash’ => __( ‘Unsplash’, ‘stockpack’ ), ]; } add_filter( ‘stockpack_providers’, ‘stockpack_providers’, 20, 1 );
When should you use the stockpack providers filter
As StockPack grows, more and more providers will be added, so this will come in handy, as having too many options might be confusing for some users.
If you are a development agency and you would like to offer this to the clients you build websites for, you might restrict their choices so they can get more focused, but also if you provide some credits as part of your development package.
The stockpack provider filter can also be used with user levels and capabilities in case you want some of the editors to have access to some free providers while others would have access to paid providers.
If you are in doubt you can also reach us via support and we will be happy to help. You might also be interested to learn that StockPack allows you to add stock images in Elementor.
This is good to know, but could be clearer — especially for those of us who are not developers.
1) It’d be good to mention where the reader should add the code. (I assumed functions.php, and added it there via the Code Snippets plugin.)
2) The code does not “Remove a provider from the list” — it defines which providers are *in* the list, which the exact opposite action. (It also means that any providers you add in future won’t show up until the reader becomes aware of it and edits their code again.)
Still, I used this information to achieve what I wanted, which was to list on the licence-free providers from those currently available:
function stockpack_providers( $providers ) {
return [
‘Pexels’ => __( ‘Pexels’, ‘stockpack’ ),
‘Pixabay’ => __( ‘Pixabay’, ‘stockpack’ ),
‘Unsplash’ => __( ‘Unsplash’, ‘stockpack’ ),
];
}
add_filter( ‘stockpack_providers’, ‘stockpack_providers’, 20, 1 );
Hi Eric, thank you for the valuable feedback. The post has been updated!
I would love to see an update where you put providers checkboxes that the user can just select from the settings screen and then only those show up in the media area.
I will add the feature to be done via settings, in the meantime if you let me know what providers you want, I can give you the code.
We’ve just released this feature under the plugin options in version 3.3.4. Make sure to remove the filter if you added one.
Hi Team,
Great Plugin,
However as per client’s requirement, need to add two more premium providers like Shutterstock & Freepik, please inform us how to do it and what kind of efforts are required.
Hey, thank you for the kind words, unfortunately we are not able to add Shutterstock due to their closed api, and freepik does not offer an oauth api at the moment.