Posted on

Extended Contact Details for Non-English Locations Updated

SLP Contact Extender Banner

Contact Extender 4.1.02 is now available for download. This version fixes the field names for all Contact Extender data columns.

If you had installed the interim 4.1.01 release with translated field named and modified you search queries, headers for location import/export, or order by queries and are not using English as the default language for WordPress you will need to revise your installation when upgrading to this release.

Most users will not be impacted by this update.

Contact Extender German Translation


Posted on

Enhanced Results Fixes For Non-English Featured Locations

Results Order By Foreign Language Banner

Enhanced Results version 4.1.09 has passed testing and is now available for download.

This version fixes the field names for the extended data RANK and FEATURED data columns.   If you have modified you search queries, headers for location import/export, or order by queries and are not using English as the default language for WordPress you will need to revise your installation when upgrading to this release.

Prior releases that were running with translations in place for “Featured” or “Rank” were creating the field names in the extended data table with the translated string as the actual field name.  This was causing problems with the built-in Enhanced Results order-by clause and having other side effects.   With the 4.1.09 patch the field names will remain in their native English format while the displayed text on the user interface and admin interface will be the translated string.

Enhanced Results Order By de_DE Translation
Enhanced Results Order By de_DE Translation


Posted on

Translation Team : SLP 4.1 / SLP Pro 4.1 Uploaded

WordPress Languages

The latest Store Locator Plus 4.1 and Store Locator Plus Pro Pack version 4.1 have been uploaded to the Store Locator Plus board on Trello.  Community Contributors (The CiCi Group) can use their Trello login to access the board and retrieve the latest English .po files and zip files of these plugins.

SLP 4.1 is scheduled to go into production this coming Wednesday (the Jan 29th), translations are desired but not required by that date.

SLP Pro 4.1 is scheduled to go into production Thursday (Jan 30th) or Friday (Jan 31st), translations are desired but not required by that date.

Translations that arrive after production release dates will be added and published in a patch release.

Getting Started

The easiest way to do a translation, in my opinion, is to install theCodestyling Localizaton plugin.

  • Install Codestyling Localization
  • Download/Install/Activate the latest version of SLP attached.
  • Go to Tools/Localization in your admin panel.
  • Find the Store Locator Plus section
    — Rescan for an existing language
    — Add New Language to add a new language
  • Click Edit
  • Edit any items that need to be changed.
  • Save the items (this creates/updates the .po file)
  • Click “generate mo-file” when done.

When you are finished send the .po and .mo file or post it here and send a note to

Languages Wanted

It would be great to have all of the SLP plugins translated into the top 10 languages used by the WordPress community!

The CiCi Group

If you are part of the Community Contributors group of coders or translators you have already been invited to this board.

If you are a translator and wish to become a member of the Store Locator Plus Community Contributors board please use the contact form and indicate your interest in translating the Store Locator Plus plugin into a new language.    When your completed translation is received you will be granted access to the board and copies of the latest add-on packs.

The SLP board at Trello shares insight in the current and future path of Store Locator Plus. What we are working on as a community group, what ideas and concepts are being considered, and what is in production.   The only way to become part of the “C C group” is to contribute to Store Locator Plus.  The fastest path at the moment is to submit one of the 100+ translations that are wanted for the base plugin.



Posted on

Translating Plugins and Excess SLP Files

wpCSL Code Messages

I am working on an issue that is causing JavaScript to stop displaying subpanels when a language translation does not load properly.   While working on that problem I noticed this construct in a few of the .po language files:

#: WPCSL-generic/build/zipfiles/store-locator-le/include/storelocatorplus-actions_class.php:331
#: WPCSL-generic/build/zipfiles/svnrepo/tags/3.11.10/include/storelocatorplus-actions_class.php:331
#: WPCSL-generic/build/zipfiles/svnrepo/tags/3.11.11/include/storelocatorplus-actions_class.php:331

All of the entries with WPCSL-generic/build/ are not part of the final product distribution, or they SHOULDN’T BE as of a bug fix made around April of 2013.   I have not yet found where these entries are being generated.  I’m guessing from the Codestyling Localization plugin that is scanning all of the files in the plugin directory.

If you are going to start a translation and notice that your server has a ./WPCSL-generic/build directory you can, and should, safely delete the entire WPCSL-generic directory from under the store-locator-le directory.   In fact this is true of ANY site that has SLP installed.  Not only does it save disk space, but removing any WPCSL-generic/build files will reduce the code living on the server which means less vectors of attack for hackers.

Leave the WPCSL-generic/classes directory.  That is the correct production build of the wpCSL framework.



Posted on

Store Locator Plus 3.11.13

Store Locator Plus Language Banner

Store Locator Plus 3.11.13 was released today.   It is the simplest release I’ve done in the past year since taking over the plugin development.    This release adds the Dutch translation files to the base product.   The language code is nl_NL.

Thank you Jan de Baat for your contribution!

Jan will get a premium add-on pack for the effort.   Jan used the Codestyling Localization plugin to create the NL language files and send along the .po and .mo files to me via email.

That’s it.  Back to the custom code updates and 4.0 work.

Posted on

Translating Plugins To Your Language

Some of my plugins use settings in the main application settings page to set labels on the user interface.    However, MOST of the admin interface instructions and labels and some of the labels on the user interface can only be changed by using the WordPress language translation system.

To create a translation file you will need to download the latest .pot file for the plugin that you wish to translate, then create a .po file from it.    The easiest way to start is simply copy the .pot file to a new <locale>.po file, such as da_DK.po.

All of my plugins have a languages subdirectory that contains the .POT and some .PO files that have already been translated.

POT files

After the strings are marked in the source files, a gettext utility called xgettext is used to extract the original strings and to build a template translation POT file. Here is an example POT file entry:

#: wp-admin/admin-header.php:49
msgid "Sign Out"
msgstr ""

PO files

Every translator takes the WordPress POT file and translates the msgstr sections in their own language. The result is a PO file with in the same format as a POT, but with translations and some specific headers.

Naming The PO and MO Files

The .po and .mo files should follow the standard naming convention which is:

<text_domain>-<language code>_<country code>.<po|mo>

For Store Locator Plus, the text domain is csa-slplus.   You can see this in the top of the store-locator-le.php file as part of the comment, however not all plugins will have that helpful hint.    You should look for the load_plugin_textdomain function call within the plugin to find the true identity of text_domain.     This is on line 241 in the storelocatorplus-actions_class.php file (for Store Locator Plus version 3.11) which reads load_plugin_textdomain(‘csa-slplus’,false, SLPLUS_PLUGINDIR.’languages/’);

The language code is one of the pre-defined language codes as defined by PHP.   This is typically a lowercase pair of letters such as “en” for English or “es” for Spanish.

The country code is one of the pre-defined 2-letter country codes.  For example, US for USA, GB for United Kingdom, for Canada.

The combination of language plus country code allows for nuances in the language that my vary by specific location.

Thus, for an American translation the file name for Store Locator Plus would be csa-slplus-en_US.po and   For The United Kingdom it would be csa-slplus-en_GB.po and

Using Codestyling Localization Plugin

I recommend using the Codestyling Localization plugin to make it far easier to create the related PO files.   This plugin reads the plugin directory and provides a web based interface for creating translations.

Send Your Translation

If you create a .po translation file, please send it to us at info_at_charlestonsw_dot_com or post it in the forums.  Tell me which plugin or add-on pack and which version of the plugin you created it for, and I will include it in the next public release.

Also, if you send a complete translation file,  I’ll grant access to the premium add-on packs for your account!

Related Resources