Nid yw’r ategyn hwn wedi cael ei ddiweddaru ers 3 ryddhad mawr. Efallai nad yw’n cael ei gynnal bellach ac efallai bod materion cydnawsedd wrth gael ei ddefnyddio gyda fersiynau mwy diweddar o WordPress.

Cached l10n

Disgrifiad

Upon inspection using xhProf, I realized that the PHP implementation loading the MO files is really slow.
From my tests, about 25% to 40% of the time WordPress spends rendering the page is actually spent locating, parsing and merging all the translation files.

This plugin works by caching the whole $l10n variable holding all the text domains and overridding the load_textdomain.

Caching is done using serialize and written to wp-content/uploads/l10n.pson.
Be sure to regenerate the cache if a .mo changes.

TODO

  • Provide a better UI page

Speed comparison

Comparing WordPress Gettext loading vs this plugin.

Using the average response time of:
siege -c 1 -r 100 -b http://localhost/

Vanilla: Fresh install of WordPress
Common: WPML, Types, Views, and Gravity Forms
Total Cache: Common + Total Cache (APC object/database cache, no page cache)
BuddyPress: BP-Registration-Options, BP Show Friends, BuddyPress, BuddyPress Activity Plus, Gravity Forms, Invite Anyone, U BuddyPress Forum Attachment, U BuddyPress Forum Editor, User Switching

            Vanilla         Common          Total Cache     BuddyPress
Native      202 ms          565 ms          478 ms          567 ms
Cached      193 ms (-5%)    322 ms (-43%)   333 ms (-30%)   431 ms (-24%)

Gosod

wp-content/uploads/l10n.pson must be writable

  1. Activate plugin
  2. Go to plugin’s settings page
  3. Hit the regenerate button
  4. WP_DEBUG must be false

Adolygiadau

Read all 3 reviews

Contributors & Developers

“Cached l10n” is open source software. The following people have contributed to this plugin.

Cyfranwyr

Translate “Cached l10n” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Cofnod Newid

0.2.2

  • Refactored code
  • Fixed small issues

0.2

  • Refactored code
  • Added some detection when translations change

0.1

  • Orignal submission