First of all, update Relevanssi to the latest version. This significantly increased indexing performance on my 80,000+ page website.
Next, I created the following hacky solution for a problem that shouldn’t exist; the fact that Relevanssi cannot silently index everything without hogging all server resources. First find out the number of pages Relevanssi can index in one go without overloading your server, say 500. Then use the following Tampermonkey script on the Relevanssi settings page. You need Chrome’s Tampermonkey extension. Here’s what the script does:
- It enables jQuery on the Relevanssi dashboard.
- It waits 15 seconds, then clicks the “Continue indexing” button. Once the indexing is done and the page reloads, it waits 15 seconds, then clicks it again, and so on.
- Leave this running in a tab until all pages are indexed, then turn the script off and close the tab.
Below is the code:
// ==UserScript== // @name Relevanssi Index Button Clicker // @namespace https://hawramani.com // @version 0.1 // @description Click click click // @match http://mywordpressite.com/wp-admin/options-general.php?page=relevanssi/relevanssi.php // @copyright 2014 jQuery, Ikram Hawramani // ==/UserScript== (function () { function loadScript(url, callback) { var script = document.createElement("script") script.type = "text/javascript"; if (script.readyState) { //IE script.onreadystatechange = function () { if (script.readyState == "loaded" || script.readyState == "complete") { script.onreadystatechange = null; callback(); } }; } else { //Others script.onload = function () { callback(); }; } script.src = url; document.getElementsByTagName("head")[0].appendChild(script); } loadScript("https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js", function () { //jQuery loaded console.log('jquery loaded'); setTimeout(function(){$('[name="index_extend"]').click();},15000); }); })();