CodePyro
Если вы используете Virtuemart 2+, вам потребуется использовать -detail или .html в качестве суффикса для страниц продукта. Что действительно плохо, если вы привыкли использовать SH404sef или какой-либо другой плагин, который правильно перенаправит ваши URL и сделает их красивыми. SH404sef больше не работает с Virtuemart, поэтому мы застряли с маршрутизатором по умолчанию. Вот как я исправил router.php (включен внизу для вашей загрузки pleasuere)
Поскольку плагина нет, я углубился в router.php и сделал несколько простых быстрых исправлений, чтобы игнорировать SEO_Suffix и загружать продукты.
Вокруг строки 633 Код искал категории в последнем сегменте $ vars ['virtuemart_category_id'] = $ helper-> getCategoryId (конец ($ сегменты), $ helper-> activeMenu-> virtuemart_category_id); $ vars ['view'] = 'category'; Изменился на
$ product = $ helper-> getProductId ($ сегменты, $ helper-> activeMenu-> virtuemart_category_id); $ vars ['virtuemart_product_id'] = $ product ['virtuemart_product_id']; $ vars ['virtuemart_category_id'] = $ product ['virtuemart_category_id']; // codepyro - убрал суффикс из маршрутизатора // проверяем, является ли последний сегмент продуктом. // если это так, тогда загружаем страницу с информацией о продукте вместо категории if (isset ($ vars ['virtuemart_product_id'])) {$ vars ['view'] = 'productdetails'; } else {$ vars ['virtuemart_category_id'] = $ helper-> getCategoryId (конец ($ сегменты), $ helper-> activeMenu-> virtuemart_category_id); $ vars ['view'] = 'category'; } Вокруг строки 943 // codepyro взломать удалить суффикс if ($ this-> seo_sufix_size> 0) $ productName = substr ($ productName, 0, - (int) $ this-> seo_sufix_size);
Вы можете скачать обновленный router.php для Virtuemart 2.0.26d
загрузить и заменить файл
/components/com_virtuemart/router.php
обновлено 3.14.14
- я не осознавал, что сайт, в который я внес эти корректировки для всех категорий, был задан как пункты меню, что, конечно, имеет большое значение. В любом случае ZIP-файл был обновлен с использованием последней версии маршрутизатора.