Problem: You are experiencing unexpected behavior with languages and URL structure after installing WPML. Your existing German content is appearing under /en/ instead of the root URL, and there is no content under the root URL. You expected the German content to remain under / and only the translated English content to appear under /en/. Solution: The default language in WPML and WordPress is treated independently of the content's original language. If content was initially created in German, it will always be translated from German into other languages. Changing the default language on websites with existing content is technically possible but not recommended due to potential unexpected issues. Before changing the default language, we recommend creating a complete backup of your website, including the database. After changing the default language, you must resave the permalink settings in WordPress. Possible issues include problems with menus and navigation, where language menus may need to be recreated or adjusted, and menu entries might appear duplicated or disappear if the language logic becomes confused. Some themes store content specific to a language, which might cause widgets or theme settings to display incorrectly after a change. SEO and indexing might also be affected, as search engines have already indexed the old structure. Ranking losses might occur if proper redirection (301 redirects) is not set up. Additionally, certain plugin contents, such as ACF field groups and fields and taxonomies like global attributes in WooCommerce, should always be created in the default language. It might be better to switch the default language before starting translations. Set English as the default language at domain.com and German at domain.com/de/, but translations will still be done from German to English. Languages can also be set to be invisible to website visitors: Hide languages on the frontend.
If this solution does not apply to your case, or if it seems outdated, we highly recommend checking related known issues at https://wpml.org/known-issues/, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. If further assistance is needed, please open a new support ticket at WPML support forum.
Problem: The client is planning to translate a large website with multiple Custom Post Types and a very large number of Custom Fields and needs to know the best practices for such a project and how to estimate the costs for translation using Pay-Per-Translation Credits (PTC). Solution: To estimate the required translation credits, we recommend marking all relevant content under WPML > Translation Dashboard and sending it for automatic translation. Before confirming, an estimate of the cost in credits will be displayed. However, this is still an estimate and might differ from the actual required credits, especially if not all Custom Fields are included in the calculation. To better control costs, initially send the content for automatic translation via WPML > Translation Dashboard without activating the 'Translate Everything' option. You can calculate expected costs on this page once an estimate is available: https://wpml.org/documentation/automatic-translation/automatic-translation-pricing/. Please note that this solution might be outdated or not applicable to your specific case. We highly recommend checking related known issues at https://wpml.org/known-issues/, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. If this does not resolve your issue, please open a new support ticket.