This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

IDNA

Description

This plugin adds IDN support to WordPress, making it an IDNA application. An IDN is a domain name that contains non-ascii characters.
This plugin enables one to set the WordPress address (URL) to an IDN. (instead of the Punycode Representation)

Examples of an IDN:

  • bĂŒcher.ch
  • domĂŠne.dk
  • nörgler.com
  • uddannelsesstĂžtte.dk
  • mĂŒller.de
  • rĂ€ksmörgĂ„s.nu
  • ç”»ćƒ.jp

“An IDNA-enabled application is able to convert between the internationalised
and ASCII representations of a domain name. It uses the ASCII form for DNS
lookups but can present the internationalised form to users who presumably
prefer to read and write domain names in non-ASCII scripts such as Arabic or
Hiragana. Applications that do not support IDNA will not be able to handle
domain names with non-ASCII characters, but will still be able to access such
domains if given the (usually rather cryptic) ASCII equivalent.” –
IDN entry at Wikipedia

In simple terms, this plugin allows one to set their blog url to an IDN.

If you are interested in seeing what the PUNYCODE version of your IDN is, here is an online conversion tool

As an example:

Frau MĂŒller has a blog and wants to use the IDN, http://www.mĂŒller.de
Currently, she would have to set the WP blog url, (General Settings menu) to
the Punycode version: xn--mller-kva.de, (which is the ascii representation
of mĂŒller.de) this would allow users using a IDN aware web browser to access
the site using the desired url: http://www.mĂŒller.de
(and also of course, xn--mller-kva.de).

It is more convenient for Frau MĂŒller to use the actual IDN
http://www.mĂŒller.de as the WP blog url setting (General Settings menu),
this plugin enables that functionality.

There are a few caveats with using this plugin, depending on what Browser, Operating
System and versions used, one can get unexpected results.

Firefox >= 3.*

Firefox supports IDN’s but maintains a ‘whitelist’ of ‘safe’ domains.
.com, .net, .eu are not white listed for safety reasons, so IDN’s on these
domains will display as Punycode. see bug:

There is an new (‘experimental’) Firefox add-on,
IDN Navbar, which
will enable all (whitelisted – Punycode) domains to display as IDN’s.
So, if using Firefox and this plugin you (and your visitors) may want to install that addon.

Internet Explorer >= 7.*

Depending on your language set up, site’s that contain non ‘native language’
characters will display as Punycode and not the IDN. More info
msdn blogs
msdn libs1
msdn libs2

Safari/Opera 10.* seem to display IDN’s for all domain’s fine. (untested)

Arbitrary section

WP plugins have a ‘stable tag’ requirement for distribution, however, at this
time, I consider this plugin to be Beta quality at best.

It is possible to lock your self out of the administrative section of your blog

NOTE make sure you are using an IDN capable web browser when enabling this plugin.
More

NOTE Unfortunely, Current Firefox versions display the Punycode version and
NOT the IDN. For more details, (and work around) see the ‘Other Notes’ Link
(Arbitrary section – readme.txt)

IE7/8, Safari, Opera10 all display the actual IDN, Firefox (and Chrome)
navigation bar’s display the IDN as Punycode. (i.e. www.xn--)

There are some security issues with multi-byte chars and phishing, so this is
Mozilla’s current approach, this may change in the future, as some folks are not
happy about it.

https://bugzilla.mozilla.org/show_bug.cgi?id=542562
another related, one: https://bugzilla.mozilla.org/show_bug.cgi?id=354592

Because this plugin effects how you access your site, installation is slightly more
involved than most plugins.

If you installing this plugin, I would recommend, if possible, that it is the
first thing you do on your blog, before you add any content, just in case
something goes wrong, this will minimize downtime.

NOTE If something goes wrong and you cant access the WP admin area after
changing your url, here are some instructions for
resetting your url

Please report any bugs you find to the author of this plugin

Screenshots

  • General Settings Section. Illustrates using an IDN (in place of the Punycode representation)(If you tried setting the URL field to an IDN without this plugin, Saved it, then tried accessing your site, it would fail. (i.e. this screen shot proves the plugin works - for this IDN anyway,...)
  • Login to Admin area using the IDN (IDNA aware browsers would do the conversion anyway, so even if you are using the Punycode representation in 'General Settings', you could login using the IDN in the Browser Navigation bar. (i.e So this img doesn't actually prove anything)
  • Access the Dashboard area using the IDN (same note as point 2)
  • General Settings Section. Illustrates using another IDN (in place of the Punycode representation) (same note as 1)

Installation

NOTE: This plugin requires PHP5

See The Notes in: ‘Other Notes’ below before installing

  1. Point a web browser to WP plugins

  2. Search for idna, download and upload to your web host.

  3. Copy the whole idna directory to the /wp-content/plugins/ directory of your WP blog

  4. Access the administrative section of your WP blog.
    (In a typical default installation, WP determines your hostname and sets the WP blog url field
    to the Punycode verion of your url, so you should be able to access the administrative section
    of your WP blog using the Punycode version of the IDN) if that is not the case, you will first
    have to set the blog Url to use the Punycode version of your IDN, so you
    can access the administrative section to activate the plugin.

  5. To get the PUNYCODE version of your IDN, here is an online conversion tool

  6. Activate the plugin IDNA through the Plugins menu in WordPress

  7. Change your WP Url to now use your IDN

    • Navigate to General Settings menu
    • set the WordPress address (URL) field to your IDN name (*)
    • set the Blog address (URL) field to your IDN name
    • Save Changes
  8. If something does go wrong and you get locked out of the admin section, see
    the notes in ‘Other Notes’ (Arbitrary section), to regain access.

  • Unfortunely, for security reasons, current Firefox versions will display the Punycode
    version and NOT the IDN. For more details,(and work around)
    see the ‘Other Notes’ Link (Arbitrary section – readme.txt).

FAQ

Q: What is an IDN? Do I need this plugin?

A: If you don’t know, you don’t need it.

In a nutshell:
IDN is an abbrevation for “Internationalized Domain Name”

Internationalizing Domain Names in Applications (IDNA) is a mechanism defined
in 2003 for handling internationalised domain names containing non-ASCII
characters.

These names are typically written in languages or scripts which do not use the
Latin alphabet: Arabic, Hangul, Hiragana and Kanji for instance.

Read more,
IDN info at Wikipedia

Q: Do you use a IDN library in this plugin?

A: Yes, this one, Php_Net_idna.
Many thanks to the author for their fine work on this great library!

Q: My URL is an IDN in the .com space, how come Firefox show’s http://xn-
then some characters that are not my IDN?

That is the Punycode representation of your IDN. There is an new (‘experimental’)
Firefox add-on, IDN Navbar,
which will display the IDN instead of Punycode. So, if using Firefox and this
plugin you (and your visitors) may want to install that addon.

Reviews

There are no reviews for this plugin.

Contributors & Developers

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

Contributors

Translate “IDNA” into your language.

Interested in development?

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

Changelog

1.2.0

Beta Release
* bug fixes: creates invalid urls in RSS feeds (from Chris Ramey)

1.1.0

Beta Release
* bug fixes: 404 on bulk actions, move to trash, empty trash (edit.php)

1.0.0

  • I’m calling this a stable release for the ‘stable tag’ requirement, however, I haven’t received enough feedback to actually consider it stable yet.

0.0.1

  • Initial Release