WPML
Статус
Решено автором
Связанный плагин/тема
Houzez
Теги темы
Compatibility

Обзор проблемы

При использовании темы оформления Houzez Вы можете столкнуться со следующей проблемой: переведенные объекты недвижимости не сохраняют привязку к агенту, в результате чего в переведенных профилях агентов отображается ноль объектов. Это происходит потому, что поле агента (fave_agents) некорректно связывается с переведенной записью агента.

Обходное решение

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

1. Настройте параметры перевода


  • Перейдите в раздел «WPML > Настройки > Перевод пользовательских полей»

  • Установите для произвольного поля fave_agents параметр перевода Копировать

2. Скорректируйте обработку ID агента в функциях темы оформления


  • Откройте файл …/wp-content/themes/houzez/framework/functions/property_functions.php.

  • Найдите строку 3663 (функция houzez_get_property_agent).

  • Замените:
    $agent_id = intval( $agent );
            


  • На:
    $agent_id = intval( $agent );
    // WPML Workaround for compsupp-7949 
    $agent_id = apply_filters( 'wpml_object_id', $agent_id, 'houzez_agent', TRUE ); 
            

  • Найдите строку 3738 (функция houzez20_get_property_agent).
  • Замените:
    $agent_id = intval( $agent_id );
            
  • На:
    $agent_id = intval( $agent_id );
    // WPML Workaround for compsupp-7949 
    $agent_id = apply_filters( 'wpml_object_id', $agent_id, 'houzez_agent', TRUE ); 
            

3. Убедитесь, что в профиле агента отображаются правильные объекты недвижимости

  • Откройте файл …/wp-content/themes/houzez/framework/classes/Houzez_Query.php.
  • Найдите строку 718 (функция loop_agent_properties).
  • Замените:
    $agent_id = get_the_ID();
            
  • На:
    $agent_id = get_the_ID();
    // WPML Workaround for compsupp-7949 
    $default_lang = apply_filters('wpml_default_language', NULL );  
    $agent_id = apply_filters( 'wpml_object_id', $agent_id, 'houzez_agent', TRUE,  $default_lang ); 
            

Все известные проблемы →