Помощь Вывод языковой константы в плагине Extra Vote

Gudym

Постоялец
Регистрация
18 Мар 2013
Сообщения
55
Реакции
24
В плагине Extra Vote (перед звездами) нужно вывести текстовый призыв к действию, т.е. голосованию. Что-то типа "Пожалуйста, оцените статью!"

Кое-как удалось определить, что рейтинг выводится этим куском кода из extravote.php:

Код:
$html = "
<".$container." class=\"".$class."\">
  <span class=\"extravote-stars\"".($add_snippets?" itemprop=\"aggregateRating\" itemscope itemtype=\"http://schema.org/AggregateRating\"":"").">".($add_snippets?"
     <meta itemprop=\"ratingCount\" content=\"".$rating_count."\" />
   ":"
   ")."<span id=\"rating_".$id."_".$xid."\" class=\"current-rating\"".((!$initial_hide||$currip==$ip)?" style=\"width:".round($rating*20)."%;\"":"")."".($add_snippets?" itemprop=\"ratingValue\"":"").">".($add_snippets?$rating:"")."</span>"
   .$spans."
  </span>
  <span class=\"extravote-info".(($initial_hide&&$currip!=$ip)?" ihide\"":"")."\" id=\"extravote_".$id."_".$xid."\">";
 
       if ( $show_rating > 0 ) {
       if ( $rating_mode == 0 ) {
         $rating = round($rating*20) . '%';   
       } else {
         $rating = number_format($rating,2);   
       }
       $html .= JTEXT::sprintf('PLG_CONTENT_EXTRAVOTE_LABEL_RATING', $rating);
     }
     
       if ( $show_counter > 0 ) {
       if($rating_count!=1) {
         $html .= JTEXT::sprintf('PLG_CONTENT_EXTRAVOTE_LABEL_VOTES', $rating_count);
       } else {
         $html .= JTEXT::sprintf('PLG_CONTENT_EXTRAVOTE_LABEL_VOTE', $rating_count);
       }
     }
     
       $html .="</span>";
       $html .="
</".$container.">";

Если просто вписать текст сразу после <".$container." class=\"".$class."\">, все выводится и отображается в одной строке как надо. Но вот загвоздочка в том, что этот текст мне нужно выводить языковой константой, т.к. сайт будет мультиязычный.

В языковом файле ru-RU.plg_content_extravote.ini создал новую константу PLG_CONTENT_EXTRAVOTE_OTSENI_PJL="Пожалуйста, оцените статью!", но вот как ее грамотно внедрить в этот PHP код непонятной конструкции ума не приложу.

Пробовал делать по примеру, т.е. так как в самом плагине константы выводятся, что-то типа $html .= JTEXT::sprintf('PLG_CONTENT_EXTRAVOTE_OTSENI_PJL'); и через echo...как только не пробовал, но не получилось. То ошибки синтаксические, то просто ничего не выводится. Целый день вчера тыкался.

Уважаемые форумчане, знающие PHP, искренне прошу Вашей помощи! Заранее благодарю!
 
Код:
JText::_('Welcome')
 
Код:
JText::_('Welcome')
Благодарю, Genk0!

А куда собственно вставить этот код? Если где-то после $html = ", то код просто текстом выводится, если до, то лезут ошибки типа Parse error: syntax error, unexpected '$stars'. И как я понимаю вместо 'Welcome' я вывожу свою языковую константу PLG_CONTENT_EXTRAVOTE_OTSENI_PJL?

Для меня такая подача PHP совершенно непонятна...
 
Код:
первая строка  $html = "
заменить на 
$html .= "

перед ней поставить 
$html = JText::_('Welcome');

Welcome заменить на константу
По идее это выведет текст перед звездочками. а там уже крутите сами. Суть запредельно ясна
 
Назад
Сверху