Перейти к основному содержанию

Перевод медиа WordPress Thing Polylang с медиа‑папками

Плагин WP Media Folder полностью интегрирован с плагином перевода Polylang. Если ваш сайт настроен на несколько языков с помощью Polylang, все функции WP Media Folder будут совместимы с переведёнными медиа, такими как ограничение доступа к медиа, создание галерей, водяные знаки... 
Для получения дополнительных функций, вернуться на главную страницу плагина >

Эта-Polylang-WordPress Thing-изображение-перевод-с-медиа-папками
Polylang дублирует медиа для перевода

Polylang дублирует медиа для перевода

WP Media Folder полностью совместим с Polylang. После включения опции плагина все ваши медиа автоматически дублируются для каждого языка. Затем на фронтенде, когда выбран язык, медиа будут отображаться в соответствии с этим языком.

Автоматически перемещать переведённые Polylang медиа в папку

WP Media Folder и Polylang plugin работают бок о бок, когда активирована многоязычная совместимость, все медиа сортируются по языку в отдельных папках.

Автоматически перемещать переведённые Polylang медиа в папку
WordPress Thing и перевод галереи изображений Polylang

WordPress Thing и перевод галереи изображений Polylang

WP Media Folder WordPress Thing улучшение галереи работает с Polylang переведённые медиа. Это значит, что вы можете создать отдельные WordPress Thing галерею по языкам, и она будет отображаться соответствующим образом на публичной части вашего сайта.

Фильтровать и сортировать ваш Polylang переведённый медиа

Сортировка и фильтрация медиа в WP Media Folder впечатляющая, вы можете использовать "Фильтровать и сортировать опцию для ваших переведённых медиа. Текущее состояние фильтрации или сортировки будет сохраняться при следующем доступе.

Фильтровать и сортировать ваш Polylang переведённый медиа
Ограничение доступа к переведённым медиа

Ограничение доступа к переведённым медиа

Вы можете ограничить отображение переведённых медиа только собственными медиа пользователя или только медиа роли пользователя (делиться доступом ко всем медиа, принадлежащим роли пользователя). Это довольно полезно, когда у вас есть редакторы контента на сайте, чтобы избежать беспорядка с вашими файлами. Это ограничение доступа работает с медиа, назначенными для Polylang язык.

Заменить переведённые медиа Polylang

Замена переведённого медиа — это чрезвычайно полезная функция, она устраняет необходимость искать старый переведённый Polylang медиа‑файл, удалять его, загружать новый. Просто нажмите «заменить», et voilà! Есть "переключатель безопасности", позволяющий заменять медиа только файлами того же формата (from jpg to jpg, png to png, gif to gif…) чтобы Polylang многоязычные ссылки на медиа не ломались.

Заменить переведённые медиа Polylang
Цены плагина WP Media Folder + дополнений

Присоединяйтесь к нам 60,000+ участников & получайте поддержку и обновления новых версий


ПЛАГИН WP MEDIA FOLDER
ПЛАГИН + 1 ГОД ПОДДЕРЖКИ И ОБНОВЛЕНИЙ
$49
1
год
  • МНОГОДОМЕННЫЙ / МНОГОСАЙТОВЫЙ
  • ОБНОВЛЕНИЕ НА 1 ГОД
  • ПОДДЕРЖКА НА 1 ГОД
  • БЕЗ ПОВТОРЯЮЩИХСЯ ПЛАТЕЖЕЙ
  • БЕЗ ОГРАНИЧЕНИЙ ПО СРОКАМ
  • ВСТРАИВАНИЕ PDF
  • ПЛАН ИИ ДОСТУПЕН (дополнительно)
  • ДОПОЛНЕНИЕ ГАЛЕРЕЯ
  • ОБЛАЧНОЕ ДОПОЛНЕНИЕ
  • СРАВНИТЬ ВСЕ ФУНКЦИИ
199$
ВМЕСТО 421$
ПОЛУЧИТЬ
WORDPRESS THING НАБОР

Пакет дает доступ к ВСЕМ WordPress Thing плагинам и может быть использован на неограниченном количестве сайтов. Кроме того, у вас будет полный доступ к технической поддержке и обновлениям для каждого плагина на весь год. 
Время пришло! Повышайте эффективность и получайте конкурентное преимущество. Попробуйте Пакет.

wordpress thing пакет

Последние отзывы и оценки

Пользователь плагина? Добавьте свой отзыв >>
Средний рейтинг для WP Media Folder, JoomUnited составляет 4,9 Звезда из 5 звезд - на основе 226 Отзывов

FAQ: Polylang WordPress Thing Перевод медиа с папками медиа

Как WP Media Folder интегрируется с Polylang для перевода медиа?

WP Media Folder полностью интегрируется с Polylang, дублируя медиа для каждого языка и отображая соответствующие медиа в зависимости от выбранного языка сайта во фронтенде.

Автоматически ли переведённые медиафайлы организуются в отдельные папки?

Да, когда включена многоязычная совместимость, переведённые медиа автоматически сортируются в языко-специфические папки внутри медиатеки.

Могу ли я создать языко-специфические галереи, используя переведённые медиа?

Абсолютно, WP Media Folder’с улучшение галереи работает с переводимыми медиа Polylang, позволяя создавать отдельные галереи для каждого языка, которые отображаются соответствующим образом для посетителей.

Можно ли фильтровать и сортировать переводимые медиа Polylang?

Да, пользователи могут применять фильтрацию и сортировку к переводимым медиа, а настройки сохраняются для будущих сеансов, чтобы упростить управление медиа на разных языках.

Как работает ограничение доступа к переводимым медиа?

Отображение медиа может быть ограничено конкретными пользователями или ролями пользователей, помогая редакторам контента избегать конфликтного доступа к файлам; это ограничение учитывает языковую привязку медиа.

Могу ли я заменить переведённые медиа, не нарушая ссылки Polylang?

Да, функция замены медиа поддерживает медиа Polylang, с “переключателем безопасности”, который позволяет заменять медиа‑файлы только в том же формате, предотвращая поломку многоязычных ссылок.

Duplicate entry '49263e4176ff53f5ff1efff72d6df4fb-ru' for key 'bk24_linguise_urls.hash_translation' (500 Whoops, looks like something went wrong.)

mysqli_sql_exception

HTTP 500 Whoops, looks like something went wrong.

Duplicate entry '49263e4176ff53f5ff1efff72d6df4fb-ru' for key 'bk24_linguise_urls.hash_translation'

Exception

mysqli_sql_exception

Show exception properties
mysqli_sql_exception {#896
  #sqlstate: "23000"
}
  1. foreach ($urls as $translation => $source) {
  2. $elements[] = '("'.mysqli_real_escape_string($this->_database, Request::getInstance()->getLanguage()).'", "'.mysqli_real_escape_string($this->_database, $source).'", "'.mysqli_real_escape_string($this->_database, $translation).'", "'.md5($source).'", "'.md5($translation).'")';
  3. }
  4. $query .= implode(',', $elements);
  5. $query .= ' ON DUPLICATE KEY UPDATE source=VALUES(source), translation=VALUES(translation), hash_source=VALUES(hash_source), hash_translation=VALUES(hash_translation)';
  6. $this->_database->query($query);
  7. }
  8. public function removeUrls($urls)
  9. {
  10. $query = 'DELETE FROM '.mysqli_real_escape_string($this->_database, $this->_database_table_urls).' WHERE (hash_source) IN ';
  1. foreach ($urls as $translation => $source) {
  2. $elements[] = '("'.mysqli_real_escape_string($this->_database, Request::getInstance()->getLanguage()).'", "'.mysqli_real_escape_string($this->_database, $source).'", "'.mysqli_real_escape_string($this->_database, $translation).'", "'.md5($source).'", "'.md5($translation).'")';
  3. }
  4. $query .= implode(',', $elements);
  5. $query .= ' ON DUPLICATE KEY UPDATE source=VALUES(source), translation=VALUES(translation), hash_source=VALUES(hash_source), hash_translation=VALUES(hash_translation)';
  6. $this->_database->query($query);
  7. }
  8. public function removeUrls($urls)
  9. {
  10. $query = 'DELETE FROM '.mysqli_real_escape_string($this->_database, $this->_database_table_urls).' WHERE (hash_source) IN ';
  1. public function saveUrls($urls) {
  2. if (empty($urls)) {
  3. return;
  4. }
  5. return $this->_database->saveUrls($urls);
  6. }
  7. public function removeUrls($urls) {
  8. if (empty($urls)) {
  9. return;
  1. if (isset($result->url_translations)) {
  2. Defer::getInstance()->defer(function() use ($result) {
  3. $new_urls = $result->url_translations;
  4. $new_urls = get_object_vars($new_urls);
  5. Database::getInstance()->saveUrls((array)$new_urls);
  6. });
  7. }
  8. if (isset($result->urls_untranslated)) {
  9. Defer::getInstance()->defer(function() use ($result) {
Translation->Linguise\Script\Core\{closure}()
  1. }
  2. public function finalize()
  3. {
  4. foreach ($this->_actions as $action) {
  5. call_user_func($action['function'], $action['args']);
  6. }
  7. }
  8. }
  1. Helper::prepareDataDir();
  2. // Finalize defer actions on shutdown
  3. // @codeCoverageIgnoreStart
  4. register_shutdown_function(function() {
  5. Defer::getInstance()->finalize();
  6. Database::getInstance()->close();
  7. });
  8. // @codeCoverageIgnoreEnd
  9. }
Processor->Linguise\Script\Core\{closure}()

Stack Trace

mysqli_sql_exception
mysqli_sql_exception:
Duplicate entry '49263e4176ff53f5ff1efff72d6df4fb-ru' for key 'bk24_linguise_urls.hash_translation'

  at /var/www/staging.joomunited.com/public_html/plugins/system/linguise/vendor/linguise/script-php/src/Databases/Mysql.php:170
  at mysqli->query()
     (/var/www/staging.joomunited.com/public_html/plugins/system/linguise/vendor/linguise/script-php/src/Databases/Mysql.php:170)
  at Linguise\Script\Core\Databases\Mysql->saveUrls()
     (/var/www/staging.joomunited.com/public_html/plugins/system/linguise/vendor/linguise/script-php/src/Database.php:232)
  at Linguise\Script\Core\Database->saveUrls()
     (/var/www/staging.joomunited.com/public_html/plugins/system/linguise/vendor/linguise/script-php/src/Translation.php:119)
  at Linguise\Script\Core\Translation->Linguise\Script\Core\{closure}()
  at call_user_func()
     (/var/www/staging.joomunited.com/public_html/plugins/system/linguise/vendor/linguise/script-php/src/Defer.php:42)
  at Linguise\Script\Core\Defer->finalize()
     (/var/www/staging.joomunited.com/public_html/plugins/system/linguise/vendor/linguise/script-php/src/Processor.php:31)
  at Linguise\Script\Core\Processor->Linguise\Script\Core\{closure}()