WPUltimo mercator sso is being loaded synchronously, at the top of all pages. Unfortunately this slows down the visible load (paint) significantly.
I ran some tests on the revamped Google PageSpeed (it’s brutal!), and found the <span class=”lh-metric__title”>Speed Index</span> (first paint etc) was 3 to 4 times slower than using WPMU DEV’s Domain Mapping sso in asynchronous mode. Meaning, a vistor will visibly see the site load that much slower with WPultimo sso.
Now I may have missed the obvious, but is there a way to load mercator sso asynchronously? If not, can this please be considered for a future version?
SSO should only be running the first time the user switched the domain context (from your network domain to a mapped domain or vice-versa). Are you saying that it is running on every page request?
If that’s the case, I might need to take a closer look to see what might be happening here. Once the cookies are in place, there’s no need to load the SSO script again.
What evidence do you see that the SSO is the cause behind it?
Yes, that was my impression too, but it seems to be running even for site visitors.
If you put a domain with domain mapping and sso enabled through GTmetrix.com and click “Waterfall” you can see the admin-ajax.php?action=mercator-sso-js…. file loading at the top of each page load.
With no mapped domain on an account and running the subdomain URL through Gtmetrix you will see that mercator-sso is not laoded anywhere on the page.
Now, if there is a way to never load mercator unless it is a logged in user, that would be awesome! 🙂
I’ll try to run some tests to see what I can do. Hopefully I can include something for the next dot release (1.9.1).
Thanks for the report, Paul!1 year, 1 month ago dennyParticipant
I’ve had much bigger fish to fry, but I’d been wondering about the performance impact of this as well and if I should just turn off the login syncing altogether.
Haven’t had anyone complain yet, but my customers are very technical and web savvy so I know it’s only a matter of time before someone asks.
I just toyed with this a few days ago and of course it runs even for users that are not logged ir, this is the purpose of SSO, to transform a user that is not logged in on the mapped domain but is on the main domain and to log them over here as well. It was funny when I finally realized it, haha.
In any case, I’m trying to make it more efficient and responsive, as well as making sure the script gets loaded asynchronously. I’m pretty sure this will be part of the next release.
Thanks for the heads up, guys!
Ah haa… that makes sense. lol.
The abiltyto load the script asynchronously may well help a lot.
Perhaps don’t force load it though, but allow it as an “option”.
You can already disable SSO on WP Ultimo Settings -> Domain Mapping and SSL -> Enable Single Sign-On. What I’m going to do is to add an option to load it in async mode.
Ah Yes, I meant that: “option to load it asynchronously”. 🙂 lol.
(The reason it would need to be optional is because some “Page Builders” do not always work well with delayed loading of SSO.)
Paul11 months, 4 weeks ago manticarodrigoParticipant
I would like to disable SSO, but I am unable to login (in mapped domains) after unchecking the setting. I get the cookie error seen in the attachment.
Also, maybe unrelated but, I am forcing https via Nginx but I also have to force https in WP Ultimo or I get a redirect loop.
Any ideas on what may be causing this issue?
(presshub.me *main site, platefit.co, thomasteamproperties.com)
- This reply was modified 11 months, 4 weeks ago by manticarodrigo.
Attachments:You must be logged in to view attached files.10 months ago icemanParticipant
Just following this up as I can not see an “asynchronous” option in ver 1.9.9. (Or have I completely missed where this function has been added?)
“What I’m going to do is to add an option to load it in async mode.”
When will this be available please?…. as it’s really killing page load times by adding 3 seconds to Time to First Byte (TTFB)…. and that’s with a blank page.
Paul10 months ago icemanParticipant
Thanks Arindo. I’ve sent you an email.
How is this going please?
This is actually very urgent as it is killing Google page speed results.
I’ve run several tests, and for a customer with a lot of active plugins on their site the issue becomes increasingly worse. A site with lots of plugins but not running mercator can have good page loads times. But, with mercator-sso activated, the more plugins active, the longer the delay added to page loads by mercator-sso loaded at the top of the page.
That is why there NEEDS to be an option to load mercator asynchronously. As it stands WPUltimo’s domain mapping is unusable for us, and I suspect for anyone else with a larger number of plugins activated.
Just to be clear, the overall page loading will be similar even if mercator-sso is loaded asynchronously, BUT the perceived page loading speed is what will be improved dramatically.
Google calls it “<span class=”lh-metric__title”>Speed Index” which shows you how quickly the contents of a page are visibly populated</span>. (https://developers.google.com/web/tools/lighthouse/audits/speed-index). It’s a BIG factor for Google in determining PageSpeed. Poor pagespeed means less value in Google searches.
Paul7 months, 1 week ago zachkinseyParticipant
My page speed has been demolished from mercator.
Domain Mapping with WPUltimo isn’t useable until then.7 months, 1 week ago icemanParticipant
Arindo emailed me a working fix for this, where sso is loaded further down the page. I thought it would have been included in the latest versions of WPUltimo.
I would suggest contacting Support direct (email@example.com) and seeing where it is at.
- This reply was modified 7 months, 1 week ago by iceman.
The forum ‘WP Ultimo’ is closed to new topics and replies.