Автор Тема: Как убрать редирект с отфильтрованных страничек?  (Прочитано 1349 раз)

23 Ноябрь 2016, 12:23:49
  • Пользователь
  • **
  • Сообщений: 66
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Доброго времени суток! Как убрать редирект с отфильтрованных страничек? Если кому нибудь кидаешь URL на отфильтрованный товар, то переходя по URL-ке человек получает изначальную страничку без фильтра. Подскажите, пожалуйста.
23 Ноябрь 2016, 12:53:10
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 3419
  • Репутация: +79/-6
  • Сообщество PrestaShop
    • Просмотр профиля
Редиректа тагого нет. Prestashop может сбрасывать фильтры при ошибках или когда не может определить фильтры.Давай названия в чпу для фильтров, так чтобы небыло ошибок. Вот такой url сохраняет фильры - http://prestashop.ru/3-women#/size-m/color-orange
23 Ноябрь 2016, 18:34:43
Ответ #2
  • Пользователь
  • **
  • Сообщений: 66
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Редиректа тагого нет. Prestashop может сбрасывать фильтры при ошибках или когда не может определить фильтры.Давай названия в чпу для фильтров, так чтобы небыло ошибок. Вот такой url сохраняет фильры - http://prestashop.ru/3-women#/size-m/color-orange


http://prestashop.ru/turisticheskie/1011#/kolichestvo_mest-21

Да вроде бы все так и есть. Это отфильтрованная URL.
24 Ноябрь 2016, 14:04:58
Ответ #3
  • Пользователь
  • **
  • Сообщений: 66
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Может кто подскажет как в коде исправить это?
24 Ноябрь 2016, 14:51:22
Ответ #4
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 22125
  • Репутация: +25303/-1
  • Prestashop - просто и эффективно
    • Просмотр профиля
В коде ничего исправлять ненужно, у вас же url формируется правильно. Причина не в коде.
Проверьте лог ошибок, протестируйте с разными комбинациями фильтров. При тестировании отключите кеширование и склейку файлов css и js.
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
25 Ноябрь 2016, 12:04:14
Ответ #5
  • Пользователь
  • **
  • Сообщений: 66
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В коде ничего исправлять ненужно, у вас же url формируется правильно. Причина не в коде.
Проверьте лог ошибок, протестируйте с разными комбинациями фильтров. При тестировании отключите кеширование и склейку файлов css и js.


Не хочу вам надоедать, но приходится. Подскажите где "отключите кеширование и склейку файлов css и js" это сделать в престе 1.6.1.6? Пожалуйста.
25 Ноябрь 2016, 12:05:22
Ответ #6
  • Ветеран
  • *****
  • Сообщений: 1808
  • Репутация: +49/-1
  • Сообщество PrestaShop
    • Просмотр профиля
В Расширенные параметры -> Производительность.
25 Ноябрь 2016, 12:42:59
Ответ #7
  • Пользователь
  • **
  • Сообщений: 66
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В Расширенные параметры -> Производительность.

Нету у меня такого. Даже поиск не находит.
25 Ноябрь 2016, 12:48:29
Ответ #8
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Ищите "Конфигурация / Результат"
Перевод отличается в разных версиях prestashop.
25 Ноябрь 2016, 14:38:50
Ответ #9
  • Пользователь
  • **
  • Сообщений: 66
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Ищите "Конфигурация / Результат"
Перевод отличается в разных версиях prestashop.

Нашел, спасибо. Вроде бы все выключил.
25 Ноябрь 2016, 14:42:09
Ответ #10
  • Пользователь
  • **
  • Сообщений: 66
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В коде ничего исправлять ненужно, у вас же url формируется правильно. Причина не в коде.
Проверьте лог ошибок, протестируйте с разными комбинациями фильтров. При тестировании отключите кеширование и склейку файлов css и js.

Протестировал. Вот такая ерунда лезет и много:"filemtime() stat failed for php". Доступ на файл есть. Сам файл есть. Подскажите что еще может быть?
25 Ноябрь 2016, 14:50:31
Ответ #11
  • Ветеран
  • *****
  • Сообщений: 16670
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
"filemtime() stat failed for php".
Там же должен быть указан файл в котором ошибка. Как называется файл и номер строки?
25 Ноябрь 2016, 15:09:30
Ответ #12
  • Пользователь
  • **
  • Сообщений: 66
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
"25 Nov 2016 10:44:52","C:\wamp\www\tools\smarty\sysplugins\smarty_internal_cacheresource_file.php:
64","(Warning) filemtime() [<a href='function.filemtime'>function.filemtime</a>]: stat failed for C:\wamp\www/cache/smarty/cache\blocktopmenu\1\1\1\216\category\1011\70\3a\2f\703a2ff47b408cbf04865223578e6be2ee6b69f2.blocktopmenu.tpl.php"

"25 Nov 2016 10:44:52","C:\wamp\www\tools\smarty\sysplugins\smarty_internal_cacheresource_file.php:
64","(Warning) filemtime() [<a href='function.filemtime'>function.filemtime</a>]: stat failed for C:\wamp\www/cache/smarty/cache\blockcategories\1\1\1\216\2\1011\1\1f\3e\12\1f3e1251cb106743ac350956a5b2e5fec57d856b.blockcategories.tpl.php"

"25 Nov 2016 10:44:53","C:\wamp\www\tools\smarty\sysplugins\smarty_internal_cacheresource_file.php:
64","(Warning) filemtime() [<a href='function.filemtime'>function.filemtime</a>]: stat failed for C:\wamp\www/cache/smarty/cache\blockcategories\1\1\1\216\1011\1\12\88\28\128828eaa4162e25edf11343a0855952805e2502.blockcategories_footer.tpl.php"
Вот эти три.
25 Ноябрь 2016, 15:37:25
Ответ #13
  • Пользователь
  • **
  • Сообщений: 66
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
class Smarty_Internal_CacheResource_File extends Smarty_CacheResource

      public function populate(Smarty_Template_Cached $cached, Smarty_Internal_Template $_template)
    {
        $_source_file_path = str_replace(':', '.', $_template->source->filepath);
        $_cache_id = isset($_template->cache_id) ? preg_replace('![^\w\|]+!', '_', $_template->cache_id) : null;
        $_compile_id = isset($_template->compile_id) ? preg_replace('![^\w\|]+!', '_', $_template->compile_id) : null;
        $_filepath = $_template->source->uid;
        // if use_sub_dirs, break file into directories
        if ($_template->smarty->use_sub_dirs) {
            $_filepath = substr($_filepath, 0, 2) . DS
                . substr($_filepath, 2, 2) . DS
                . substr($_filepath, 4, 2) . DS
                . $_filepath;
        }
        $_compile_dir_sep = $_template->smarty->use_sub_dirs ? DS : '^';
        if (isset($_cache_id)) {
            $_cache_id = str_replace('|', $_compile_dir_sep, $_cache_id) . $_compile_dir_sep;
        } else {
            $_cache_id = '';
        }
        if (isset($_compile_id)) {
            $_compile_id = $_compile_id . $_compile_dir_sep;
        } else {
            $_compile_id = '';
        }
        $_cache_dir = $_template->smarty->getCacheDir();
        if ($_template->smarty->cache_locking) {
            // create locking file name
            // relative file name?
            if (!preg_match('/^([\/\\\\]|[a-zA-Z]:[\/\\\\])/', $_cache_dir)) {
                $_lock_dir = rtrim(getcwd(), '/\\') . DS . $_cache_dir;
            } else {
                $_lock_dir = $_cache_dir;
            }
            $cached->lock_id = $_lock_dir . sha1($_cache_id . $_compile_id . $_template->source->uid) . '.lock';
        }
        $cached->filepath = $_cache_dir . $_cache_id . $_compile_id . $_filepath . '.' . basename($_source_file_path) . '.php';
 64   $cached->timestamp = @filemtime($cached->filepath);
        $cached->exists = !!$cached->timestamp;
    }
Вот сам код. Если кто подскажет что с ним не так буду благодарен. 64-ю строку отметил.
25 Ноябрь 2016, 15:46:34
Ответ #14
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 22125
  • Репутация: +25303/-1
  • Prestashop - просто и эффективно
    • Просмотр профиля
Вот сам код. Если кто подскажет что с ним не так буду благодарен. 64-ю строку отметил.
Ошибка не в этом файле. У вас проблема в шаблонах темы.
blocktopmenu.tpl
blockcategories.tpl
blockcategories_footer.tpl
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!