Skip to content
LearnDash Support
  • Products

      LearnDash LMS Plugin

      Powering intuitive online courses with advanced management and engagement features for WordPress.

      Learn More

      LearnDash LMS Plugin + Hosting

      StellarSites Learning is a fully managed hosting solution for WordPress.

      Learn More

      Premium LMS Add-ons
      Enhance your courses with extra features. Gather insights, reward learners, protect your course content, and more!

      Explore all Add-ons

      MemberDash
      The most flexible membership plugin for WordPress. Monetize your content and build a community.

      View MemberDash

  • Pricing
  • Add-ons & Integrations

      LEARNDASH ADD-ONS

      Instructor Role

      Empower Instructor to manage courses.

      Groups Management

      Organization management, delegation and more

      ProPanel

      Advanced analytics reporting.

      Gradebook

      Track progress and create report cards.

      Notes

      Enable notetaking and two-way communication.

      Rating, Reviews, & Feedback

      Build trust and gain valuable insights.

      FEATURED INTEGRATIONS

      The Events Calendar

      Connect with the most popular events solution.

      BuddyBoss

      Powerful tools for an enhance learning experience.

      WooCommerce

      The most popular shopping cart on WordPress.

      WeGlot

      Translate your LearnDash content.

      All Integrations

      BUNDLES

      Package and save
      Save when you buy multiple plugins in a bundle.

      See all bundles.

      MORE

      Release Notes

      Get Help

  • Resources
      LearnDash Academy Videos, webinars, and resources to help you launch a successful course.
      Blog Blog
articles with the latest news and tips to help you run high-quality courses.
      Knowledge Base A support network to help you make the most of your courses.
      Release Notes Stay up-to-date with the latest updates to LearnDash.
      Get Help

      Professional Services

      LMS Site Development Get hands-on assistance launching your course website.
      Website Maintenance WordPress management made easy.
      SEO Services SEO solutions that accelerate growth.

      Other Resources

      LearnDash Accessibility At LearnDash, we believe online learning should be accessible to everyone.
      Join the Dev Club
  • Demo
  • Sign In
Get LearnDash

Knowledge Bases: Support Home | LearnDash Core | LearnDash Add-ons | LearnDash Cloud | Resources | Mobile App

LearnDash Support
  • ← Return to LearnDash
  • Support
    • Support Home
    • All Knowledge Bases
    • LearnDash Core
    • Add-ons
    • Resources
    • Cloud
  • My Account
Popular searches: api duplicate couse email gp query loop [ld_course_resume]

Account & Billing

6
  • Edit Your Customer Account Email and Password
  • License
  • Updates
  • How To Get Help
  • Billing
  • LearnDash Licensing & Management

Troubleshooting

2
  • Troubleshooting Basics
  • Why is the registration form not showing?

User Guides

9
  • How do I remove the ‘Take This Course’ button?
  • How do I hide post meta data (date, author, comments, etc.)?
  • Translation
  • Transferring LearnDash Courses
  • How do I protect my course files & downloads?
  • User Guides
  • LearnDash Migration
  • How to Install and Activate LearnDash Add-ons
  • Trusted Login

FAQs

30
  • Can I hide the course content table on the course page?
  • Can I create a unique sidebar for courses, lessons & quizzes?
  • Can I rename “courses,” “lessons,” “topics,” and “quizzes”?
  • Can I reuse lessons & topics across multiple courses?
  • Is LearnDash compatible with other plugins?
  • How do I find the course ID?
  • 404 Errors on LearnDash Pages
  • What kind of media can be used in LearnDash courses?
  • Does LearnDash support Learning Tools Interoperability (LTI)?
  • How can I make email notifications send on time?
  • I’m getting the error “the link you followed has expired” when installing LearnDash.
  • Questions about MemberDash?
  • Known Issues & Conflicts
  • Why is the registration form not showing?
  • Page Builders + LearnDash
  • Why are the license updates and license checks disabled?
  • FAQs
  • Your Add-Ons and Plugins are Officially Migrating to LearnDash FAQs
  • WisdmLabs Acquisition FAQ
  • How to Manually Install and Update Plugins from WordPress.org
  • What is the best way for me to bundle courses using LearnDash?
  • What plugins can be used with LearnDash for math equation editing?
  • Do I need a plugin to do drip feeding?
  • Can I use the same Stripe Purchase Button on multiple courses?
  • Is there a shortcode for displaying a single lesson in LearnDash?
  • Is there a way to export an individual course?
  • What should I do if my course content is not displaying correctly?
  • Moving Away from LearnDash Cloud
  • What steps can I take if a lesson or topic is not marked as complete?
  • What are the different user roles in LearnDash and what permissions do they have?

Developers

3
  • Adding Fields to LearnDash Registration Forms with Advanced Custom Fields (ACF)
  • Developers
  • Protecting Files
View Categories
  • Home
  • All Knowledge Bases
  • Resources
  • User Guides
  • Translation

Translation

LearnDash is in English and has user-donated translations. Strings in the LearnDash codebase are translatable.

You can use free software like PoEdit to create and modify LearnDash translation files for your language. Or a free WordPress plugin like Loco Translate.

Current Translations #

NOTE: As the translations are user-donated, they may not be 100% complete for your desired language.

  • Arabic (ar)
  • Chinese (zh_CN)
  • Danish (da_DK)
  • Dutch / Nederland (nl_NL)
  • French (Canada) (fr_CA)
  • French (France) (fr_FR)
  • German (de_DE)
  • Hebrew (he_IL)
  • Italian (it_IT)
  • Polish (pl_PL)
  • Portuguese (Brazil) (pt_BR)
  • Russian (ru_RU)
  • Spanish (Spain) (es_ES)
  • Swedish (sv_SE)

Right-to-left (RTL) languages are supported.

Adding (or Modifying) a Translation #

If you are creating a new translation, you can reference this helpful list of WP Locale Codes for file naming conventions.

If you need to update a translation, you can do so by following these steps:

  1. Navigate to LEARNDASH LMS > SETTINGS > TRANSLATIONS
  2. Download the latest POT file by clicking the POT download button (it will automatically download)
  3. Download the .po file by clicking the PO download button (it will open in a new tab)
  4. Right-click & save the file
  5. Open the .po file with PoEdit
  6. Navigate to CATALOG > UPDATE FROM POT and select the downloaded POT file in step 2
  7. Make your additions and/or modifications to the translation file
  8. Save the .po file
  9. Regenerate the new .mo file via FILE > COMPILE TO MO
  10. Using an FTP program or File Manager, add your new .mo and .po files to the /wp-content/languages/plugins/ folder

NOTE: Verify that the file is named correctly and in the proper directory. If either of these is incorrect, you will encounter issues with the translation and upload.

LearnDash admin translation settings

Common Issues #

Not Updating from Latest POT File #

If you are translating strings such as “Next Lesson” and notice that the translation is not reflected on your site, it is because you are translating from an out-of-date .pot file.

The string in the LearnDash codebase is actually “Next %s”, because the %s acts as a placeholder for your Custom Label (even if you do not use Custom Labels).

This may also be why you notice that all of a sudden, you have “lost” translations of strings like “Next Lesson” and “Previous Course”, as well as other strings that contain a custom label. However, the translation is not necessarily lost. It is no longer used because the codebase is now using placeholders in those strings, not the literal words such as Lesson or Course.

To resolve, download the latest POT (step #2), then follow steps 6-10 to update from the latest POT, add translations for the new strings as needed, and upload your new .mo/.po files to the right place.

Translations Set to “Needs Work” #

Be mindful of “Needs Work” settings on individual translations. This is typically indicated by an orange color and an orange toggle after selecting the individual translation in poEdit.

When “Needs Work” is set on a translation, you are indicating to WordPress that you are unsure whether this is the correct translation. Therefore, WordPress does not display this translation on your site because it thinks the translation “Needs Work” as per your instructions.

To resolve, toggle the “Needs Work” setting off. It should resemble the screenshot below.

Then, save your new .mo/.po files and upload as per step 10 in the above documentation.

Unexpected Locale #

WordPress translations may be localized to a particular region. For example, es_ES would be Spanish in Spain, and es_MX would be Spanish in Mexico.

As far as WordPress is concerned, these are totally different languages (technically, referred to as “localizations”).

If your WordPress site localization is set to es_MX, then that setting will not pull any information from your es_ES translation files (even though to you, the differences in language may be minor).

Incorrect Folder #

Please ensure that the LearnDash translation files are located in the folder path below, with file names that include the locale code. This should prevent your translation file from being overwritten after a LearnDash software update. For example:

  • /wp-content/languages/plugins/learndash-es_ES.po
  • /wp-content/languages/plugins/learndash-es_ES.mo

It is not a good idea to store your customized translation files in the /wp-content/plugins/sfwd-lms/languages/ directory, as they may be overwritten in the event of a plugin update.

Incorrect File Name #

This section highlights the correct file name format, as seen in the above “Incorrect Folder” issue.

learndash[hyphen][locale code, underscores used as separators].po

Please ensure your hyphens and underscores are in the right places. This is correct:

  • learndash-es_ES.po

These are not:

  • learndash_es_ES.po (underscore instead of hyphen is incorrectly placed between learndash and es_ES).
  • learndash-es-ES.po (hyphen instead of underscore is incorrectly placed between es and ES).

The .po and .mo files should be identically named, except for the file extension.

Not Accounting for All Contexts #

Translating a word once does not necessarily change the word in all strings in which that word occurs.

Words used in different contexts may be the same in your language. For example, the word “quiz” can serve as both a verb and a noun in English.

Understand that other languages may use different words depending on the context, and your translation files will need to account for that on a string-by-string basis.

PoEdit and Loco Translate both have search features to ensure that you account for every instance of a word in the translation files.

Not Considering Strings from Third-Party Code #

Not every translatable string displayed on a LearnDash-related page, such as a page containing a Course Grid or Login Form, originates from the LearnDash codebase. Therefore, you may not be able to find the word you need to translate in the LearnDash file source text.

Or maybe you do, however, the string output is coincidentally duplicated in third-party code where it is actually being output.

This is especially common with WordPress themes built with LearnDash in mind, such as BuddyBoss, that override template files (or other third-party addons for LearnDash).

For example, the LearnDash source text includes the string “Incorrect username or password. Please try again.”

You change that string in your LearnDash .po file, but notice it is not reflected on your site. Other parts of your LearnDash translation are working as intended.

This may be because the string is actually output by third-party code, and is coincidentally using the same string. You would need to translate it separately from the LearnDash translations.

Updated on October 15, 2025
Transferring LearnDash Courses
Table of Contents
  • Current Translations
  • Adding (or Modifying) a Translation
  • Common Issues
    • Not Updating from Latest POT File
    • Translations Set to "Needs Work"
    • Unexpected Locale
    • Incorrect Folder
    • Incorrect File Name
    • Not Accounting for All Contexts
    • Not Considering Strings from Third-Party Code

Was this Doc Useful?

Thanks for your feedback!

Products

  • LearnDash LMS Plugin
  • MemberDash Plugin
  • LearnDash Cloud
  • ProPanel
  • Groups Management
  • Gradebook
  • Notes
  • Integrations

Support

  • Contact Us
  • Experts
  • Documentation
  • Facebook Community

Company

  • About LearnDash
  • Brand Assets
  • Careers
  • Affiliates
  • Privacy Policy
  • Terms and Conditions
  • Refund Policy

Our Partners

  • The Events Calendar
  • MemberDash
  • Kadence
  • GiveWP
  • Iconic
  • SolidWP

Stay Connected Subscribe to our newsletter
  • YouTube
  • X
  • Facebook
  • Instagram

Copyright 2026. All Rights Reserved.

A Liquid Web Brand
WordPress Hosting Services
© 2026 All Rights Reserved

StellarWP
liquidweb