0 Пользователей и 1 Гость просматривают эту тему.
  • 7 Ответов
  • 187 Просмотров
*

Little Muk

  • Новичок
  • 8
  • 0 / 0
Приветствую всех.
Очередной ламерский вопрос. Поиск молчит, как партизан.
Подскажите, есть собственный шаблон, в настройках которого есть поля для быстрого редактирования информации (типа телефона, слогана и пр), все это прописано в templatedetails.xml .
Через файл шаблона index.php эти поля я вывожу нормально, а как вывести значения этих полей на странице материала? Т.е. я хочу написать текст статьи, а потом "позвоните сюда" и вставить переменную шаблона.
Я так понимаю, что видимость этих переменных ограничена самим индекс.пхп. Пытаюсь выводить через {source}{/source}
*

NewUsers

  • Давно я тут
  • 807
  • 57 / 0
Я так понимаю, что видимость этих переменных ограничена самим индекс.пхп. Пытаюсь выводить через {source}{/source}

Вывести настройки шаблона можно где угодно используя
Код: php
<?php
$app = JFactory::getApplication();
$params = $app->getTemplate(true)->params;
?>

Но лучше использовать для этого контент плагин, с функцией onContentBeforeDisplay
« Последнее редактирование: 07.10.2017, 19:17:03 от NewUsers »
*

effrit

  • Легенда
  • 8115
  • 912 / 7
  • effrit.com
зра.
можно телефоны из шаблона выводить в скрытый блок или как значение data-tel="911" цеплять хоть к body и вытаскивать через js в материале, чтобы сорсер не использовать.
хотя обычно для таких целей модули или плагины используют.
*

Little Muk

  • Новичок
  • 8
  • 0 / 0
Вывести настройки шаблона можно где угодно используя

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

Посоветуйте, пожалуйста, плагин для такой вставки.

PS Через js получается дико неудобно
*

NewUsers

  • Давно я тут
  • 807
  • 57 / 0
Да, можно, но только в самом теле шаблона. В материал этот код переменную не вставляет.
Посоветуйте, пожалуйста, плагин для такой вставки.

Для примера можно вывести название сайта...
В материале напиши {sitename}, и после плагина это будет заменено на название сайта....
*

Little Muk

  • Новичок
  • 8
  • 0 / 0
 не получается, {sitename} выводит, а вот добиться вывода параметров шаблона не могу. поменял код в beforedisplay.php на :


function onContentBeforeDisplay($context, &$article, &$params, $limitstart)
   {

      $app = JFactory::getApplication();
      $params = $app->getTemplate(true)->params;
      
      $search = array('{newphone}');
      $replace = $this->params->get('newphone');
      
      $article->text = str_replace($search, $replace, $article->text);
      
   }

Нифига не меняет в материале {newphone}
*

NewUsers

  • Давно я тут
  • 807
  • 57 / 0
$replace = $this->params->get('newphone');

Код
$replace = array($this->params->get('newphone'));

$params = Настройки шаблона....
$this->params = Настройки плагина...

Где хранится newphone ?
*

Little Muk

  • Новичок
  • 8
  • 0 / 0
Где хранится newphone ?
Да, вы правы надо так
$replace = array($params->get('newphone'));

только вот str_replace почему то не заменяет {newphone} :o

А нет, все ок

Мерси, все получилось!  *DRINK*
« Последнее редактирование: 08.10.2017, 14:22:56 от Little Muk »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Редактирование Layout в стилях шаблона

Автор Strelok760

Ответов: 0
Просмотров: 56
Последний ответ 19.02.2018, 21:41:43
от Strelok760
Как присвоить переменную к значению радио кнопки.

Автор Victor333

Ответов: 5
Просмотров: 130
Последний ответ 19.02.2018, 10:02:51
от Victor333
Загадка в стилях базового шаблона Protostar

Автор bb777

Ответов: 3
Просмотров: 106
Последний ответ 12.02.2018, 14:00:05
от bb777
Как сделать в интерфейсе админки глобальную переменную?

Автор Vivaldy

Ответов: 11
Просмотров: 187
Последний ответ 08.02.2018, 11:20:58
от kern.USR
Как вывести дополнительные поля пользователя в материал?

Автор Igor1

Ответов: 12
Просмотров: 195
Последний ответ 05.02.2018, 20:46:04
от zikkuratvk