We’re making some exciting behind-the-scenes changes with how we’ll be handling the language files in the next version of Event Espresso and moving forward. Some things will be drastically different but we’re doing this with our users in mind so there will be very little on your end that you need to worry about except in some very specific cases, which I’ll cover in this post.
How we’re currently handling languages
Currently, Event Espresso bundles all of our language files in the plugin. This leads to a very large plugin. Over 25MB is used just for the language files after they are extracted. Some hosts — particularly shared servers with limited resources — will throw script timeout or
max_file_upload errors when uploading or installing Event Espresso. The compressed size of Event Espresso is over 7MB currently, which exceeds the 5MB threshold that’s often the default for shared servers. The new compressed size of Event Espresso with this update is just over 3MB! No more
max_file_upload issues. No more script timeouts. The install and update process will be much smoother and faster.
Starting with the next release, 3.1.30, we will be discontinuing the inclusion of all language files in the core Event Espresso plugin. This will drastically reduce the size of the overall plugin, making installs and upgrades much faster and eliminate a lot of the current issues that people have with their installs and updates.
Instead of bundling the language files in the core plugin, we’re offloading those files to a GitHub repository. If you are using one of the language files (e.g., you have a locale set in your
wp-config.php via the
WP_LANG definition), Event Espresso will dynamically fetch just those language files from the GitHub repository and download them into your
What changes for English (US) language users?
Nothing. If you aren’t using the language files, you won’t notice any changes with the possible exception of updates being faster than they were previously.
What changes for everyone else (non-English (US) language users)?
It’s possible that the files don’t download correctly from GitHub. This is a worst-case scenario as it should magically work out of the box when you update. If this happens, you can download the relevant language file from our public GitHub repository and upload it to your
With every Event Espresso update, if there have been updates to the language files, they will automatically get downloaded to your
/languages/ directory and overwrite the existing language files. If the language files have been updated and you would like to incorporate the updated language files before the next release of Event Espresso is available, you can do so by downloading the files from GitHub.
Special cases (if you’ve modified your language files)
If you’ve modified your language files (for example, to modify a string to display a different message), you will now be able to upload your customized language files to
/wp-content/uploads/espresso/languages/. This will override the language files in
/event-espresso/languages/. You will be responsible for updating the language file if there are changes to the source.
What this means to translators
For translators, nothing has changed, really, except that you can now download the final .mo/.po files from GitHub once they are added to the repository. However, for people who are familiar with Git and Github, please do not submit pull requests to the GitHub repository. They will be ignored. The proper process is still to get validator access on the GlotPress site and make your translations there. However, you will now also be able to upload customized/modified language files to
/wp-content/uploads/espresso/languages/ if, for example, you wanted to test a translation you were making changes to.
Our translation project is 100% community-supported, and we are proud of how it’s grown. There are now 26 language files in development and we hope to continue to watch that figure grow and those translations fill out in 2013 and beyond. If you would like to be involved in one of our translations or to translate Event Espresso into a language we don’t have yet, please fill out our translator application and we will get your account set up.