Отображение различного содержания в зависимости от языка в WordPress

 
Отображение различного содержания в зависимости от языка в WordPress

Перевод блога в принципе кажется простым, но это не так просто. Я не говорю о содержаниедаже шаблон может устоять.

Хотя существуют такие плагины, как Переводчик Локо и подобные, которые облегчают эту задачу, и даже шаблоны, которые поставляются готовыми для добавления перевода практически любой строки, что также можно сделать с помощью Polylang (хотя обычно он слишком короткий, и вам приходится добавление строк вручную), есть вещи, которые становятся сложными. Здесь я все еще борюсь с последней строкой, которую мне осталось перевести

Все становится еще сложнее, если Вы хотите отображать различное содержание и/или макеты в определенных частях Вашего сайта в зависимости от языка.

Этими частями обычно являются верхний и нижний колонтитулы, боковые панели и, в меньшей степени, точные места между содержанием. Для всех этих случаев есть решение.

Как для верхнего, так и для нижнего колонтитула Вы можете использовать Элементыесли Вы используете GeneratePress в его Pro-версии, и показывать разную раскладку для каждого языка, поскольку наиболее популярные плагины перевода, такие как WPML и Polylang совместимы с GeneratePress.

Mostrar contenido distinto según el idioma en WordPress

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

Отображение различного содержания в зависимости от языка в WordPress 2
В примере используются элементы из GeneratePress Pro и Polylang Free для создания колонтитула на английском языке.

Таким образом, Вы можете создать практически любую часть Вашего блога с различным дизайном для каждого языка, но что если Вы также хотите показать различное и уникальное содержание или дизайн для каждого языка?

Различные боковые панели для разных языков

С Polylang создать боковую панель для каждого языка очень просто. Вам нужно только создать все переведенные виджеты для каждого языка с нужным Вам дизайном и присвоить им соответствующий язык.

Отображение различного содержания в зависимости от языка в WordPress 3
Отображение различного содержания в зависимости от языка в WordPress 4

Показывать различное содержимое в боковой панели с помощью условий сложно, потому что с помощью Elements мы можем добавить содержимое до и после боковой панели, но не внутри. Хотя с GeneratePress и/или GenerateBlocks вы даже можете создать новую боковую панель с нуля для каждого языка (гораздо более полное и рекомендуемое решение), но это более громоздко и требует больше работы

Быстрая, простая и не менее эффективная альтернатива - обратиться к Вставка объявлений (достаточно бесплатной версии) для создания условных виджетов боковой панели.

Вот пример того, как создать виджет, который будет отображаться только в боковой панели поста.

Виджеты с условиями

Хотя Ad Inserter предназначен для управления и размещения рекламы практически в любом месте, с чем он прекрасно справляется, его можно использовать для показа любого другого контента.

Отображение различного содержания в зависимости от языка в WordPress 5
  1. Вы создаете новый блок в Ad Inserter и даете ему название, которое четко описывает, что это такое и где он будет отображаться.
  2. Добавьте содержимое для отображения, которое может быть HTML для формы, текст, изображение со ссылкой, зарегистрированный Вами шорткод и т.д.
  3. Он помечен "Записи" (как Вы увидите, Вы можете назначить другие места).
  4. Во вставке Вам следует оставить значение "Деактивировано", потому что в этом примере мы будем использовать его в качестве виджета.
  5. Проверьте Виджет и, если Вы хотите использовать его в других местах, Вы также можете отметить " " и "PHP function", если Вам нужно поместить его в виджетШорткод и "PHP-функция", если Вам нужно вставить ее куда-то в Ваш шаблон.
  6. Сохраните блок.

Когда мы вернемся в область администрирования виджетов, мы увидим, что в виджете Ad Inserter появился блок, который мы только что создали. Когда Вы добавите его в боковую панель, это содержание будет отображаться только в постах. Теперь Вы можете выбрать, например, отображать его только в английской версии.

Отображение различного содержания в зависимости от языка в WordPress 6

Любое различное содержание в зависимости от языка на любом сайте

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

Отображение различного содержания в зависимости от языка в WordPress 7

Если мы выберем место, которое позволяет нам Ad Inserter, а затем нажмем"Списки", мы сможем разместить этот контент во множестве точек с возможностью добавления белых и черных списков, условий и исключений по желанию.

В примере я настроил, чтобы это содержание отображалось поверх всех постов, но только в английской версии

Отображение различного содержания в зависимости от языка в WordPress 8

Отсюда Вы можете точно настроить вставку, чтобы она появлялась до или после параграфа x, до, между или в конце контента и т.д., а также поиграть с такими опциями, как исключение ссылок, ID, категорий, тегов или вставка только в определенную таксономию, даже в соответствии с языком браузера посетителя с помощью простого шорткода. Комбинации и позиции практически не ограничены

Отображение различного содержания в зависимости от языка в WordPress 9

Чтобы узнать больше о размещении и использовании списков, см документация от Ad Inserter.


Suscríbete por email para recibir las viñetas y los artículos completos y sin publicidad