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

virfolk

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Нужно сделать так, чтобы можно было вставлять код php в любое место заголовка страницы в браузере (метатег title).
Пример: Шины оптом <?php echo $GLOBALS['in-city']; ?> недорого

Сейчас Joomla вырезает php код. Плагин Sourcerer здесь тоже не работает.

Если в файле administrator/components/com_menus/models/forms/item_component.xml добавить filter="raw"

         <field
            name="page_title"
            type="text"
            label="COM_MENUS_ITEM_FIELD_PAGE_TITLE_LABEL"
            description="COM_MENUS_ITEM_FIELD_PAGE_TITLE_DESC"
            useglobal="true"
            filter="raw"
         />

То код сохраняется, но не исполняется, просто отображается как текст.
*

NewUsers

  • Живу я здесь
  • 2019
  • 185 / 0
Пример: Шины оптом <?php echo $GLOBALS['in-city']; ?> недорого
Пример: Шины оптом {in-city} недорого

Код: php
str_replace('{page_title}', $GLOBALS['in-city'], $item->page_title);
Занимаюсь создание расширений только для Joomla 3.x.x | Доработка и настройка сайтов. Работаю по факту (без всяких предоплат). Оплата только на Яндекс.Деньги. Помогу с переездом на PHP 7.x и исправлю ошибки PHP
*

virfolk

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
str_replace('{page_title}', $GLOBALS['in-city'], $item->page_title);

Не очень понял, куда вставить этот код?
*

NewUsers

  • Живу я здесь
  • 2019
  • 185 / 0
Не очень понял, куда вставить этот код?
Там где указываете заголовок для страницы!
Занимаюсь создание расширений только для Joomla 3.x.x | Доработка и настройка сайтов. Работаю по факту (без всяких предоплат). Оплата только на Яндекс.Деньги. Помогу с переездом на PHP 7.x и исправлю ошибки PHP
*

virfolk

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
str_replace('{page_title}', $GLOBALS['in-city'], $item->page_title);


А, понял, всё работает, спасибо!
Просто вы немножко опечатались, надо str_replace('{in-city}', $GLOBALS['in-city'], $item->page_title);
*

virfolk

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
А можно такую же штуку провернуть с текстами в модулях?
*

NewUsers

  • Живу я здесь
  • 2019
  • 185 / 0
А можно такую же штуку провернуть с текстами в модулях?
Можно! Но смотря какой модуль использовать.

Для самописного модуля подойдет
Код: php
echo str_replace('{line}', __LINE__, $module->content);

Если модуль типа HTML-код, то для него есть событие onContentPrepare работающее в группе плагинов content (но что бы оно работало надо включить соответствующий параметр в настройках модуля)
Занимаюсь создание расширений только для Joomla 3.x.x | Доработка и настройка сайтов. Работаю по факту (без всяких предоплат). Оплата только на Яндекс.Деньги. Помогу с переездом на PHP 7.x и исправлю ошибки PHP
*

virfolk

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Нужно чтобы работало для всех модулей на сайте типа HTML-код. Т.е. во всех модулях, где встречается {in-city}, это выражение должно меняться на <?php echo $GLOBALS['in-city']; ?>
*

NewUsers

  • Живу я здесь
  • 2019
  • 185 / 0
Нужно чтобы работало для всех модулей на сайте типа HTML-код.
Тогда вам надо использовать событие onContentPrepare
Код: php
$item->text = str_replace('{in-city}', $GLOBALS['in-city'], $item->text);
Занимаюсь создание расширений только для Joomla 3.x.x | Доработка и настройка сайтов. Работаю по факту (без всяких предоплат). Оплата только на Яндекс.Деньги. Помогу с переездом на PHP 7.x и исправлю ошибки PHP
*

virfolk

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Что-то я ничего не понял)
*

virfolk

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Т.е. я должен создать свой плагин типа как ниже??

<?
class PlgContentMyShortCode extends JPlugin
{   
   public function onContentPrepare($context, &$article, &$params, $page = 0)
   {
      $item->text = str_replace('{in-city}', $GLOBALS['in-city'], $item->text);
   }
}
?>
*

NewUsers

  • Живу я здесь
  • 2019
  • 185 / 0
Прямо в точку!
Занимаюсь создание расширений только для Joomla 3.x.x | Доработка и настройка сайтов. Работаю по факту (без всяких предоплат). Оплата только на Яндекс.Деньги. Помогу с переездом на PHP 7.x и исправлю ошибки PHP
*

sivers

  • Завсегдатай
  • 1609
  • 223 / 0
public function onContentPrepare($context, &$article, &$params, $page = 0)
тут желательно заменить $article => $item (иначе может не заработать)
На связи в телеге @sivers
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Ошибка при отправке страницы в индексацию GSC

Автор OZlaim1

Ответов: 0
Просмотров: 64
Последний ответ 23.03.2021, 11:53:28
от OZlaim1
Как вывести заголовок страницы браузера в произвольном месте через php?

Автор kiev

Ответов: 4
Просмотров: 90
Последний ответ 12.02.2021, 16:50:57
от kiev
Как в хлебных крошках вывести заголовок страницы?

Автор zahar_92

Ответов: 4
Просмотров: 122
Последний ответ 10.02.2021, 09:20:25
от zahar_92
Стоит ли убирать слеш / в конце главной страницы?

Автор kiev

Ответов: 2
Просмотров: 96
Последний ответ 09.02.2021, 21:19:37
от kiev
Не работает стиль и шаблон страницы 404

Автор kiev

Ответов: 1
Просмотров: 78
Последний ответ 06.02.2021, 11:24:19
от arma