Back to Community

Resolving Common TranslatePress Issues: From #TRPLINKPROCESSED to 403 Errors

Content

Many WordPress users rely on the 'Translate Multilingual sites – TranslatePress' plugin to make their sites accessible in multiple languages. However, like any complex software, it can sometimes run into conflicts or configuration issues that cause unexpected behavior. Based on community reports and solutions, this guide covers some of the most frequent problems and how to resolve them.

1. Untranslated Strings and Error Codes (e.g., #trpst#, #TRPLINKPROCESSED)

You might see strange codes like #!trpst#trp-gettext data-trpgettextoriginal=5993#!trpen#0 Items#!trpst#/trp-gettext#!trpen or #TRPLINKPROCESSED appearing on your live site. These are typically placeholders that failed to be replaced with the actual translation.

Why it happens: This is almost always caused by a conflict with another plugin or your theme. The conflict can prevent TranslatePress from processing the page correctly and replacing these codes with the proper translated text.

Common Solutions:

  • Run a Conflict Test: The most reliable way to identify the culprit is to temporarily deactivate all other plugins and switch to a default WordPress theme (like Twenty Twenty-One). If the issue resolves, reactivate your plugins and theme one by one to find which one is causing the conflict.
  • Exclude Problematic Strings: If you can identify the original text that is breaking (e.g., "0 Items"), you can exclude it from translation. Navigate to TranslatePress Settings → Advanced → Exclude Gettext Strings, add the string, and save.
  • Enable Debug Options: In some cases, enabling "Disable post container tags for post title" and "Disable post container tags for post content" under TranslatePress Settings → Advanced → Debug can resolve rendering issues.

2. AJAX and 403 Forbidden Errors

Users report 403 errors, notices about falling back to admin ajax, or parts of the site (like buttons) taking a long time to load only in translated languages.

Why it happens: Security plugins or server-level firewalls (like those on GoDaddy Managed WordPress) often block TranslatePress's custom AJAX requests (trp-ajax.php), which are used for translating dynamic content loaded by JavaScript.

Common Solutions:

  • Whitelist trp-ajax.php: Check your security plugin settings (e.g., Wordfence, iThemes Security) or server firewall to ensure the file /wp-content/plugins/translatepress-multilingual/assets/js/trp-ajax.php is not being blocked. It is a safe file necessary for functionality.
  • Revert to Admin AJAX: If whitelisting isn't possible, you can force TranslatePress to use the standard WordPress admin AJAX handler. This can be done by adding a custom code snippet to your theme's functions.php file or a custom plugin:
    add_filter( 'trp_custom_ajax_url', 'trpc_use_wp_admin_ajax');
    function trpc_use_wp_admin_ajax(){
        return admin_url('admin-ajax.php');
    }
  • Disable Dynamic Translation: As a troubleshooting step, try disabling "Dynamic Translation" under TranslatePress Settings → Advanced. Remember that this will stop the translation of content loaded dynamically by JavaScript.

3. Language-Specific Redirect Loops and 404s

Clicking between languages might result in a redirect loop or send users to a 404 error page, especially on pages with custom post types or translated slugs.

Why it happens: This can occur due to conflicts with other plugins that manage URLs or permissions, incorrect server configuration, or known bugs in specific versions of TranslatePress related to slug translation.

Common Solutions:

  • Check for Conflicting Plugins: Plugins that manage URLs, security, or caching can interfere. Perform a conflict test by disabling other plugins to see if the issue resolves.
  • Review Permalink Structure: Sometimes, simply visiting Settings → Permalinks and clicking "Save Changes" (without making any changes) can flush rewrite rules and fix odd redirect issues.
  • Subdirectory vs. Subdomain: If you are using a subdomain for translations, ensure that TranslatePress is installed and configured correctly on that subdomain, as it will not control redirects on a separate subdomain where it is not active.

4. HTTPS Redirect Issues

After installing TranslatePress, your site might stop properly redirecting HTTP requests to HTTPS, making it accessible over an insecure connection.

Why it happens: This is rare, but the plugin can sometimes interact unexpectedly with server or WordPress redirect rules.

Common Solutions:

  • Force SSL/HTTPS in WordPress: Ensure your wp-config.php file contains the line define('FORCE_SSL_ADMIN', true);. You can also try adding define('FORCE_SSL', true);.
  • Server-Level Redirect: The most reliable method is to implement an HTTPS redirect at the server level (e.g., via an .htaccess file on Apache servers) rather than relying on WordPress or a plugin to handle it.

General Troubleshooting Tips

  • Clear All Caches: Always clear any server, plugin, and browser caches after making changes.
  • Staging Site: Test major changes and conflict tests on a staging site first to avoid disrupting your live environment.
  • Check Known Issues: The TranslatePress team occasionally identifies bugs. If you suspect a widespread issue, it may be helpful to check their official documentation or community forums to see if a fix or rollback is recommended.

Most issues with TranslatePress stem from conflicts with other code on a site. A systematic approach to disabling other plugins and testing is often the fastest path to a solution.

Related Support Threads Support