Why my WordPress search page is slow, what are the best practices for a large number of posts for better performance?
First of all, Reactive pro is an instant search plugin. That means this plugin tries to fetch all your data (posts, terms, meta, term meta) in the initial load and generate the graph data for you so that when you do any search it becomes super fast.
This solution should work fine for a site that has (<10k) posts. We have tested up to 30k without any major performance drawback.
In case of the huge amount of posts ( > 5k ) you need to consider few things at first,
i) post ids
ii) number of terms
if you have lots of terms ( > 100 ) it can affect the initial load time of the search page, as we are using a graph searching algorithm. This algorithm uses 4 things two to build the graph.
i) It fetch post ids of the post type that you have selected in the builder.
ii) It fetches a number of terms from the taxonomy that you have selected in the builder.
iii) It fetch metadata from the meta key you have selected in the builder.
so, you can see with a huge number of post ids ( > 30k ), terms ( > 100 ) and metadata the page load time can take longer to create the graph for searching in your search page.
but it won't affect the searching system as once the graph has been build-up for the page it will be faster without any doubt.
to fix the performance of the initial page load you can try the below tips,
i) once your search page is created properly and ready for use you can check any caching plugin if it can improve the
page loading time although we don't have any recommended one let us know if any caching plugin can do it better.
ii) No, matter how many posts you have it won't affect the initial page load if you don't have a large number of terms ( > 300 ) or large posts contents. you can turn off post contents from the builder shortcode.
iii) if you have a small number of terms ( < 100 ) but the contents of your post are large for each post, you can turn off the post content but it that case you can't use the post contents in your grid it will be better for large post content you use the post excerpt or some custom meta field data to show them in the search result grid. large post contents happen when you use the page builder to create your post contents.
iv) check if you have any console errors with our plugin and deactivating 3rd party plugin can solve this error otherwise contact the support team.
v) you should have a very good server, By good server we mean more thann our recommended system status and the server should be able to process all of your posts data at a time otherwise you will get 500 error because your server has failed to process the request to provide all of your post data.
Basically, we want you to be conscious about your data on the search page because and the amount of data you are sending on the search page. the more data you will send the page will have to load the more size in your page for your data & post contents is one of the things you should be careful so that it won't load unnecessary data in your page.
So, you can see that this plugin can work great with a large number of posts if you can follow the above tips. This faq is mainly created to let you know that we are using a Graph Searching system here and the Only Performance concern is your initial page load which can take for the Graph building but it can be avoided with the above procedure.