- 状态
- 未解决
- 报告针对
- WPML Multilingual CMS 4.5.11
- 主题标签
- Bug
问题概述
您会注意到,您的其中一种语言的主 URL 也被用于已翻译语言的图像上。
图像在所有语言中仍会正确显示。
但是,在某些情况下您可能会遇到 CORS 问题,这会导致图像无法显示。
仅当您每种语言使用不同的域名时才会发生此问题。
临时解决方法
请在继续操作之前对您的网站进行完整备份:
- 找到并编辑以下文件:wp-content/plugins/wpml-media-translation/classes/media-translation/class-wpml-media-image-translate.php
- 找到以下代码:
public function get_translated_image( $attachment_id, $language, $size = null ) { $image_url = ''; $attachment = new WPML_Post_Element( $attachment_id, $this->sitepress ); $attachment_translation = $attachment->get_translation( $language ); if ( $attachment_translation ) { - 在 if ( $attachment_translation ) { 之后立即添加以下代码:
do_action( 'wpml_switch_language', $language );
- 保存更改。
- 请按照以下方法之一进行操作:
方法 1:
- 安装并激活 WPML 媒体翻译
- 前往 WPML > 媒体翻译
- 找到其中一个有问题的图像
- 编辑其中一个翻译
- 对翻译图像的说明进行少量编辑
- 保存更改
方法 2:
- 前往 WPML > 设置
- 向下滚动直到“Translate Link Target”部分
- 单击“应用”按钮
- 等待过程完成。