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

Виталик

  • Завсегдатай
  • 1244
  • 130 / 0
Re: ZOO и дубль контента
« Ответ #30 : 01.12.2009, 18:37:59 »
router.php


<?php

	
/**
	
* @package   Zoo Component
	
* @version   1.0.4 2009-04-23 16:32:12
	
* @author    YOOtheme http://www.yootheme.com
	
* @copyright Copyright (C) 2007 - 2009 YOOtheme GmbH
	
* @license   http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 only
	
*/

	
// load config
	
require_once(
JPATH_ADMINISTRATOR.'/components/com_zoo/config.php');

	
function 
ZooBuildRoute(&$query)
	
{
	
	
// init vars
	
	
$segments = array();

	
	
// category view
	
	
if (@
$query['view'] == 'category' && isset($query['category_id'])) {
	
	
	
$segments[] = 'category';
	
	
	
$segments[] = CategoryHelper::translateAlias((int) $query['category_id']);
	
	

	
	
	
unset(
$query['view']);
	
	
	
unset(
$query['category_id']);

	
	
	
// pagination
	
	
	
if (isset(
$query['page'])) {
	
	
	
	
$segments[] = $query['page'];
	
	
	
	
unset(
$query['page']);
	
	
	
}
	
	
}

	
	
// alpha index view
	
	
else if (@
$query['view'] == 'category' && isset($query['alpha_char'])) {
	
	
	
$segments[] = 'alphaindex';
	
	
	
$segments[] = $query['alpha_char'];
	
	
	
unset(
$query['view']);
	
	
	
unset(
$query['alpha_char']);
	
	
}

	
	
// feed view
	
	
else if (@
$query['view'] == 'category' && @$query['format'] == 'feed' && isset($query['type'])) {
	
	
	
$segments[] = 'feed';
	
	
	
$segments[] = $query['type'];
	
	
	
unset(
$query['view']);
	
	
	
unset(
$query['type']);
	
	
}

	
	
// item view
	
	
else if (@
$query['view'] == 'item' && isset($query['item_id']))
	
	
{
	
	
	
$segments[] = 'item';
	
	
	
$segments[] = ItemHelper::translateAlias((int) $query['item_id']);
	
	
	
unset(
$query['view']);
	
	
	
unset(
$query['category_id']);
	
	
	
unset(
$query['item_id']);
	
	
}

	
	
// element view
	
	
else if (@
$query['view'] == 'element' && @$query['task'] == 'callelement' && isset($query['item_id'], $query['element'], $query['method']))
	
	
{
	
	
	
$segments[] = 'callelement';
	
	
	
$segments[] = ItemHelper::translateAlias((int) $query['item_id']);
	
	
	
$segments[] = $query['element'];
	
	
	
$segments[] = $query['method'];
	
	
	
unset(
$query['view']);
	
	
	
unset(
$query['task']);
	
	
	
unset(
$query['item_id']);
	
	
	
unset(
$query['element']);
	
	
	
unset(
$query['method']);
	
	
}

	
	
return 
$segments;
	
}

	
function 
ZooParseRoute($segments)
	
{
	
	
// init vars
	
	
$vars  = array();
	
	
$count count($segments);
	
	
// fix segments (see JRouter::_decodeSegments)
	
	
foreach (
array_keys($segments) as $key)
	
	
{
	
	
	
$segments[$key] = str_replace(':''-'$segments[$key]);
	
	
}
	
	
// category view
	
	
if (
$count == && $segments[0] == 'category')
	
	
{
	
	
	
$vars['view'] = 'category';
	
	
	
$vars['category_id'] = (int) CategoryHelper::getCategoryIdByAlias($segments[1]);
	
	
	

	
	
}

	
	
// category view with pagination
	
	
else if (
$count == && $segments[0] == 'category')
	
	
{
	
	
	
$vars['view']        = 'category';
	
	
	
$vars['category_id'] = (int) CategoryHelper::getCategoryIdByAlias($segments[1]);
	
	
	

	
	
	
$vars['page']        = (int) $segments[2];
	
	
	

	
	
}

	
	
// alpha index view
	
	
else if (
$count == && $segments[0] == 'alphaindex') {
	
	
	
$vars['view']       = 'category';
	
	
	
$vars['alpha_char'] = (string) $segments[1];
	
	
	

	
	
}

	
	
// feed view
	
	
else if (
$count == && $segments[0] == 'feed') {
	
	
	
$vars['view'] = 'category';
	
	
	
$vars['type'] = (string) $segments[1];
	
	
	

	
	
}
	
	
// item view
	
	
else if (
$count == && $segments[0] == 'item')
	
	
{
	
	
	
$vars['view']
	
	
'item';
	
	
	
$vars['item_id']
	
= (int) 
ItemHelper::getItemIdByAlias($segments[1]);
	
	
	

	
	
}

	
	
// element view
	
	
else if (
$count == && $segments[0] == 'callelement')
	
	
{
	
	
	
$vars['view']    = 'element';
	
	
	
$vars['task']    = 'callelement';
	
	
	
$vars['item_id'] = (int) ItemHelper::getItemIdByAlias($segments[1]);
	
	
	

	
	
	
$vars['element'] = (string) $segments[2];
	
	
	

	
	
	
$vars['method']  = (string) $segments[3];
	
	
	

	
	
}
	
	
	

	
	
return 
$vars;
	
}
*

vadim_tula

  • Осваиваюсь на форуме
  • 48
  • 0 / 0
Re: ZOO и дубль контента
« Ответ #31 : 01.12.2009, 20:45:34 »
лови+, спасибо за скорую помощь *DRINK*
*

Gadzila

  • Осваиваюсь на форуме
  • 49
  • 3 / 0
Re: ZOO и дубль контента
« Ответ #32 : 02.12.2009, 16:01:41 »
Виталик, vadim_tula,

Спасибо за интересное решение. Но на мой взгляд оно не совсем полное...

1. Остается лосов item в url (при попытке закомментить в разделе // item view строку "$segments[] = 'item';" слово из строки пропадает, но и ссылка собственно ведет в никуда, то есть открывается та же страница, откуда мы пытались уйти по ссылке) - есть ли решение?
2. Категория при вызове позиции через каталог теряется в урле полностью (получаем, например, /derevo/item/bochka-30 вместо /derevo/bochki/item/bochka-30, где bochki - это пункт меню, дочерний по отношению к derevo, равно как и категоря bochki дочерняя по отношению к категории derevo) - как бы оставить в урле алиас категории, а само слово category убрать?

Вообще, есть ли возможность выводить урл на все виды зоошных страниц без слов category и item, просто "/алиас категори/алиас итема"? ведь при одинаковых алиасах пунктов меню и собственно позиций зоо - получили бы идеального вида ссылки без дублирования и лишних слов. Как я понял это все можно сделать грамотно переписав router.php - но, к моему великому сожалению, я в этом совсем не силен...

Ни у кого мыслей, похожих на мою не пробегало до сих пор?  *DRINK*
*

Виталик

  • Завсегдатай
  • 1244
  • 130 / 0
Re: ZOO и дубль контента
« Ответ #33 : 02.12.2009, 18:47:08 »
а если товар в нескольких категориях или вложенные категории?
*

Gadzila

  • Осваиваюсь на форуме
  • 49
  • 3 / 0
Re: ZOO и дубль контента
« Ответ #34 : 02.12.2009, 20:14:23 »
Не проблема, пусть он выводится как есть, только без слов item или category в урле. просто убрать их вывод из строки адреса возможно?
*

Виталик

  • Завсегдатай
  • 1244
  • 130 / 0
Re: ZOO и дубль контента
« Ответ #35 : 02.12.2009, 21:23:09 »
просто убрать нельзя, по ним определяется что на странице, материал или категория.

если убрать, то к псевдониму категории и материала надо будет дописывать например "с-" для категории и "i-" для материала
*

Stech

  • Осваиваюсь на форуме
  • 34
  • 0 / 0
Re: ZOO и дубль контента
« Ответ #36 : 02.12.2009, 23:54:05 »
item тоже бесил, поставил плагин ext_sh404sef-15_zoo, теперь в ссылке категории вместо итема ставить заголовок без первой буквы (не пойму почему), т.е. есликатегория называется zoo то ссылка вида http://сайт.ру/оо/, а пост в категории без всяких приставок http://сайт.ру/посттакойто.html
Но это только если стоит sh404SEF
*

Gadzila

  • Осваиваюсь на форуме
  • 49
  • 3 / 0
Re: ZOO и дубль контента
« Ответ #37 : 03.12.2009, 12:09:24 »
2Виталик

На самом деле, если закомментить одну строчку со словом item, как я писал выше, то позции из категории первого уровня выводятся на ура без слова item и без проблем. Однако из категории второго уровня (и возможно всех последующих - не проверял) не выдается ничего вообще, адрес в строке браузера меняется, а сама страница остается страницей категории.
*

voland

  • Легенда
  • 11031
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: ZOO и дубль контента
« Ответ #38 : 03.12.2009, 12:16:25 »
Ребята, а вот сами подумайте - если одна страничка в разных категориях то как у нее может быть 1 урл? Ведь в этом случае никак не передается параметр категории! Откуда тот же zoo будет знать какая категория имеется ввиду?
*

Stech

  • Осваиваюсь на форуме
  • 34
  • 0 / 0
Re: ZOO и дубль контента
« Ответ #39 : 03.12.2009, 15:08:50 »
Новые грабли блин, поставил ext_sh404sef-15_zoo, все сделал как в нем написано, и теперь не работает голосование. Т.е. звездочки стоят, а проголосовать нельзя. Естьу кого-нибудь мысли на этот счет
*

kind_bear

  • Осваиваюсь на форуме
  • 20
  • 2 / 0
Re: ZOO и дубль контента
« Ответ #40 : 06.12.2009, 21:31:22 »
Виталик, спасибо за route.php. Благодаря вашему примеру разобрался, как убрать alias категории из ссылки. Но возникли два вопроса.

1. Неужели не существует совсем никакого способа как убрать этот /item/ из ссылки? sh404SEF же каким-то образом вообще делал ссылку вида site.ru/алиас-материала/

2. Ребят гляньте, пожалуйста, на сайт http://www.hworld.ru/. Правая колонка это модуль mod_zooitem, ссылки на материалы, которые он выводит, имеют вид http://www.hworld.ru/ru/vy-pomogli-im/item/mediczinskoe-oborudovanie

«vy-pomogli-im» это алис совсем другой категории, не той, где расположен материал, то есть не тот который указан в настройках модуля mod_zooitem. Я пробовал выводить модулем разные категории, он выводит, но алис для ссылки все равно почему-то берется именно этот - vy-pomogli-im. Я даже менял алис категории vy-pomogli-im на vy-pomogli-im-category, но все равно mod_zooitem создает ссылки вида http://www.hworld.ru/ru/vy-pomogli-im/item/mediczinskoe-oborudovanie

Откуда может браться этот алиас?
« Последнее редактирование: 06.12.2009, 21:44:26 от kind_bear »
*

Виталик

  • Завсегдатай
  • 1244
  • 130 / 0
Re: ZOO и дубль контента
« Ответ #41 : 06.12.2009, 23:00:43 »
а есть пункт меню с таким алиасом?
*

kind_bear

  • Осваиваюсь на форуме
  • 20
  • 2 / 0
Re: ZOO и дубль контента
« Ответ #42 : 06.12.2009, 23:18:00 »
а есть пункт меню с таким алиасом?

Да, есть. Я тоже думал, что это он влияет. Я поменял для него alias, на «vy-pomogli-im-menu», удалил кэш. Но на вид ссылок для модуля mod_zooitem это не повлияло.
*

eX

  • Захожу иногда
  • 256
  • 72 / 0
Re: ZOO и дубль контента
« Ответ #43 : 11.12.2009, 16:25:57 »
Итак, по просьбе kind_bear и вчерашнего запроса http://joomlaforum.ru/index.php/topic,91721.msg517865.html#msg517865 на предмет модификации SEF и модуля опишу решение, какое сделал я.
Сразу отмечу что я с компонентом Zoo не сильно знаком. Мое видение его было только лишь в направлении области по формированию SEF URL и модуля.

Адрес сайта с внедренным решением и локализацией задачи - www.hworld.ru

Опишу процесс решения:
1. По формированию SEF без item
Разобрав router.php компонента, где было уже внедрено решение, уважаемого Виталика (http://joomlaforum.ru/index.php/topic,69146.msg510767.html#msg510767), стало понятно что за формирование компонентом ссылок на элементы просмотра каталога-категории отвечает функция -

function ZooBuildRoute(&$query), тут $query - это получаемый вид URL,

а за разбор входящего URL function ZooParseRoute($segments) - это сегменты URL, проще говоря разобранный $_GET

итак.. начнем с обратного, с разбора требуемого нам вида URL: /{category-name}/{item-name} (без /item/)
Для этого:
почти в конце функции дописываем код
Код: php
function ZooParseRoute($segments) {
...
else if ($count == 2 && $segments[0] == 'item') {
$vars['view']        = 'item';
$vars['item_id']     = (int) ItemHelper::getItemIdByAlias($segments[1]);
}

// eX::
// hack! new :: хак для формирования URL SEF ссылки вида {category}/{item-name}
else if($count == 1 && preg_match('(\w+)',$segments[0]) )  {
$vars['view']        = 'item';
$vars['item_id']     = (int) ItemHelper::getItemIdByAlias($segments[0]);
}
// ::end

Что сделали?
1. проверяем на кол-во сегментов = 1
2. проверяем на тип ссылки regexp-ом сегмента[0], поскольку /item нам требуется откинуть.
3. else if ($count == 2 && $segments[0] == 'item') { --- данное условие намеренно оставил для совместимости с ранее уже вставленными ссылками (как это могло быть в статистическом контенте)


Шаг 2.
Теперь нам надо чтобы формировались ссылки требуемого вида

Заменяем старый код и пишем новый
Код: php
function ZooBuildRoute(&$query) {
...
else if (@$query['view'] == 'item' && isset($query['item_id'])) {
// eX::
// @ old code::
//$segments[] = 'item';
//<<predeleted $segments[] = CategoryHelper::translateAlias((int) $query['category_id']);
//$segments[] = ItemHelper::translateAlias((int) $query['item_id']);
//unset($query['view']);
//unset($query['category_id']);
//unset($query['item_id']);
// ::end

// eX::
// @ new code ::
$segments[] = ItemHelper::translateAlias((int) $query['item_id']);
unset($query['view']);
unset($query['category_id']);
unset($query['item_id']);
// ::end

}

Посмотреть в действии:
http://www.hworld.ru/ru/im-nuzhna-pomosch
« Последнее редактирование: 11.12.2009, 16:31:33 от eX »
*

eX

  • Захожу иногда
  • 256
  • 72 / 0
Re: ZOO и дубль контента
« Ответ #44 : 11.12.2009, 16:30:24 »
По модулю:

Разобрав код модуля стало ясно, что ссылка на категорию формируется на основе Itemid (внимание! каталога, а НЕ категории, как этого требуется).
Итак.. исправляем ситуацию..

Потрошим helper.php модуля:

Заменяем функцию getItemId($cat_id) на эту:
Код: php
	function getItemId($cat_id) {

static $menu;

if (empty($menu)) {
$menu = array();

if ($items = MenuHelper::getItemsByComponent('com_zoo', true)) {
foreach ($items as $i => $item) {
$params = new JParameter($item->params);

// parse catalog/category
if (strpos($params->get('catalog_category'), ':')) {
list($catalog_id, $category_id) = explode(':', $params->get('catalog_category'), 2);
} else {
list($catalog_id, $category_id) = array(0, 0);
}


// set catalog id/menu item id
// eX::
// OLD CODE:
/*
_____
if ($catalog_id && !isset($menu[$catalog_id])) {
$menu[$catalog_id] = $item->id;
}
____
*/

// new ::
// @ : Проблема была в том, что  почему-то берется номер каталога из привязки Itemid из меню,
// вот модификация чтобы Itemid (для построения в дальнейшем URL в модуле) был от категории
if ($category_id && !isset($menu[$category_id])) {
$menu[$category_id] = $item->id;
}
// end::
}
}
}


if (isset($menu[$cat_id])) {
return $menu[$cat_id];
}

return 0;
}

В модифицированной данной функции Itemid будет получать категории (а не каталога!).
Опять же хочу отметить - Itemid берется из таблицы #__menu, соот-но требуется чтобы ссылка присутствовала в каком-либо меню на данную категорию каталога Zoo
*

varenik_008

  • Осваиваюсь на форуме
  • 20
  • 0 / 0
Re: ZOO и дубль контента
« Ответ #45 : 12.12.2009, 16:52:51 »
а где этот файл helper.php находится?(я новичок)
*

kind_bear

  • Осваиваюсь на форуме
  • 20
  • 2 / 0
Re: ZOO и дубль контента
« Ответ #46 : 12.12.2009, 16:55:39 »
а где этот файл helper.php находится?(я новичок)
/modules/mod_zooitem/helper.php

К сообщению прикрепил рабочий helper.php от eX

[вложение удалено Администратором]
*

varenik_008

  • Осваиваюсь на форуме
  • 20
  • 0 / 0
Re: ZOO и дубль контента
« Ответ #47 : 12.12.2009, 17:01:32 »
У меня вообще нет такого модуля..
*

kind_bear

  • Осваиваюсь на форуме
  • 20
  • 2 / 0
Re: ZOO и дубль контента
« Ответ #48 : 12.12.2009, 17:05:54 »
У меня вообще нет такого модуля..
Тогда зачем вы спрашиваете :-). Мне это нужно было, потому что я использую как компонент Zoo, так и модуль к нему для отображения на главной материалов Zoo. И у меня были c этим модулем проблемы. Значит, вам это просто не нужно.
*

varenik_008

  • Осваиваюсь на форуме
  • 20
  • 0 / 0
Re: ZOO и дубль контента
« Ответ #49 : 12.12.2009, 17:17:31 »
Прошу прощения, что врезался в тему (не разобрался сразу).
Но уменя такая ситуация:
Я изменил router - ссылки с тали нормальными, но остаась одна продлема.
Меню двухуровневое. Есль я лезу к материалу через меню - все в порядке.
1.http://www.1111/lang-program.html
2.http://www.1111/lang-program/delphi.html
3.http://www.1111/lang-program/delphi/delphi-bustrui-start.html
Но если открываю категорию первого уровня (1.) через меню, а второго уровня в списке категорий в главной колонке то получается ссылка
http://www.1111/lang-program/category/delphi.html
затем открываю материл а там нормальная ссылка
http://www.1111/lang-program/delphi-bustrui-start.html
Как убрати */category/?
    пожалуйста.
*

varenik_008

  • Осваиваюсь на форуме
  • 20
  • 0 / 0
Re: ZOO и дубль контента
« Ответ #50 : 20.12.2009, 01:46:00 »
eX, спасибо за разбор router.php компонента. Очень помог. Спасибо!
*

kuzvac

  • Осваиваюсь на форуме
  • 27
  • 10 / 0
Re: ZOO и дубль контента
« Ответ #51 : 16.02.2010, 22:33:46 »
eX, спасибо за разбор router.php компонента. Очень помог. Спасибо!
У тебя получилось сделать ссылки на каталоги с двойной вложенностью? Если получилось, то как, можешь подсказать?  ^-^ a то я не пойму немного.
*

морок

  • Осваиваюсь на форуме
  • 39
  • 4 / 0
Re: ZOO и дубль контента
« Ответ #52 : 18.03.2010, 20:01:17 »
Тема из борьбы с дублями контента переросла в хак урлов :)
По основному вопросу
Господа, а как вам такая концепция (скажу сразу, я не писатель ПХП руками, так что предлагаю только концепцию реализации):
1. создается основная категория итемов или назначаются пунктами меню к (например) site.ru/items/ либо создается поле *link* в шаблоне
2. правится _item.php на предмет замены
Код
$link = JRoute::_($this->link_base.'&view=item&category_id='.$this->category->id.'&item_id='.$item->id); 
на значение поля "линк" или на набор /общая_категория_итемов/имя_итема.

При этом любые категории будут показывать любой набор итемов, но не смотря на это каждый итем будет обладать каноническим урлом (либо запрограмированным, либо заданным).

Как вам?
« Последнее редактирование: 18.03.2010, 20:11:19 от морок »
*

delames

  • Захожу иногда
  • 141
  • 10 / 0
  • Решаю программные вопросы за $ - Обращайтесь!
Re: ZOO и дубль контента
« Ответ #53 : 19.03.2010, 01:49:52 »
Создаю 3 категории: сони, ТВ, 32"
создаю товар и добавляю его во все 3 категории. В меню есть ссылки на все три категории. В итоге что имеем? 3 разные ссылки на абсолютно одинаковый контент.
.ru/index.php?Itemid=54&option=com_zoo&view=item&category_id=0&item_id=1
.ru/index.php?Itemid=49&option=com_zoo&view=item&category_id=0&item_id=1
.ru/index.php?Itemid=53&option=com_zoo&view=item&category_id=0&item_id=1

Что делать? Яндекс запинает до смерти)
Блин смотрел на сообщение, смотрел чет понять не мог в чем беда.
слушай так а зачем ты 3 меню создаешь? создавай 1 меню типа товары..Да как угодно можно назвать.. Можно даже не называть и не отображать то по сути. А дальше просто пользуйся категориями. Ведь по сути каталоги это те же категории только с привязкой на меню. Подправишь шаблон category для вывода подкатегорий как тебе надо. настроишь zoo_menu c/без dropmenu и уровневость. В итоге получишь ссылку с одним и тем же itemid.
« Последнее редактирование: 19.03.2010, 01:58:59 от delames »
*

Ozzymanson

  • Захожу иногда
  • 85
  • 0 / 0
Re: ZOO и дубль контента
« Ответ #54 : 19.03.2010, 05:52:40 »
ага решили  ;D

установил роутер и хелпер - красиво - да!
только вот если выбирать материал через mod_zooitem - выбрасывает на сайт/component/zoo/материал

а если через обычный моd_mainменю - то все нормально = сайт/usefull-articles/материал

конечно спасибо за решение, но вот такой косяк

т.е. если я уже зашел в каталог и жму на ссылки в mod_zooitem - то все нормально, а если я на главной странице сайта например и на нее тоже выводится mod_zooitem - при попытке перейти по ссылке в этом меню - кидает сюда

сайт/component/zoo/материал

вот

p.s. у меня главная страница сайта и зуу разведены

P.P.s. вернул на место старый хелпер и все нормально)) спасибо за решение
« Последнее редактирование: 19.03.2010, 06:50:27 от Ozzymanson »
*

delames

  • Захожу иногда
  • 141
  • 10 / 0
  • Решаю программные вопросы за $ - Обращайтесь!
Re: ZOO и дубль контента
« Ответ #55 : 19.03.2010, 10:55:20 »
дело тут не столько в хелпере сколько в идентификаторе категории category_id, который не передается в zoo_item. В хелпере zoo_item сделай b.category_id....LEFT JOIN #zoo_category_item...  И при формировании ссылки добавь &category_item=$cat_id
*

Ozzymanson

  • Захожу иногда
  • 85
  • 0 / 0
Re: ZOO и дубль контента
« Ответ #56 : 19.03.2010, 22:40:37 »
дело тут не столько в хелпере сколько в идентификаторе категории category_id, который не передается в zoo_item. В хелпере zoo_item сделай b.category_id....LEFT JOIN #zoo_category_item...  И при формировании ссылки добавь &category_item=$cat_id

ууу...
*

delames

  • Захожу иногда
  • 141
  • 10 / 0
  • Решаю программные вопросы за $ - Обращайтесь!
Re: ZOO и дубль контента
« Ответ #57 : 22.04.2010, 17:15:10 »
Короче в administrator/components/com_zoo/tables/item.php

в нем функция getFromCategory
в $query добавитьте b.category_id.
чтоб было:
$query = "SELECT a.*, b.category_id" ....

Далее в хелпере mod_zooitem
найдете переменную $items[$key]->href  - это формирование ссылки
и добавите в нее '&category_id='.$item->category_id
было:
$items[$key]->href = 'index.php?option=com_zoo&view=item&item_id='.$item->id.($itemid ? '&Itemid='.$itemid : null);
стало:
$items[$key]->href = 'index.php'.($itemid ? '?Itemid='.$itemid : null).'&option=com_zoo&view=item'.'&category_id='.$item->category_id.'&item_id='.$item->id;
*

Gadzila

  • Осваиваюсь на форуме
  • 49
  • 3 / 0
Re: ZOO и дубль контента
« Ответ #58 : 05.05.2010, 14:44:23 »
А кто-то уже придумал, как избавиться от /category/ в урле при просотре категорий?
*

Gadzila

  • Осваиваюсь на форуме
  • 49
  • 3 / 0
Re: ZOO и дубль контента
« Ответ #59 : 05.05.2010, 15:21:23 »
У меня пока есть такая простая полугениальная идея ;)

Если тупо закоментить в роутер.пхп вторую строчку вида категории, т.е. так:
Код: php
	// category view
if (@$query['view'] == 'category' && isset($query['category_id'])) {
// $segments[] = 'category';
$segments[] = CategoryHelper::translateAlias((int) $query['category_id']);
unset($query['view']);
unset($query['category_id']);

То получим прекрасные нерабочие ссылки на категорию из категории(каталога) верхнего уровня. Однако, если при этом в основном меню прописать подпункты (относительно пункта с началом каталога) на собственно эти категории и дать им одинаковые псевдонимы, то ссылки многовенно становятся рабочими! Второй плюс, помимо очевидного упрощения и оптимизации урла, состоит в том, что можно обойтись без модуля зуменю, заменив его на обычный модуль меню Joomla соответствующего уровня.

В общем, для моих целей вроде как достаточно и вполне удобно. Недостатки в подходе возможно и есть, и буду всем признателен за их излечение.

Сейчас надо придумать, как сочетать это с избавлением от слова item и в общем проблему топика можно считать исчерпаной.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Поиск / фильтрация контента в ZOO

Автор dimapv

Ответов: 29
Просмотров: 12027
Последний ответ 14.02.2012, 22:43:25
от udav221
Экспорт контента в Yootheme ZOO

Автор Gurov

Ответов: 6
Просмотров: 2291
Последний ответ 27.01.2010, 16:24:11
от voland
Реально ди добавить функцию загрузки mp3 и вставки аудиоплеера в шаблоне блога? добавление контента

Автор fatlast

Ответов: 0
Просмотров: 1695
Последний ответ 14.11.2009, 14:49:55
от fatlast
Добавление старого контента

Автор sanya32

Ответов: 0
Просмотров: 1359
Последний ответ 07.09.2009, 18:33:23
от sanya32