Back to Community

Troubleshooting the 'Class PLL_Lingotek Not Found' and Other Common Polylang Fatal Errors

33 threads Sep 9, 2025 PluginPolylang

Content

If your WordPress site suddenly crashes with a fatal error after a Polylang update or migration, you're not alone. A recurring and particularly disruptive issue involves an error message stating Uncaught Error: Class 'PLL_Lingotek' not found. This guide will explain why this and similar errors happen and provide the most effective solutions to get your site back online.

Understanding the Common Polylang Fatal Errors

Based on widespread community reports, the most frequent critical errors are:

  1. Class 'PLL_Lingotek' not found: This error occurs in .../polylang/modules/lingotek/load.php on line 13. It often happens after an automatic plugin update to versions 3.3.1 or 3.4.3 and prevents access to both the frontend and backend of the site.
  2. TypeError: Argument must be of type string, null given: This error can appear in various files, often related to WordPress's translation functions (WP_Translation_Controller::set_locale()), especially after a core WordPress update (e.g., to version 6.6.1 or 6.7).
  3. Class 'WP_SyntexPolylangRESTAPI' not found: This error typically surfaces after a site migration or merge using a backup tool like BlogVault, indicating a problem with how the plugin's files were transferred.
  4. Class 'PLL_Model' not found / Invalid argument supplied for foreach(): These errors often point to incomplete plugin files or corrupted data within the Polylang configuration.

The root cause is usually incomplete or corrupted plugin files. An update might be interrupted, a migration might not copy all necessary files, or a server's file permissions could prevent proper installation. The 'Lingotek' module is a common failure point because if its main class file is missing, the entire plugin cannot load.

How to Fix These Fatal Errors

Immediate Action: Regain Access to Your Site
If you cannot access your WordPress admin dashboard, you must deactivate Polylang manually. You can do this by:

  • Using your hosting control panel's file manager.
  • Connecting via FTP/SFTP.
  • Renaming the Polylang plugin folder from polylang to something like polylang_off. This is located in /wp-content/plugins/.

This will disable the plugin and should restore access to your site's admin area.

Solution 1: Perform a Clean Reinstall (Most Effective Fix)
A simple reinstall often resolves the issue by replacing any missing or corrupted files.

  1. In your WordPress admin, go to Plugins.
  2. Delete the currently installed Polylang plugin.
  3. Go to Add New > Search Plugins, search for "Polylang", and install it fresh.
  4. Activate the plugin. Your language settings are stored in your database and should remain intact.

Solution 2: Manually Install a Previous Version (If a Clean Reinstall Doesn't Work)
If the latest version is causing a conflict, you can temporarily roll back to a known stable version.

  1. Visit the Polylang Advanced View on WordPress.org.
  2. Scroll down to "Previous Versions".
  3. Select and download an earlier version (e.g., 3.3).
  4. In your WordPress admin, go to Plugins > Add New > Upload Plugin and upload the downloaded .zip file to install it.

Solution 3: Check for Conflicts After a Migration
For errors like Class 'WP_SyntexPolylangRESTAPI' not found after using BlogVault or another migration tool:

  1. Ensure the migration process fully completed and all files were transferred correctly.
  2. Follow Solution 1 to delete and reinstall Polylang on the migrated site. This ensures all necessary files are present.
  3. Clear any caching on your site and server after the reinstall.

When to Look Deeper:
If the errors persist after a clean reinstall, the problem might be a conflict with your theme, another plugin, or a server configuration.

  1. Switch temporarily to a default WordPress theme (like Twenty Twenty-Four).
  2. Deactivate all other plugins except Polylang.
  3. Reactivate your theme and plugins one by one, checking your site after each, to identify the source of the conflict.

Conclusion

The "Class PLL_Lingotek not found" error is almost always resolved by a clean and complete reinstallation of the Polylang plugin. This process replaces any missing files that are causing the fatal error. If you continue to experience issues, systematically checking for conflicts with other parts of your site is the recommended next step.

Related Support Threads Support