|
|
24.02.2011, 20:10
|
|
iprus
Зарегистрирован: 2008-10-07
Сообщений: 73
|
Цитата:посмотрите мой ответ в этом топике от "22.02.2011, 15:15"
Извините, этот топик я как раз не прочитал, не заметил. Хорошо, завтра попробую, спасибо.
|
|
|
27.02.2011, 19:28
|
|
iprus
Зарегистрирован: 2008-10-07
Сообщений: 73
|
Цитата:С примером, который я привел выше ( с профайлами пользователей ) - все просто, там нет GET-параметров, с тэгами сложнее - нужно передать параметр tag равный номеру тэга.
Можно попробовать использовать такое правило:
Код:RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^tag_([0-9]+).html /netcat/require/e404.php?REQUEST_URI=/tags/&tag=$1 [L,QSA]
Но глобальной переменной $tag нет, ее надо получать так:
$_GET['tag'] ( netcat сам заполняет этот массив )
То есть в системных настройках компонента с тэгами прописать $tag = $_GET['tag'];
Все сделал как описали, к сожалению так и не заработало /tags/tag_x.html
Вообщем зря модуль "Облако тегов" купил, он бесполезен с урлами вида ?tag=x. Хоть в документации что ли напишите какие урлы получаются, знал бы - не купил, а заказал бы программисту как надо с ЧПУ.
|
|
|
27.02.2011, 21:34
|
|
DiGGy
DiGGy
Зарегистрирован: 2005-04-04
Сообщений: 1546
|
Денис немного с регуляркой ошибся. Надо символ начала строки "^" убрать (у вас же путь /tags/tag_x.html). Вот так работает, по крайней мере у меня:
Код:RewriteRule tag_([0-9]+).html /netcat/require/e404.php?REQUEST_URI=/tags/&tag=$1 [L,QSA]
Temet nosce...
|
|
|
28.02.2011, 07:46
|
|
Asiat
Аниматика
Зарегистрирован: 2005-12-12
Сообщений: 576
|
Попробовал настроить для интереса, сначала не заработало.
mod_rewrite все отрабатывает, но потом в обработчике e404 начинаются всякие хитрые манипуляции, в итоге похоже система думает, что это страница объекта, пытается определить $message (которого по идее нету) и на этом обламывается:
Тестил на версии 411.
Закусило, поставил обновление до 420, и - о чудо! Parse REQUEST_URI method доработан, все пашет. На 421 также все ОК.
Что имеем в итоге:
1) обновляемся
2) прописываем в htaccess чего было написано (точка по идее наверно экранируется, но и так и так - работает)
3) не забываем в системных настройках компонента тегов прописать $tag=$_GET['tag'];
|
|
|
28.02.2011, 18:34
|
|
iprus
Зарегистрирован: 2008-10-07
Сообщений: 73
|
Странно все в этом htaccess
Но заработало даже так:
RewriteRule ^tags/tag_([0-9]+).html /netcat/require/e404.php?REQUEST_URI=/tags/?tag=$1 [L,QSA]
(с символом начала строки ^ и вопросиком перед tag=$1 [L,QSA])
Спасибо всем! Но я так и не понял, почему работает повсякому:
и так как выше
и так:
RewriteRule tags/tag_([0-9]+).html /netcat/require/e404.php?REQUEST_URI=/tags/?tag=$1 [L,QSA]
и так:
RewriteRule tag_([0-9]+).html /netcat/require/e404.php?REQUEST_URI=/tags/?tag=$1 [L,QSA]
и так:
RewriteRule tag_([0-9]+).html /netcat/require/e404.php?REQUEST_URI=/tags/&tag=$1 [L,QSA]
в последнем не указал в начале каталог tags/ и за место вопросика амперсанд, а все равно работает по всякому чё за хрень я в загадках...
|
|
|
03.03.2011, 00:28
|
|
DiGGy
DiGGy
Зарегистрирован: 2005-04-04
Сообщений: 1546
|
А что значит "по всякому"? Вы мат часть по регуляркам изучите и куча вопросов отпадет )
Temet nosce...
|
|
|
03.03.2011, 14:51
|
|
iprus
Зарегистрирован: 2008-10-07
Сообщений: 73
|
А "по всякому" - присмотритесь выше к моим вариациям, неважно где какие закорючки ставить, а нужный урл по любому работает хоть с символом начала строки, что без него, хоть с указанием имени каталога, хоть без него, хоть с вопросиком после слэша, хоть с амперсандом. В принципе не важно, заработало и ладно, просто любопытно.
Для меня как НЕпрограммиста, но человека дружищего с логикой, это мягко говоря удивительно.
И мат.часть я учить ради двух частных сайтов (под заказ ничего не делаю и не собираюсь) конечно не буду, для этого существуют форумы, где всегда добрые люди помогут Из сотен моих вопросов я здесь задал лишь несколько, остальные решаю сам.
п.с. Если у Вас, например, есть авто и Вам требуется ремонт, то Вы станете учить матчасть, например, всю его электронику (в универе я это учил год)? Все разные, кто-то поедит в сервис не вникая, кто-то более продвинутый сам поковыряется спросив совета и задав вопросы на форумах, но 99,9% точно не станут поступать в ВУЗ или хотя бы на курсы автослесарей, где учат матчасть
|
|
|
14.03.2011, 13:44
|
|
iprus
Зарегистрирован: 2008-10-07
Сообщений: 73
|
Добился в htaccess я чпушных урлов тегов: http://mysite.ru/tags/%TAG_ID/
Но вот же вылезла другая проблема, которую уже точно мне самому не решить , не ковыряясь в системных файлах.
Теперь при выводе навигации по страницам тегов вижу такие корявые урлы:
http://mysite.ru/tags/%TAG_ID/?tag=%TAG_ID&curPos=номер_страницы, что понятно не работает как надо.
Поправить урлы естественно я не могу (и RewriteRule бессмыслен), потому что ?tag= приписывается системно функцией browse_messages подставляя в параметры урла ключевик tag из поля настроек компонента (теги) раздела. Или мне нужно самому написать свою функцию browse_messages, что я не умею.
И какого ... я тратил время на /%TAG_ID/ (все разборы выше), когда в системе и функциях модуля прописаны урлы типа ?tag=
А ведь можно было сказать, что типа не парься парень, там такие вот еще подводные камни
Этот выше вопрос прежде всего к поддержке?
Почему же модуль "Облако тегов" в отличие от других нормальных модулей так сделан, что в нем все жестко как душе разработчиков угодно прописано (и некоторые вещи не верно продуманы) и нет возможности пользовать API в полной мере как стандартно принято в других компонентах и модулях и нет универсальности.
|
|
|
15.03.2011, 16:49
|
|
Asiat
Аниматика
Зарегистрирован: 2005-12-12
Сообщений: 576
|
Хоть и не имею отношения к техподдержке, но следую хорошему совету.
Не парься, парень!
|
|
|
15.03.2011, 17:33
|
|
iprus
Зарегистрирован: 2008-10-07
Сообщений: 73
|
Цитата:Хоть и не имею отношения к техподдержке, но следую хорошему совету.
Не парься, парень!
Да-а-а, Вы бы видели как мне приходится извращаться приплясывая с бубном, чтобы обойти ограничения и добиться нужного функционала, учитывая что я не программист в чистом виде
|