Перейти к содержимому


ЧПУ для ShopCMS


  • Вы не можете ответить в тему
Сообщений в теме: 322

#201 Matit

    Продвинутый пользователь

  • Download User
  • PipPipPip
  • 104 сообщений
Репутация: 2
Начинающий

Отправлено 04 February 2012 - 09:26 PM

R.Sergey, блин сто раз видел этот файл, думал что он тут делает и не додумался удалить его(((

вот так всегда - все гениальное просто!))
Спасибо огромное! Отписал в ЛС)
  • 0
Все "спасибо" в репутацию :)

#202 NmDimas

    Пользователь

  • Download User
  • PipPip
  • 24 сообщений
Репутация: 6
Начинающий

Отправлено 10 February 2012 - 02:13 PM

Хелп. Все сделал исправления проделал. Но вот СЕО-шник сказал еще мне установить sitemap.xml все сделал все сгенерировалось но когда пишешь http://site.ru/sitemap.xml то пишет что страница не найдетна . прописал в .htaccess RewriteRule ^sitemap\.xml$ /sitemap.xml [L]
а в robots.php
User-Agent: *
Disallow: /index.php?
Disallow: /?
Disallow: /cart.html
Disallow: /wide_search.html
Disallow: /feedback.html
Disallow: /compare.html
Sitemap: http://site.ru/sitemap.xml
  • 0

#203 micehide

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 359 сообщений
Репутация: 124
Мастер

Отправлено 10 February 2012 - 02:30 PM

Хелп. Все сделал исправления проделал.

Ошибся в строчке .htaccess-а, нужно так: RewriteRule ^sitemap\.xml$ /xml_sitemap.php [L]
Внимательнее нужно быть...
  • 0

#204 Matit

    Продвинутый пользователь

  • Download User
  • PipPipPip
  • 104 сообщений
Репутация: 2
Начинающий

Отправлено 11 February 2012 - 04:43 PM

Вылезла ошибочка одна:
Переименовал файл admin.php, заменил в init.php - все работает, но чпу больше не генерируется...
У формы прописано: admin.php?dpt=modules&sub=url_rewriter, где поменять можно?

---------- Сообщение объединено ----------

Все, нашел. Нужно заменить в файле /core/tpl/admin/url_rewriter.tpl.html admin.php
  • 0
Все "спасибо" в репутацию :)

#205 russel7788

    Новичок

  • Пользователи
  • Pip
  • 2 сообщений
Репутация: 0
Начинающий

Отправлено 11 February 2012 - 09:27 PM

4. Добавить в конец файла .htaccess следующие строки:

# BEGIN Human friendly URL's
RewriteRule ^catalog/([^/]*)$ index.php?uri=$1&uriFor=category [L]
RewriteRule ^catalog/([^/]*)/([^/]*)/([^/]*)$ index.php?uri=$3&uriFor=product [L]
RewriteRule ^catalog/([^/]*)/([^/]*)$ index.php?uri=$2&uriFor=product [L]
RewriteRule ^news/([^/]*)$ index.php?uri=$1&uriFor=news [L]
RewriteRule ^pages/([^/]*)$ index.php?uri=$1&uriFor=pages [L]
# END Human friendly URL's

В этом фрагменте нужно заменить catalog, news, pages
на нужные корни соотв. разделов.

На что надо заменить catalog, news, pages?
  • 0

#206 Matit

    Продвинутый пользователь

  • Download User
  • PipPipPip
  • 104 сообщений
Репутация: 2
Начинающий

Отправлено 11 February 2012 - 10:35 PM

russel7788, на нужные Вам названия соответствующих разделов.

Заменять не обязательно. Если Вы не хотите чтобы каталог товаров открывался по адресу вашсайт.ру/catalog то можете вместо catalog написать katalog_tovarov и получите ссылку вашсайт.ру/katalog_tovarov

Одним словом, если Вас не устраивает слово "catalog" можете его изменить на Ваше усмотрение.
  • 0
Все "спасибо" в репутацию :)

#207 NmDimas

    Пользователь

  • Download User
  • PipPip
  • 24 сообщений
Репутация: 6
Начинающий

Отправлено 13 February 2012 - 02:02 PM

ааа хелп у меня в каталоге не переходит на страницы не актуальная
в чем может быть проблема??
Ошибок в отчете нету.


Все нашел решение отредактировал .htaccess
  • 0

#208 Vivaldis

    Новичок

  • Пользователи
  • Pip
  • 7 сообщений
Репутация: 0
Начинающий

Отправлено 18 February 2012 - 10:09 AM

Инструкция из install-templates.txt
- shopping_cart.tpl.html
  найти:
{if $smarty.const.CONF_MOD_REWRITE eq 1}product_{$cart_content[i].productID}.html{else}{$cart_php_file}?productID={$cart_content[i].productID}{/if}
  заменить на:
{$cart_content[i]|@fu_make_url}

Хоть убей, не могу найти такой код в shopping_cart.tpl.html. Шаблон - default.
  • 0

#209 micehide

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 359 сообщений
Репутация: 124
Мастер

Отправлено 18 February 2012 - 12:29 PM

Хоть убей, не могу найти такой код в shopping_cart.tpl.html. Шаблон - default.

Все правильно, там его нет.. Исправляйте только одну строчку в shopping_cart.tpl.html
  • 0

#210 Matit

    Продвинутый пользователь

  • Download User
  • PipPipPip
  • 104 сообщений
Репутация: 2
Начинающий

Отправлено 26 February 2012 - 11:25 AM

Ребят помогите...

В общем не работает навигация по страницам после писка с помощью фильтра. В категориях все работает отлично.

Вот какую ссылку я получаю после нажатия на кнопку "подбор" и переходе на след. страницу:
/index.php?categoryID=14&search_name=&search_price_from=1508&search_price_to=4523&old_search_price_from=1508&old_search_price_to=4523&param_9=15&param_6=0&param_8=0&search_in_subcategory=1&advanced_search_in_category=1_offset_10.html

А ссылка должна получаться такой:
/index.php?categoryID=14&search_name=&search_price_from=1508&search_price_to=4523&old_search_price_from=1508&old_search_price_to=4523&param_9=15&param_6=0&param_8=0&search_in_subcategory=1&advanced_search_in_category=1&offset=10


Красным выделены не нужные участки кода...
Вот код из functions.php:
function ShowNavigatormdOld($a, $offset, $q, $path, &$out)
{
//shows navigator [prev] 1 2 3 4 … [next]
//$a - count of elements in the array, which is being navigated
//$offset - current offset in array (showing elements [$offset ... $offset+$q])
//$q - quantity of items per page
//$path - link to the page (f.e: "index.php?categoryID=1&")

if ($a > $q) //if all elements couldn't be placed on the page

{

//[prev]
if ($offset > 0) $out .= "<a href=\"".$path."offset_".($offset - $q).".html\">&lt;&lt; ".STRING_PREVIOUS.
"</a>&nbsp;&nbsp;";

//digital links
$k = $offset / $q;

//not more than 4 links to the left
$min = $k - 5;
if ($min < 0)
{
$min = 0;
}
else
{
if ($min >= 1)
{ //link on the 1st page
$out .= "<a href=\"".$path."offset_0.html\">1</a>&nbsp;&nbsp;";
if ($min != 1)
{
$out .= "...&nbsp;&nbsp;";
}
;
}
}

for ($i = $min; $i < $k; $i++)
{
$m = $i * $q + $q;
if ($m > $a) $m = $a;

$out .= "<a href=\"".$path."offset_".($i * $q).".html\">".($i + 1)."</a>&nbsp;&nbsp;";
}

//# of current page
if (strcmp($offset, "show_all"))
{
$min = $offset + $q;
if ($min > $a) $min = $a;
$out .= "<b>".($k + 1)."</b>&nbsp;&nbsp;";
}
else
{
$min = $q;
if ($min > $a) $min = $a;
$out .= "<a href=\"".$path."offset_0.html\">1</a>&nbsp;&nbsp;";
}

//not more than 5 links to the right
$min = $k + 6;
if ($min > $a / $q)
{
$min = $a / $q;
}
;
for ($i = $k + 1; $i < $min; $i++)
{
$m = $i * $q + $q;
if ($m > $a) $m = $a;

$out .= "<a href=\"".$path."offset_".($i * $q).".html\">".($i + 1)."</a>&nbsp;&nbsp;";
}

if (ceil($min * $q) < $a)
{ //the last link
if ($min * $q < $a - $q) $out .= "... &nbsp;&nbsp;";
$out .= "<a href=\"".$path."offset_".($a - $a % $q).".html\">".(floor($a / $q) + 1)."</a>&nbsp;&nbsp;";
}

//[next]
if (strcmp($offset, "show_all"))
if ($offset < $a - $q) $out .= "<a href=\"".$path."offset_".($offset + $q)."\">".
STRING_NEXT."</a>&nbsp;&nbsp;";

//[show all]
if (strcmp($offset, "show_all")) $out .= "|&nbsp;&nbsp;<noindex><a href=\"".$path."show_all.html\" rel=\"nofollow\">".
STRING_SHOWALL."</a></noindex>";
else $out .= "|&nbsp;&nbsp;<font class='active'>".STRING_SHOWALL2."</font>";
}
if ($a > $q)
$out .="&nbsp;&nbsp;".$a;
else false;
}


---------- Сообщение объединено ----------

Нашел в чем проблема:
нужно заменить в конце значения $path символ "_" на "&". Но вот как это сделать...
  • 0
Все "спасибо" в репутацию :)

#211 R.Sergey

    Администратор

  • Администраторы
  • 2810 сообщений
Репутация: 332
Мастер

Отправлено 26 February 2012 - 11:49 AM

А вот тут поподробнее.......... в результатах какого фильтра не работает?
Фильтра по характеристикам?
Характеристикам заданным произвольно или через выбор в выпадающем списке?
и ссылку на сайт пожалуйста в личку или под хайд.
  • 0

#212 Matit

    Продвинутый пользователь

  • Download User
  • PipPipPip
  • 104 сообщений
Репутация: 2
Начинающий

Отправлено 26 February 2012 - 12:03 PM

R.Sergey, фильтр, который тут, filter.tpl.html
но дело не в этом, т.к. тут все прекрасно работает:
http://cpu.badisoft.ru/
Наверно я где-то что-то не то вставил, хз...
Я вывожу значение $path в
function ShowNavigatormdOld($a, $offset, $q, $path, &$out)
{
echo ($path);
}

и получаю
index.php?categoryID=14&search_name=&search_price_from=1508&search_price_to=4523&old_search_price_from=1508&old_search_price_to=4523&param_9=15&param_6=0&param_8=0&search_in_subcategory=1&advanced_search_in_category=1_


вот вместо этого мне надо получить advanced_search_in_category=1&
кучу файлов просмотрел, не могу найти "_"

---------- Сообщение объединено ----------

После этой фигни вылезает "_"...

if ( isset($_GET["advanced_search_in_category"]) )
$url .= "&advanced_search_in_category=".$_GET["advanced_search_in_category"];


можно заменить "_" на "&" replace'ом, но хочется сделать все "правильно" :)
  • 0
Все "спасибо" в репутацию :)

#213 R.Sergey

    Администратор

  • Администраторы
  • 2810 сообщений
Репутация: 332
Мастер

Отправлено 26 February 2012 - 12:10 PM

http://cpu.badisoft.ru/


тут стоит совсем другой модуль ЧПУ, а не тот который обсуждается в этой теме.... прошу не путать и себя и других. Уточните какой модуль стоит у Вас. и ссылку на сайт.
  • 0

#214 Matit

    Продвинутый пользователь

  • Download User
  • PipPipPip
  • 104 сообщений
Репутация: 2
Начинающий

Отправлено 26 February 2012 - 12:52 PM

тут стоит совсем другой модуль ЧПУ, а не тот который обсуждается в этой теме.... прошу не путать и себя и других. Уточните какой модуль стоит у Вас. и ссылку на сайт.

ой блин, совсем забыл...
Модуль ЧПУ - этот
Сайт в личке.

Ответ как всегда простой :)
в файле functions.php нужно заменить

elseif ($urlflag == 1) {ShowNavigatormdOld($count, $offset, $countRowOnPage, html_spchars($url."_"), $out);}


на

elseif ($urlflag == 1) {ShowNavigatormdOld($count, $offset, $countRowOnPage, html_spchars($url."&"), $out);}


и в функции ShowNavigatormdOld заменить все "offset_" на "offset="
вот теперь все работает!
  • 0
Все "спасибо" в репутацию :)

#215 R.Sergey

    Администратор

  • Администраторы
  • 2810 сообщений
Репутация: 332
Мастер

Отправлено 26 February 2012 - 01:21 PM

Интересно то, что у меня нет это функции вообще.....
  • 0

#216 Matit

    Продвинутый пользователь

  • Download User
  • PipPipPip
  • 104 сообщений
Репутация: 2
Начинающий

Отправлено 26 February 2012 - 01:46 PM

Интересно то, что у меня нет это функции вообще.....

и навигация нормально работает без нее?

---------- Сообщение объединено ----------

Как я понимаю, функция ShowNavigatormd работает на странице категории, а ShowNavigatormdOld на странице с результатами расширенного поиска и наконец функция ShowNavigator работает на странице с результатами простого поиска (index.php?searchstring=).
  • 0
Все "спасибо" в репутацию :)

#217 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 26 February 2012 - 02:35 PM

в функции ShowNavigatormdOld

Может, это внесенная с каким-то шаблоном функция? У меня при дефолтовом шаблоне ее тоже нет.
Соответственно, никто исправления в модуле ЧПУ для этой функции и не делал.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#218 editorlive

    Новичок

  • Пользователи
  • Pip
  • 6 сообщений
Репутация: 0
Начинающий
  • ГородМосква

Отправлено 01 March 2012 - 09:54 PM

При заливке файлов на хост, модуль в админке не появляется, что я не так делаю ?:confused:

4. Добавить в конец файла .htaccess следующие строки:

# BEGIN Human friendly URL's
RewriteRule ^catalog/([^/]*)$ index.php?uri=$1&uriFor=category [L]
RewriteRule ^catalog/([^/]*)/([^/]*)/([^/]*)$ index.php?uri=$3&uriFor=product [L]
RewriteRule ^catalog/([^/]*)/([^/]*)$ index.php?uri=$2&uriFor=product [L]
RewriteRule ^news/([^/]*)$ index.php?uri=$1&uriFor=news [L]
RewriteRule ^pages/([^/]*)$ index.php?uri=$1&uriFor=pages [L]
# END Human friendly URL's

"В этом фрагменте нужно заменить catalog, news, pages
на нужные корни соотв. разделов." -Как следует понимать это, не ясно, что на, что менять?!:confused:


5. Отредактировать файл url_rewriter.php:
Найти строку "// Корневые разделы ЧПУ ссылок", и после нее заменить
catalog, news, pages на нужные корни соотв. разделов
(те же, что были заданы в .htaccess)
  • 0

#219 micehide

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 359 сообщений
Репутация: 124
Мастер

Отправлено 01 March 2012 - 10:33 PM

При заливке файлов на хост, модуль в админке не появляется, что я не так делаю ?

Не ленитесь, почитайте тему. Я, конечно, понимаю, что это не так быстро, но зато многие вопросы отпадут сами, да и с установкой других модулей проблем будет меньше... Прежде всего установите галку "Очистить кэш" в Общих настройках Админки, а потом уже заливайте файлы. Когда все стабильно запустится, можете галку выключить. Еще полезно почистить кэш браузера.

"В этом фрагменте нужно заменить catalog, news, pages
на нужные корни соотв. разделов." -Как следует понимать это, не ясно, что на, что менять?!

Если вас устраивают эти приставки (как они есть), то просто не меняйте ничего, касательно этого в .htaccess и в url_rewriter.php...
  • 0

#220 MichaelG

    Новичок

  • Пользователи
  • Pip
  • 1 сообщений
Репутация: 0
Начинающий

Отправлено 05 March 2012 - 02:09 PM

какая из версий ЧПУ актуальная (последняя и рабочая"

Нахожу несколько тем с модулем ЧПУ, но не понятно какая из них самая актуальная (последняя, рабочая). Не хочется методом тыка это узнавать. Погомогите определиться.
  • 0