[Ожидание подтверждения пользователя] Не отображается перевод в плагине календаря
Это форум технической поддержки WPML – плагина для многоязычной WordPress.
Доступно для чтения всем, но только клиенты, купившие WPML, могут оставлять сообщения. Сотрудники WPML отвечают на сообщения форума 6 дней в неделю, 22 часов в сутки.
В первую очередь, Вам обновить плагин WPML до последней версии 4.6.13 и его дополнения, чтобы воспользоваться последними исправлениями и улучшениями. Это может не обязательно решить проблему, однако, чтобы решить ее лучше всего, работать с последними доступными версиями плагинов.
Вы можете проверить последние выпущенные версии в разделе «Моя учетная запись -> Загрузки» на этом сайте. Инструкции по обновлению можно найти здесь: https://wpml.org/ru/faq/как-установить-wpml/
Если Вы не видите доступные обновления, перейдите в раздел Плагины → Добавить новый и нажмите на вкладку Реклама, затем на кнопку «Проверить наличие обновлений».
Также, Вам необходимо обновить и другие связанные плагины, такие как WooCommerce и Elementor, и другие которые отвечают за календарь.
Пожалуйста, не забудьте сделать резервную копию Вашей базы данных, прежде чем продолжить.
Если проблема не исчезнет после обновлений, мне нужно больше информации о том, как Вы создали события, какой плагин их выводит, какие делали переводы. Если знаете, то также информация, как отобразили события на сайте.
Я могу проверить проблему на Вашем сайте, но если не найду быстрого решения, в таком случае без дополнительного программирования ее не решить. Для этого, Вам лучше будет связаться с автором ткущей темы и и пригласить его участвовать в нашей программе Go Global для того, чтобы сделать его тему полностью совместимой с WPML: https://wpml.org/documentation/support/go-global-program/
Мне нужно запросить временный доступ (WP-администратора и FTP) на Ваш сайт - предпочтительно к тестовому сайту, где проблема была воспроизведена, если это возможно - для того, чтобы лучше помочь. Вы найдете необходимые поля ниже поля для комментариев, когда Вы войдете, чтобы оставить свой следующий ответ. Информацию, которую Вы ведете является частной, что означает только Вы и я могу видеть и иметь доступ к ней.
Правильно ли я понимаю, что Вы выводите календарь следующим образом?
[container extra="row"]
[event_calendar category_id=""]
[/container]
Если да, попробуйте указать, к примеру id категории, для разных языков. Может так сработает. К примеру, [event_calendar category_id="2"], для другого языка [event_calendar category_id="3"], в соответствии id категории конечно.
Также вижу, что доступно обновление темы и других плагинов, рекомендую все обновить.
Спасибо за информацию. Я еще раз просмотрел проблему с которой Вы столкнулись, а также темплейты Вашей текущей темы. Без дополнительного пользовательского программирования, переведенные события не будут отображаться в календаре.
В темплейтах текущей темы, которые используются для вывода календаря, необходимо использовать также WPML фильтр wpml_object_id для конвертации ID событий.
Нашел код shorcode event_calendar по адресу
wp-content/plugins/nativechurch-core/shortcodes/shortcodes.php
function nativehcurch_event_calendar($atts)
Можете помочь с кодом для перевода данного виджета?
Я просмотрел файл и функцию, чтобы точно сказать, функцию нужно отлаживать. Насколько я вижу, где получаете $term->term_id необходимо пропустить через фильтр wpml_object_id.
Базовые примеры из документации выше:
// will return the post ID in the current language for post ID 1
echo apply_filters( 'wpml_object_id', 1, 'post' );
// will return the category ID in the current language for categoy ID 4. If the translation is missing it will return the original (here: category ID 4)
echo apply_filters( 'wpml_object_id', 4, 'category', TRUE );
// will return the German attachment ID for attachment ID 25. If the translation is missing it will return NULL
echo apply_filters( 'wpml_object_id', 25, 'attachment', FALSE, 'de' );