- Статус
- Решено
- Заявлено для
- WPML Multilingual CMS 4.6.4
- Решено в
- WPML 4.6.5
Обзор проблемы
Если Вы используете Классический редактор переводов WPML и редактируете ранее переведенную страницу, Вы можете столкнуться с тем, что предыдущий перевод заменяется исходным контентом.
Обходное решение
Найдите и откройте: \wp-content\plugins\sitepress-multilingual-cms\addons\wpml-page-builders\classes\Shared\st\class-wpml-pb-string-translation.php
Найдите:
public function get_package_strings( array $package_data ) {
$strings = array();
$package_id = $this->get_package_id( $package_data );
if ( $package_id ) {
$getPackageStrings = Cache::memorize(
self::CACHE_GROUP_KEY,
HOUR_IN_SECONDS,
function( $packageId ) {
return $this->getPackageStringsFromDb( $packageId );
}
);
$strings = $getPackageStrings( $package_id );
}
return $strings;
}
И замените на
public function get_package_strings( array $package_data ) {
$strings = array();
$package_id = $this->get_package_id( $package_data );
if ( $package_id ) {
$getPackageStrings =
function( $packageId ) {
return $this->getPackageStringsFromDb( $packageId );
};
$strings = $getPackageStrings( $package_id );
}
return $strings;
}