このプラグインは WordPress の最新3回のメジャーリリースに対してテストされていません。もうメンテナンスやサポートがされていないかもしれず、最新バージョンの WordPress で使用した場合は互換性の問題が発生する可能性があります。

BJ Lazy Load

説明

Lazy loading makes your site load faster and saves bandwidth.

This plugin replaces all your post images, post thumbnails, gravatar images and content iframes with a placeholder and loads the content as it gets close to enter the browser window when the visitor scrolls the page. Also works with text widgets.

Since it works with iframes, it also covers embedded videoes from YouTube, Vimeo etc.

You can also lazy load other images and iframes in your theme, by using a simple filter.

Non-javascript visitors gets the original element in noscript.

Compatible with the RICG Responsive Images plugin for responsive images.

Please let me know if you have any issues. Fastest way to get a response is by Twitter: https://twitter.com/bjornjohansen

翻訳

  • Russian (ru_RU) by Elvisrk
  • Hebrew (he_IL) by Imri Sagive
  • Polish (pl_PL) by Maciej Gryniuk
  • Norwegian Bokmål (nb_NO) by Bjørn Johansen

Development happens at GitHub. Pull requests are very welcome.

発展的な使用方法

If you have images output in custom templates or want to lazy load other images in your theme, you may pass the HTML through a filter:

<?php
$img_html = '<img src="myimage.jpg" alt="">';
$img_html = apply_filters( 'bj_lazy_load_html', $img_html );
echo $img_html;
?>

Note for developers: The filter has a priority of 10.

インストール

  1. プラグインをダウンロードした後に ZIP 展開してください。
  2. Upload the ‘bj-lazy-load’ folder to the ‘/wp-content/plugins/’ directory,
  3. 「プラグイン」メニューからプラグインを有効化します。

FAQ

インストール方法
  1. プラグインをダウンロードした後に ZIP 展開してください。
  2. Upload the ‘bj-lazy-load’ folder to the ‘/wp-content/plugins/’ directory,
  3. 「プラグイン」メニューからプラグインを有効化します。
このプラグインは JavaScript を使用しています。JS が使用できないユーザーはどうなりますか ?

心配しないでください。noscript 要素に元の要素が埋め込まれます。遅延読み込みされずにそのまま表示されます。

CDN を使用しているが、このプラグインは干渉しませんか ?

遅延読み込みはほとんどの場合において正常に動作します。画像は CDN から読み込まれるでしょう。

どのようにこのプラグインが機能していることを検証すればよいですか ?

HTML コードを確認するか、FireBug などの Web インスペクタを使用して遅延読み込みの動作を見ましょう。

評価

2020年12月23日
This plugins works great. For me is the best lazy load. Would be great to have a recent update.
2020年4月20日
Часто использую на сайтах клиентов. Работает всё четко, но есть опасения, что присутствуют дыры. Вердикт: если WP старый и новый плагин не работает - использовать этот!
2020年4月17日
Here is my speed test with GTmetrix. "With plugin" PageSpeed Score (94%) YSlow Score (86%) Fully Loaded Time 1.3s Total Page Size 881KB Requests 18 "Without plugin" PageSpeed Score (51%) YSlow Score (85%) Fully Loaded Time 3.5s Total Page Size 2.23MB Requests 38. My suggestion would be to set the threshold from 200 to 300 now my site is not only far faster but also loads correctly. I also use plugins like... Far Future Expiration Plugin Fast Velocity Minify Webcraftic Clearfy – WordPress optimization plugin To get my speeds this high. The only thing I would suggest is an update from the developer so its inline with the latest WordPress. However, on my latest WordPress, my website still seems faultless with this outdated plugin.
2019年11月23日
I downloaded this plugin because I wanted my images to load better for my blog readers. It works great, and once setup, I can just let it do its thing.
2019年7月31日
Got my requests down from 130 to 44, great plugin, hope they keep this updated to latest version of wordpress
89件のレビューをすべて表示

貢献者と開発者

BJ Lazy Load はオープンソースソフトウェアです。以下の人々がこのプラグインに貢献しています。

貢献者

“BJ Lazy Load” は10ロケールに翻訳されています。 翻訳者のみなさん、翻訳へのご協力ありがとうございます。

“BJ Lazy Load” をあなたの言語に翻訳しましょう。

開発に興味がありますか ?

コードを閲覧するか、SVN リポジトリをチェックするか、開発ログRSS で購読してみてください。

変更履歴

Version 1.0.9

  • 低解像度なプレビュー画像が使用されていない限りは、小さなサイズの画像を生成しません。
  • Default placeholder image transparency fix
  • W3C検証エラーを回避するため、画像サイズの属性を遅延読み込みします。
  • Change activation order of src and srcset to avoid loading both original and responsive version of image (by Lucian Florian)

Version 1.0.8

  • Skip classes regex fix
  • Amp compatibility (by mustafauysal)

Version 1.0.7

  • Update sponsored by Bonnier Tidskrifter
  • Fixed issue with srcset not lazy loading (by krispy1298)
  • Compatibility with BadgeOS plugin (by rohitmanglik)
  • WP’s theme style for submit button. (by odie2)
  • Images will now get the lazy-loaded class onload
  • Added optional rudimentary LQIP solution
  • Added working regex for selecting elements to skip

Version 1.0.6

  • Fixed bug when multiple iframes was on the same line of HTML code

Version 1.0.5

  • Added Polish language (by Maciej Gryniuk).
  • Remove leftover console.log() from debugging — oh, crap … I know 🙁

Version 1.0.4

  • We do not touch the feeds

Version 1.0.3

  • Fixed issue where some images wouldn’t be loaded on load under certain conditions.
  • Small performance improvement

Version 1.0.2

  • PHP 5.2 compatibility again

Version 1.0.1

  • Fixes issue with missing placeholder

Version 1.0

  • Internal rewrite. Code cleanup.
  • Supports 3rd party filters
  • Supports most infinite scroll (or content lazy loading) plugins (all that triggers post-load)
  • No more TimThumb
  • No more dependant on 3rd party JS, not even jQuery
  • Removed custom responsice/hidpi image handling in favour of compatibility with the RICG Responsive Images plugin
  • Added translations to Hebrew (he_IL) by Imri Sagive

Version 0.7.5

  • Also applies to text widgets (Thanks to Sigurður Guðbrandsson)

Version 0.7.4

  • Skips lazy loading of data-URIs

Version 0.7.3

  • Works with newlines in the HTML string for the IMG element

Version 0.7.2

  • Re-minified the combined js file for better compability with faulty minifiers

Version 0.7.1

  • Proper encoding of non-ASCII characters in filenames when using responsive or hiDPI images (thanks @testsiteoop)

Version 0.7.0

  • Added meta box to all public post types to exclude BJ Lazy Load for individual posts/pages
  • Placeholder image is replaced with a really short data-uri (thanks @jruizcantero)
  • Added a proper WordPress filter method for arbitrary HTML filtering with: apply_filters( ‘bj_lazy_load_html’, $html )
  • Updated scbFramework to release 58 (no more strict warnings in admin)
  • Updated jQuery.sonar to latest version (as of 2013-11-13)
  • Added POT file (Go translate!)
  • Added translation to Norwegian Bokmål (nb_NO)
  • Added translation to Russian (ru_RU) by Elvisrk

Version 0.6.10

  • Responsive and HiDPI images works with MultiSite subfolders
  • Lazy loading is disabled on Opera Mini
  • Removed leftin print_filters_for() function (sry)
  • User definable threshold

Version 0.6.9

  • Bugfix: Single quotes for the class attribute is now handled (thanks @kReEsTaL)
  • Bugfix: Removed strict error notice (thanks syndrael)

Version 0.6.8

  • Bugfix: sonar.js wouldn’t load properly when SCRIPT_DEBUG was set to true (thanks @techawakening)

Version 0.6.7

  • Combined JS files for faster loading
  • Bugfix for when viewport is resized – now triggering scroll event (thanks @kReEsTaL)

Version 0.6.6

  • Option to disable BJ Lazy Load for MobilePress

Version 0.6.5

  • Iframe lazy loading is now compatible with Gravity Forms’ ajax forms.

Version 0.6.4

  • Disable when viewing printable page from WP-Print

Version 0.6.3

  • Detects WPTouch Pro as well

Version 0.6.2

  • Bugfix: Remove notice of undefined constant when SCRIPT_DEBUG isn’t defined

Version 0.6.1

  • Bugfix: The infinite_scroll option wasn’t initialized

Version 0.6.0

  • Optionally serving size optimized images for responsive design/adaptive layout
  • Optionally serving hiDPI images (retina support)
  • Option to disable BJ Lazy Load for WPTouch
  • Fixed issue with infinite scroll (must be enabled on options screen)
  • Upgraded jQuery.sonar to latest version

Version 0.5.4

  • Possible to skip lazy loading of certain images with specified classnames
  • Made the placeholder image override an option setting in wp-admin

Version 0.5.3

  • Added filter: bj_lazy_load_placeholder_url – override placeholder image (should be an option setting in the future)

Version 0.5.2

  • Added the fadeIn effect

Version 0.5.1

  • Lowered jQuery version dependency
  • New options: More granular control on what content to lazy load

Version 0.5.0

  • Complete rewrite
  • Replaced JAIL with jQuery.sonar to accomodate for iframe lazy loading
  • Added lazy loading for iframes
  • The manual filter code now works as it should, lazy loading all images instead of just the first.

Version 0.4.0

  • Upgraded JAIL to version 0.9.9, fixing some bugs. Note: data-href is now renamed data-src.

Version 0.3.3

  • Replaced an anonymous function call causing error in PHP < 5.3

Version 0.3.2

  • The wp_head caller selector was added to the option page

Version 0.3.1

  • Also with d.sturm’s fix (thanks)

Version 0.3.0

  • Added BJLL::filter() so you can lazy load any images in your theme
  • Added the option to load in wp_head() instead (suboptimal, but some themes actually don’t call wp_footer())
  • Correctly removed the lazy loader from feeds

Version 0.2.5

  • Fixes Unicode-issue with filenames

Version 0.2.4

  • Now (more) compliant to the WP coding style guidelines.
  • All strings localized
  • Translations get loaded
  • POT file included (send me your translations)
  • Norwegian translation included

Version 0.2.3

  • Now using DOMDocument for better HTML parsing. Old regexp parsing as fallback if DOMDocument is not available.

Version 0.2.2

  • Added CSS. No longer need for hiding .no-js .lazy
  • Added options whether to include JS and CSS or not

Version 0.2.1

  • Added options: Timeout, effect, speed, event, offset, ignoreHiddenImages
  • Combining the two JS files for faster loading
  • Renamed the plugin file from bj-lazyload.php to bj-lazy-load.php to better fit with the plugin name

Version 0.2

  • Added options panel in admin
  • Added option to lazy load post thumbnails
  • Skipped the lazy loading in feeds

Version 0.1

  • Released 2011-12-05
  • It works (or at least it does for me)