- Facebook: minor style change. A white background has been added to fix the issue with Facebook's transparent/unreadable posts on dark styles.
- IMDb: it looks like they might be phasing out their embedded player. It's still working for now.
- Podbean: misc updated to keep up with their markup.
- Misc coding changes in the lazy loader. No functional change intended nor expected.
- NBC Sports: their video section is dead.
- Stitcher: they were acquired by Pandora in 2020, which shut down the Stitcher app and website a couple of months ago.
Fixed a bug introduced in 2.12.6 that prevents embeds from loading if the theme does not have a sticky header. If you have installed 2.12.6 and one of your theme does not have a sticky header, you'll want to upgrade to this version.
This release features a number of performance and quality of life improvements for the lazy loader. Keep reading if you're interested in the technical details. Also, Facebook, Twitter (now X), and YouTube have been updated with minor changes.
Perf: when browsing to a specific post (e.g. last post of a thread, or first unread post), browsers generally display the top of the page while it's loading, then once it has loaded enough assets (after a second or so), it scrolls down to the target. Recent versions of the lazy loader would ignore embeds at the top of the page until the browser scrolled to the target post, then it would load embeds normally. Starting with this version, the lazy loader will proactively look up what embeds are expected to appear after the browser scrolls to the correct post to load them up as soon as possible. This is expected to slightly shorten the time it takes to display the target post fully if that post contains an embed. If that embed is of dynamically-sized (e.g. a tweet or Facebook post) it may decrease the Content Layout Shift score as well.
Perf/QoL: when clicking on the attribution link of a quote, XenForo scrolls to that post. The lazy loader now proactively loads embeds in that post instead of waiting for the the scrolling to complete. In addition, even if the browser is scrolling up to that post, dynamically-sized embeds such as tweets will expand towards the bottom. Previously, they would expand towards the top, which is the desired behaviour when manually scrolling up but is an annoyance when automatically scrolling to a target.
QoL: after clicking the "back to top" icon, dynamically-sized embeds expand towards the bottom as in the aforementioned situation.
This update contains small modifications to the lazy loader that shouldn't have any noticeable effect. You can keep reading if you're interested in the details.
An upcoming update will feature some more fundamental changes intended to improve the experience of the most observant users as well as users with slow connections (e.g. mobile.) That upcoming update will have a greater potential to introduce unintended side-effects, and if that's the case it will be easier to diagnose them separately.
Comparing ccfcff34268966c737c6cddfe76b90ef9a11e624...8f59772bfc0536a42bd08e7506ceed5ad2e6875f · s9e/xenforo-ext-media-sitesAdd-on for XenForo 2. Contribute to s9e/xenforo-ext-media-sites development by creating an account on GitHub.github.com
This is a minor improvement to the lazy loader that only concerns dynamically-sized embeds such as tweets or Reddit posts.
The way dynamically-sized embeds work is that the content provider loads the embedded content then notifies the host page of the size it should be displayed as. This add-on usually acts as a middleman and caches this value for later viewings to reduce/eliminate Cumulative Layout Shift. Some content providers (most notably, 𝕏) are too eager to declare the size of their content, before their own images are fully loaded. This leads the add-on's lazy loader to create a placeholder of the correct size for the embedded content (e.g. tweet), then shrink it as the content provider incorrectly notifies that its content is smaller than expected, only to grow it back to the correct size once all content has loaded.
In this update, the lazy loader has been changed to provide a grace period before shrinking an embed. They still grow as soon as a new size has been determined, but they'll wait a little bit (5 seconds currently) before they shrink.
An option has been added to select how scraping is performed; It has four options: auto (default), native cURL calls, XenForo's client (Guzzle), or disabled. The default value is fine for the overwhelming majority of users so you don't have to care about it unless you use a special configuration for your network, in which case you should select the default XenForo client. Disabling scraping may prevent some content from being embedded.
The current default is to use native cURL calls because XenForo's client (Guzzle) does not seem support HTTP/2 at the moment. Future versions will eventually switch to use Guzzle, and the option will be removed.
In addition, defunct site Gfycat has been removed from the add-on and Facebook has been updated to support more video URLs.
An option has been added that will display a link to the original URL used to embed content. This is only available when the add-on is configured to use a
[URL]BBCode instead of the
[MEDIA]BBCode. The option is enabled by default buy only applies to content embedded via a
In addition, PHP requirements have been bumped to PHP 8.0+ as earlier versions are unsupported and are disappearing from Linux distributions.