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

poiuy

  • Захожу иногда
  • 203
  • 30 / 6
  • o_O
Товарищи, прошу помощи, ибо совсем ничего не могу поделать.

Итак:

Имеем сайт (кулинария) с массой категорий и подкатегорий. Все это работает на Zoo.
Один и тот же рецепт размещается сразу в нескольких подкатегориях. Одна из которых является главной.
Естественно, один и тот же материал доступен по нескольким url (по числу подкатегорий +1 url если с титульной страницы категории).
Везде стоит rel="canonical". С этим проблем нет.

Так же на сайте установлена система комментариев - cackle.
Это сторонний скрипт который грузит форму и комментарии с их серверов (от тарифа зависит).

Так вот проблема: Так как url у одного и того же рецепта разные, то к одному и тому же материалу могут быть разные комментарии. Если десять категорий, то 10 разных диалогов.

cackle дает возможность устанавливать одинаковые комментарии на разные страницы таким кодом (JS):

Код: javescript
var mcChannel = 'url';

Теперь на всех страницах, где в коде cackle есть одинаковый mcChannel, будут одинаковые комментарии.
Если я в mcChannel установлю rel="canonical", то бинго!, у всех одинаковых рецептов будет одна единая ветвь комментариев. Вне зависимости от категорий и прочего.

Так вот, я блин, не могу найти, код отвечающий за генерацию rel="canonical". В хедере каждого из рецепта - он есть. Везде одинаковый.

В public_html/super-site.com/components/com_zoo/controllers/default.php нашел вот такой код:
Код: php
// add canonical
if ($this->app->system->document instanceof JDocumentHTML) {
$this->app->system->document->addHeadLink(JRoute::_($this->app->route->item($this->item, false), true, -1), 'canonical');
}

Но как его заставит работать в стороннем app к zoo (я использую JBZoo) - я ума не приложу. Все испробовал - не работает.

Ребят, подскажите, пжлста.

Простите за неприличное количество букв, просто хотел, что бы меня правильно поняли =)
« Последнее редактирование: 05.07.2013, 11:38:06 от poiuy »
*

Efanych

  • Глобальный модератор
  • 4684
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Zoo, комментарии и rel="canonical"
« Ответ #1 : 04.07.2013, 19:25:40 »
Вам нужен линк, который в каноникал прописывается?
JRoute::_($this->app->route->item($this->item, false)
Вот это он поидее должен быть.
Или так
$this->app->route->item($this->_item)
Создание сайтов, шаблонов, помощь в решении проблем.
*

poiuy

  • Захожу иногда
  • 203
  • 30 / 6
  • o_O
Re: Zoo, комментарии и rel="canonical"
« Ответ #2 : 04.07.2013, 19:43:57 »
Вам нужен линк, который в каноникал прописывается?
JRoute::_($this->app->route->item($this->item, false)
Вот это он поидее должен быть.
Или так
$this->app->route->item($this->_item)


Пробовал. Если бы все так просто было, не стал беспокоить вас.
Если пробовать вот так:
JRoute::_($this->app->route->item($this->item, false)

То вся страница слетает, покрывается кракозябрами и рапортует об ошибке:
Catchable fatal error: Object of class App could not be converted to string in public_html/ххх.com/media/zoo/applications/jbuniversal/templates/catalog/renderer/item/recepty/full.php on line 301

Если так:
То тоже кракозябры и ошибка:
Catchable fatal error: Object of class App could not be converted to string in public_html/хххr.com/media/zoo/applications/jbuniversal/templates/catalog/renderer/item/recepty/full.php on line 301

Работает если вот такую конструкцию использую:

Код: php
<?php echo '<a href="'. $this->app->route->item($this->_item). '">rrr</a>'; ?>

Где rrr - просто для проверки ссылки.

Но есть глюк не понятный. В некоторых материалах - каноническая ссылка - не та. В хедере та, а это, проверочная - не та! Безо всякой логики подставляет существующий url.
Это означает, что обсуждение сочного стейка может попасть на страницу группировки веганов. Это, сами понимаете не гуд.  Так оставлять нельзя. ))
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
Re: Zoo, комментарии и rel="canonical"
« Ответ #3 : 05.07.2013, 01:29:32 »
Я единственного не пойму от куда и куда вам нужно вставить код. Если в элементе, то это одно, в шаблоне - другое.
С каноникалами и дублями  неплохо справляется мой ZOOptimizer.
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
*

poiuy

  • Захожу иногда
  • 203
  • 30 / 6
  • o_O
Re: Zoo, комментарии и rel="canonical"
« Ответ #4 : 05.07.2013, 10:43:43 »
С дублями проблем нет. canoniсal  в хеде правильно отображаются.

Мне бы как-нибудь эту же каноническую ссылку заставить правильно работать в в другом месте страницы.

Если имеет значение где его вставлять - то для меня это не принципиально. То есть, где будет работать, там и будет.

Мне необходимо, что бы ссылка формировалась в коде JS от cackle, вот он (2 строки сверху - попытка сгенерить canonical):

Спойлер
[свернуть]

Это все вставляется сюда:

public_html/super-puper-mega-sait.com/media/zoo/applications/jbuniversal/templates/catalog/renderer/item/recepty/full.php

Ссылка действительно формируется, но не та! На мой взгляд, абсолютно без всякой логики.

Вот пример:

Спойлер
[свернуть]

В общем, я вообще ни чего не понимаю. Я предполагаю, что генерация ссылки от чего-то зависит. Но, хоть убей, не могу понять от чего. Не сталкивался с этим ни разу. Уже руки опускаются ((
« Последнее редактирование: 05.07.2013, 10:47:03 от poiuy »
*

Efanych

  • Глобальный модератор
  • 4684
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Zoo, комментарии и rel="canonical"
« Ответ #5 : 05.07.2013, 10:54:23 »
Так если без разницы куда, то вставьте в /media/zoo/applications/jbuniversal/templates/catalog/item.php
JRoute::_($this->app->route->item($this->item, false))
Создание сайтов, шаблонов, помощь в решении проблем.
*

poiuy

  • Захожу иногда
  • 203
  • 30 / 6
  • o_O
Re: Zoo, комментарии и rel="canonical"
« Ответ #6 : 05.07.2013, 11:16:32 »
Так если без разницы куда, то вставьте в /media/zoo/applications/jbuniversal/templates/catalog/item.php
JRoute::_($this->app->route->item($this->item, false))


Пока работает. Огромное спасибо. Еще понаблюдаю, но думаю, что все будет хорошо!
Efanych, спасибо за помощь. И всем кто пытался помочь, тоже спасибо )
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено] Как в модуле ZOO Item вывести название и описание категории?

Автор frolov.ar

Ответов: 13
Просмотров: 4595
Последний ответ 01.04.2017, 13:29:52
от rivermc
[Решено] Ссылка на элемент (материал) Zoo

Автор poiuy

Ответов: 5
Просмотров: 7566
Последний ответ 03.02.2017, 13:57:38
от newvideo
аватарки пользователей в комментарии

Автор newvideo

Ответов: 1
Просмотров: 1362
Последний ответ 21.01.2017, 02:28:13
от newvideo
[Решено] Как вывести подкатегории категории zoo?

Автор Karyuudo

Ответов: 1
Просмотров: 1772
Последний ответ 12.11.2016, 16:48:00
от newvideo
[Решено] Гостевые комментарии в ZOO Blog. Как убрать поле URL?

Автор Torchez

Ответов: 9
Просмотров: 3391
Последний ответ 14.12.2015, 17:41:17
от orchanin