Не срабатывает if else в php-файле плагина.

Прошу помощи в первую очередь разработчиков. Кратко пред история такова:

В процессе перевода плагинов на другой язык, столкнулся с тем, что вставлен русский текст в HTML код, который находится в PHP-файле. И естественно никакие переменные предусмотренные у WebAsyst не срабатывают. Решил тогда обойти этот момент с помощью оператора IF-ELSE в PHP, но что-то видно не так делаю - выводятся все три языка... Ниже часть кода PHP-файла, буду благодарен за подсказку:

    public function backendReportsHandler()

    {
        return array(
            "menu_li" =>  <<<HTML
<?php if ($wa()->getLocale() == "ru_RU"): ?>
<li><a href="#/kmsearchhistory/">Поисковые запросы</a></li>
<?php elseif ($lwa()->getLocale() == "pl_PL"): ?>
<li><a href="#/kmsearchhistory/">Wyszukiwania</a></li>
<?php else: ?>
<li><a href="#/kmsearchhistory/">Search queries</a></li>
<?php endif; ?>
<script>
    $(function(){
        $.reports.kmsearchhistoryAction = function () {
            this.setActiveTop("kmsearchhistory");
            $("#reportscontent").load("?plugin=kmsearchhistory&action=report"+this.getTimeframeParams());
        };
    });
</script>
HTML
        );
    }
    public static function getTimeframeParams()
    {
        $request_options = array();

5 ответов

  • 1
    Алексей Webasyst 1 марта 2021 21:10 #

    Простой вариант 

    Search queries

    сделать _wp('Search queries') и далее переводить через редактор локализации.

  • 1
    WebSystems 1 марта 2021 21:53 #

    я ж написал - не подхватывает этот вариант. Наверное из-за того, что в php-файле встроенный html код.

  • 1
    WebSystems 1 марта 2021 22:06 #

    вот скрин если не верите:

    • +3
      Алексей Алексей Webasyst 2 марта 2021 10:12 #

      Замените на переменную

      $search_queries = _wp('Search queries');
      return array('menu_li'=> <<<HTML
      <li><a href="#/kmsearchhistory/">$search_queries</a></li>
      ...

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите