SlideShare una empresa de Scribd logo
1 de 25
Descargar para leer sin conexión
10 common mistakes
WordPress developers
make
when building multilingual sites
Agnes Bury
present
● community specialist at
OnTheGoSystems
● responsible for WPML
showcase
● WordPress blogger
past
● WordPress freelancer
Agenda
1. Common mistakes
a. description, real life
examples
b. disadvantages
c. how to do it right and
how you benefit
2. Experience exchange
3. Prizes for winners
Prizes for active attendees
● one WPML license
WordPress Multilingual Plugin
● two Toolset licenses
Toolset Plugins Let You Develop
WordPress Sites Without PHP
more at wp-types.com
Is this site multilingual?
Source: niromusic.com
1. Not inserting a language switcher
Possible reasons
1. Oops. I did
forgot.
2. There is a
language
switcher, you
just didn’t
notice it.
3. I don’t need a
language
switcher
source: http://foto-factory.com/
Browser language based redirection
If you rely on redirection
instead of using a
language switcher
● your site might not get
indexed
● you may irritate your users
● if not all pages have
translations, users might
feel lost
● users might not realise
that the site in available in
other languages
How to do it right?
● Insert your language
switcher for each page
● Make sure it stands out
● Cross link all your pages
● If you want to redirect
your visitors, do it right:
○ use js and cookies
approach
○ do it only if a
translation exists
source: destibationvarsovie.com
Redirections done right
2. Using automated translations
Why people use
automated translations
1. This the easiest way (not
recommended!)
2. They don’t think about
search engines
3. They don’t know how to
find professional
translators
source: jamespaulphotography.co.uk
2. Using automated translations
Disadvantages
● poor quality content
● translations might not
get indexed
How to do it right
● keep each page
translated on a separate
URL
● always provide good
quality translations made
by a human
Source: http://googlewebmastercentral.blogspot.com/2010/03/working-with-multilingual-websites.html
3. Mixing languages on the same page
The reasons users mix
languages
1. they don’t know how to
translate specific
elements
2. their multilingual plugin
does not support
translation of all
elements
3. they don’t think about
search engines
source:http://kjjdentaloffice.co.il/
4. Not translating media
Common
mistakes
● ignoring titles
and alts
● all media titles
and alts in the
site main
language
● uploading the
same image for
each language
source: http://oneferro.com source: http://ricette.donnaecasa.com
4. Media translation: how to do it right
● upload your image
once
● provide its
alternative text and
title for each
language
5. Not translating widgets
Common mistakes
● all sidebar strings in site
main language
● language “mix” in titles
● side by side translation
source: fotomarathon.desource: oneferro.com
5. Not translating widgets
Make your widgets
translation ready
● WordPress default
widgets will appear in
WPML String translation
● custom widgets coded
correctly (apply_filters
for widget_title and
widget_text) will appear
in String translation
● use Widget Logic plugin
for all other cases
using Widget Logic plugin
using WPML panel
6. Not translating theme dependant strings
Frequently skipped strings
● ‘posted in’
● ‘category’
● ‘Error 404 - page not
found’
● ‘no comments’
● ‘read more’
● strings coming from
your theme options
Source: http://www.eliplay.eu/nl/blog/
How to translate theme strings
● using .po/.mo files and
GetText editors
● from the WPML panel
How to translate theme options
● use wp_options and
wpml-config.xml
● check your theme in our
Compatibility program
7. Hard coding language dependent strings
● Bad
<?php echo ‘Error 404: Page not found’;
?>
<input type=”button” name=”buy-
button” value=”Buy now!” />
● Good
<?php _e(‘Error 404: Page not found’,
‘my-textdomain’) ?>
<input type=”button” name=”buy-
button” value=”<?php esc_attr_e(‘Buy
now!’, ‘my-textdomain’) ?>” />
source: www.studying-in-england.org
i18n and what to internationalize
● Basic strings _e, __
● Variables printf(__( 'Your
city is %s.', 'my-theme'
),$city);
● Plurals _n, _n_noop
● Context _x
● Handling JavaScript files
wp_localize_script()
● Escaping strings
esc_html_e() esc_attr_e()
● Date and number functions
number_format_i18n(),
date_i18n()
Source: https://make.wordpress.org/docs/plugin-developer-handbook/15-internationalization/
8. Ignoring non-techie users’ needs
● can you copy from the
original?
● can you change your
admin language?
● how about menu
synchronization?
● how easy will you add
another language?
● turn ordinary users into
translators
9. Ignoring eCommerce trends
source: http://trends.builtwith.com/shop/
WooCommerce Multilingual plugin
● The number of WP
eCommerce shops is
rapidly growing
● check ahead if your
multilingual plugin
supports eCommerce
● don’t discourage your
customers with an
untranslated checkout
process
10. Ignoring WordPress compatibility
● Don’t let new
WordPress releases be
a surprise for your
multilingual site
● Make sure your
multilingual plugin is
kept up to date with
WordPress releases
What would you add? Discussion

Más contenido relacionado

La actualidad más candente (7)

Using disqus & facebook comment in wordpress themes
Using disqus & facebook comment in wordpress themesUsing disqus & facebook comment in wordpress themes
Using disqus & facebook comment in wordpress themes
 
AS3讀書會(行前準備)
AS3讀書會(行前準備)AS3讀書會(行前準備)
AS3讀書會(行前準備)
 
Php
PhpPhp
Php
 
Notes (2012-06-08)
Notes (2012-06-08)Notes (2012-06-08)
Notes (2012-06-08)
 
EIA 2015 Less Is More - Speedy Design
EIA 2015 Less Is More - Speedy DesignEIA 2015 Less Is More - Speedy Design
EIA 2015 Less Is More - Speedy Design
 
Creating Yahoo Mobile Widgets
Creating Yahoo Mobile WidgetsCreating Yahoo Mobile Widgets
Creating Yahoo Mobile Widgets
 
Joomla 1.6 multilingual - 2Value meeting
Joomla 1.6 multilingual - 2Value meetingJoomla 1.6 multilingual - 2Value meeting
Joomla 1.6 multilingual - 2Value meeting
 

Similar a 10 common mistakes WordPress developers make when building multilingual sites

Website Redesign: Less Hassle, More Happy
Website Redesign: Less Hassle, More HappyWebsite Redesign: Less Hassle, More Happy
Website Redesign: Less Hassle, More Happy
Sisarina
 
Debugging Web Apps on Real Mobile Devices
Debugging Web Apps on Real Mobile DevicesDebugging Web Apps on Real Mobile Devices
Debugging Web Apps on Real Mobile Devices
Dale Lane
 

Similar a 10 common mistakes WordPress developers make when building multilingual sites (20)

Going Global - WordPress Multilingual
Going Global - WordPress MultilingualGoing Global - WordPress Multilingual
Going Global - WordPress Multilingual
 
wcdk - Making your WordPress Multilingual
wcdk - Making your WordPress Multilingualwcdk - Making your WordPress Multilingual
wcdk - Making your WordPress Multilingual
 
Going Global WordPress Multilingual
Going Global WordPress MultilingualGoing Global WordPress Multilingual
Going Global WordPress Multilingual
 
Creating a style guide for website using Elementor
Creating a style guide for website using ElementorCreating a style guide for website using Elementor
Creating a style guide for website using Elementor
 
JUG Utrecht 2013 - Have you tried turning it off and on again? Problemen oplo...
JUG Utrecht 2013 - Have you tried turning it off and on again? Problemen oplo...JUG Utrecht 2013 - Have you tried turning it off and on again? Problemen oplo...
JUG Utrecht 2013 - Have you tried turning it off and on again? Problemen oplo...
 
Discover the power of browser developer tools
Discover the power of browser developer toolsDiscover the power of browser developer tools
Discover the power of browser developer tools
 
PHP BASIC PRESENTATION
PHP BASIC PRESENTATIONPHP BASIC PRESENTATION
PHP BASIC PRESENTATION
 
MAKE YOUR THEMES AND PLUGINS READY FOR TRANSLATION
MAKE YOUR THEMES AND PLUGINS READY FOR TRANSLATIONMAKE YOUR THEMES AND PLUGINS READY FOR TRANSLATION
MAKE YOUR THEMES AND PLUGINS READY FOR TRANSLATION
 
WordPress Internationalization, Localization and Multilingual - Do It Right
WordPress Internationalization, Localization and Multilingual - Do It RightWordPress Internationalization, Localization and Multilingual - Do It Right
WordPress Internationalization, Localization and Multilingual - Do It Right
 
Multilingual WordPress
Multilingual WordPressMultilingual WordPress
Multilingual WordPress
 
Website Redesign: Less Hassle, More Happy
Website Redesign: Less Hassle, More HappyWebsite Redesign: Less Hassle, More Happy
Website Redesign: Less Hassle, More Happy
 
Problemen oplossen in Joomla - Joomladagen 2014
Problemen oplossen in Joomla - Joomladagen 2014Problemen oplossen in Joomla - Joomladagen 2014
Problemen oplossen in Joomla - Joomladagen 2014
 
Why Your Site is Slow: Performance Answers for Your Clients
Why Your Site is Slow: Performance Answers for Your ClientsWhy Your Site is Slow: Performance Answers for Your Clients
Why Your Site is Slow: Performance Answers for Your Clients
 
Developing Custom WordPress Themes for Clients
Developing Custom WordPress Themes for ClientsDeveloping Custom WordPress Themes for Clients
Developing Custom WordPress Themes for Clients
 
WordPress Themes: underlying, unifying design for a blog
WordPress Themes: underlying, unifying design for a blog WordPress Themes: underlying, unifying design for a blog
WordPress Themes: underlying, unifying design for a blog
 
Don't Get Lost in Translation: Multilingual Site Building with Drupal 7 at Dr...
Don't Get Lost in Translation: Multilingual Site Building with Drupal 7 at Dr...Don't Get Lost in Translation: Multilingual Site Building with Drupal 7 at Dr...
Don't Get Lost in Translation: Multilingual Site Building with Drupal 7 at Dr...
 
International sites hreflang
International sites hreflangInternational sites hreflang
International sites hreflang
 
WordPress Multilingual: Benefits and Considerations
WordPress Multilingual: Benefits and ConsiderationsWordPress Multilingual: Benefits and Considerations
WordPress Multilingual: Benefits and Considerations
 
Debugging Web Apps on Real Mobile Devices
Debugging Web Apps on Real Mobile DevicesDebugging Web Apps on Real Mobile Devices
Debugging Web Apps on Real Mobile Devices
 
Emergency WordPress Troubleshooting
Emergency WordPress TroubleshootingEmergency WordPress Troubleshooting
Emergency WordPress Troubleshooting
 

Más de Agnieszka Bury

Más de Agnieszka Bury (8)

Nowy edytor WordPressa - problemy, dylematy i jak się z nimi zmierzyć
Nowy edytor WordPressa - problemy, dylematy i jak się z nimi zmierzyćNowy edytor WordPressa - problemy, dylematy i jak się z nimi zmierzyć
Nowy edytor WordPressa - problemy, dylematy i jak się z nimi zmierzyć
 
Warsztaty z Gutenberga - prezentacja
Warsztaty z Gutenberga - prezentacjaWarsztaty z Gutenberga - prezentacja
Warsztaty z Gutenberga - prezentacja
 
Czy Gutenberg wygryzie page buildery?
Czy Gutenberg wygryzie page buildery?Czy Gutenberg wygryzie page buildery?
Czy Gutenberg wygryzie page buildery?
 
7 najczęściej popełnianych błędów podczas tworzenia stron wielojęzycznych na ...
7 najczęściej popełnianych błędów podczas tworzenia stron wielojęzycznych na ...7 najczęściej popełnianych błędów podczas tworzenia stron wielojęzycznych na ...
7 najczęściej popełnianych błędów podczas tworzenia stron wielojęzycznych na ...
 
Gutenberg, nowy edytor WordPressa - o co tyle szumu?
Gutenberg, nowy edytor WordPressa - o co tyle szumu?Gutenberg, nowy edytor WordPressa - o co tyle szumu?
Gutenberg, nowy edytor WordPressa - o co tyle szumu?
 
Pan mi to zrobi na WordPressie
Pan mi to zrobi na WordPressiePan mi to zrobi na WordPressie
Pan mi to zrobi na WordPressie
 
Jak się robi strony na Zachodzie
Jak się robi strony na ZachodzieJak się robi strony na Zachodzie
Jak się robi strony na Zachodzie
 
wooCommerce Multilingual
wooCommerce MultilingualwooCommerce Multilingual
wooCommerce Multilingual
 

Último

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 

Último (20)

LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide Deck
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 

10 common mistakes WordPress developers make when building multilingual sites

  • 1. 10 common mistakes WordPress developers make when building multilingual sites
  • 2. Agnes Bury present ● community specialist at OnTheGoSystems ● responsible for WPML showcase ● WordPress blogger past ● WordPress freelancer
  • 3. Agenda 1. Common mistakes a. description, real life examples b. disadvantages c. how to do it right and how you benefit 2. Experience exchange 3. Prizes for winners Prizes for active attendees ● one WPML license WordPress Multilingual Plugin ● two Toolset licenses Toolset Plugins Let You Develop WordPress Sites Without PHP more at wp-types.com
  • 4. Is this site multilingual? Source: niromusic.com
  • 5. 1. Not inserting a language switcher Possible reasons 1. Oops. I did forgot. 2. There is a language switcher, you just didn’t notice it. 3. I don’t need a language switcher source: http://foto-factory.com/
  • 6. Browser language based redirection If you rely on redirection instead of using a language switcher ● your site might not get indexed ● you may irritate your users ● if not all pages have translations, users might feel lost ● users might not realise that the site in available in other languages
  • 7. How to do it right? ● Insert your language switcher for each page ● Make sure it stands out ● Cross link all your pages ● If you want to redirect your visitors, do it right: ○ use js and cookies approach ○ do it only if a translation exists source: destibationvarsovie.com
  • 9. 2. Using automated translations Why people use automated translations 1. This the easiest way (not recommended!) 2. They don’t think about search engines 3. They don’t know how to find professional translators source: jamespaulphotography.co.uk
  • 10. 2. Using automated translations Disadvantages ● poor quality content ● translations might not get indexed How to do it right ● keep each page translated on a separate URL ● always provide good quality translations made by a human Source: http://googlewebmastercentral.blogspot.com/2010/03/working-with-multilingual-websites.html
  • 11. 3. Mixing languages on the same page The reasons users mix languages 1. they don’t know how to translate specific elements 2. their multilingual plugin does not support translation of all elements 3. they don’t think about search engines source:http://kjjdentaloffice.co.il/
  • 12. 4. Not translating media Common mistakes ● ignoring titles and alts ● all media titles and alts in the site main language ● uploading the same image for each language source: http://oneferro.com source: http://ricette.donnaecasa.com
  • 13. 4. Media translation: how to do it right ● upload your image once ● provide its alternative text and title for each language
  • 14. 5. Not translating widgets Common mistakes ● all sidebar strings in site main language ● language “mix” in titles ● side by side translation source: fotomarathon.desource: oneferro.com
  • 15. 5. Not translating widgets Make your widgets translation ready ● WordPress default widgets will appear in WPML String translation ● custom widgets coded correctly (apply_filters for widget_title and widget_text) will appear in String translation ● use Widget Logic plugin for all other cases using Widget Logic plugin using WPML panel
  • 16. 6. Not translating theme dependant strings Frequently skipped strings ● ‘posted in’ ● ‘category’ ● ‘Error 404 - page not found’ ● ‘no comments’ ● ‘read more’ ● strings coming from your theme options Source: http://www.eliplay.eu/nl/blog/
  • 17. How to translate theme strings ● using .po/.mo files and GetText editors ● from the WPML panel
  • 18. How to translate theme options ● use wp_options and wpml-config.xml ● check your theme in our Compatibility program
  • 19. 7. Hard coding language dependent strings ● Bad <?php echo ‘Error 404: Page not found’; ?> <input type=”button” name=”buy- button” value=”Buy now!” /> ● Good <?php _e(‘Error 404: Page not found’, ‘my-textdomain’) ?> <input type=”button” name=”buy- button” value=”<?php esc_attr_e(‘Buy now!’, ‘my-textdomain’) ?>” /> source: www.studying-in-england.org
  • 20. i18n and what to internationalize ● Basic strings _e, __ ● Variables printf(__( 'Your city is %s.', 'my-theme' ),$city); ● Plurals _n, _n_noop ● Context _x ● Handling JavaScript files wp_localize_script() ● Escaping strings esc_html_e() esc_attr_e() ● Date and number functions number_format_i18n(), date_i18n() Source: https://make.wordpress.org/docs/plugin-developer-handbook/15-internationalization/
  • 21. 8. Ignoring non-techie users’ needs ● can you copy from the original? ● can you change your admin language? ● how about menu synchronization? ● how easy will you add another language? ● turn ordinary users into translators
  • 22. 9. Ignoring eCommerce trends source: http://trends.builtwith.com/shop/
  • 23. WooCommerce Multilingual plugin ● The number of WP eCommerce shops is rapidly growing ● check ahead if your multilingual plugin supports eCommerce ● don’t discourage your customers with an untranslated checkout process
  • 24. 10. Ignoring WordPress compatibility ● Don’t let new WordPress releases be a surprise for your multilingual site ● Make sure your multilingual plugin is kept up to date with WordPress releases
  • 25. What would you add? Discussion