Jump to content


Photo
- - - - -

автоматическое формирование meta

meta-теги

Best Answer Dyonis , 25 July 2013 - 13:13

Поковырялся и нашел решение:

$document->setTitle('Компания' . $this->renderPosition('title') . 'в СПБ по адресу' . $this->renderPosition('adres'));

Если есть другой вариант, пожалуйста, напишите, ибо я не программист вовсе.

 

То же самое можно сделать и для keywords, и для description. Так как при использовании варианта по ссылке, значения позиции отображаются через перенос строки.

Go to the full post


  • This topic is locked This topic is locked
5 replies to this topic

#1 Dyonis

Dyonis
  • JBZoo User (rus)
  • User rate: 0.2
  • posts: 209
  • topics: 55

Posted 23 July 2013 - 18:18

Собственно вопрос, где и как можно прописать шаблон для формирования title, keywords и description для объектов определенного каталога?

Пример.

У организации есть Название, Адрес, Район и эти поля подставляются в шаблон. Получается шаблон:

Компания %Название% в СПБ по адресу %Адрес% в %Район%.


  • 0

#2 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 24 July 2013 - 11:05

Вы можете сделать формирование мета данных по аналогии из этого топика - http://forum.jbzoo.com/topic/3009-

 

т.е специальные позиции для мета, значение которых будет отправятся в JDocument как информация о странице.


  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#3 Dyonis

Dyonis
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 0.2
  • posts: 209
  • topics: 55

Posted 25 July 2013 - 12:43

Не совсем понятно, как вставить слова. К примеру, как в необходимом варианте: Компания %Название% в СПБ по адресу %Адрес% в %Район%.

Чтобы именно слова "компания", "в СПБ по адресу" и предлог "в" присутствовали в title.


  • 0

#4 Dyonis

Dyonis
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 0.2
  • posts: 209
  • topics: 55

Posted 25 July 2013 - 13:13   Best Answer

Поковырялся и нашел решение:

$document->setTitle('Компания' . $this->renderPosition('title') . 'в СПБ по адресу' . $this->renderPosition('adres'));

Если есть другой вариант, пожалуйста, напишите, ибо я не программист вовсе.

 

То же самое можно сделать и для keywords, и для description. Так как при использовании варианта по ссылке, значения позиции отображаются через перенос строки.


Edited by Dyonis, 25 July 2013 - 13:15.

  • 1

#5 Dyonis

Dyonis
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 0.2
  • posts: 209
  • topics: 55

Posted 25 July 2013 - 13:25

Только для keywords и description необходимо прописать $document->setMetadata('keywords', $this->renderPosition('title') . ', компания, отзывы,' . $this->renderPosition('adres') . ', спб');


  • 0

#6 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 29 July 2013 - 05:52

Да, все верно.

Единственное что порекомендую - предварительно делать вот так

 

$text = strip_tags(JString::trim($this->renderPosition('meta-description'));

Т.к позиция может вернуть много HTML кода.


  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.






Click to return to top of page in style!