xilt Posted March 9, 2015 Report Share Posted March 9, 2015 Видел на просторах интернета данное решение за "бесплатно", если это требуется многим, готов поделиться своим решением, на безвозмездной основе. Отпишитесь 20 не однодневных пользователей и я выложу данное решение. Quote Link to post Share on other sites
DaVinci Posted March 10, 2015 Report Share Posted March 10, 2015 (edited) О чем вообще речь? Редирект из админки - редирект чего именно? Edited March 10, 2015 by DaVinci Quote Link to post Share on other sites
xilt Posted March 10, 2015 Author Report Share Posted March 10, 2015 (edited) О чем вообще речь? Редирект из админки - редирект чего именно? из панели управления назначать редиректы, без использования htaccess , например при переезде старого сайта на новый, потому что 1000 редиректов проблематично размещать htaccess Edited March 10, 2015 by xilt Quote Link to post Share on other sites
DaVinci Posted March 10, 2015 Report Share Posted March 10, 2015 (edited) из панели управления назначать редиректы, без использования htaccess , например при переезде старого сайта на новый, потому что 1000 редиректов проблематично размещать htaccess и вы хотите 1000 урл забить вручную? так это не делается.... для небольшого количества урл можно добавить функционал, и он не хитрый. а для переезда со старого движка все же надо автоматом формировать старые урл на новые и загонять все урл в базу или текстовый документ. Edited March 10, 2015 by DaVinci Quote Link to post Share on other sites
xilt Posted March 10, 2015 Author Report Share Posted March 10, 2015 и вы хотите 1000 урл забить вручную? так это не делается.... для небольшого количества урл можно добавить функционал, и он не хитрый. а для переезда со старого движка все же надо автоматом формировать старые урл на новые и загонять все урл в базу или текстовый документ. Согласен, можно доработать, прикрутить импорт/экспорт Quote Link to post Share on other sites
ps-simpla Posted March 10, 2015 Report Share Posted March 10, 2015 Всегда найдется человек которому та или иная доработка потребуется, целесообразность уже будет выбирать сам человек который будет использовать данное решение. А по поводу 20 сообщений, какого содержания они должны были быть?Это попросту флуд. Если есть решение выкладывайте платно или бесплатно ваше право. Сообщения выше не касающихся темы я удаляю. Quote Link to post Share on other sites
Solution xilt Posted March 10, 2015 Author Solution Report Share Posted March 10, 2015 (edited) Решение может не идеальное на 100%, но какое есть, если заметили неточности или кривизну сообщите подправлю. Также пишите предложения о улучшении, добавления функционала. 1. Копируем файлы редирект.zipRedirect.php - в папку apiRedirectsAdmin.php - в папку adminRedirectAdmin.php - в папку adminredirects.tpl - в папку admin/design/html/redirect.tpl - в папку admin/design/html/ 2. Подключаем ихapi/Simpla.php - добавляем в конец функции private $classes = array( ... это ,'redirect' => 'Redirect' api/Managers.php - добавляем в конец функции public $permissions_list = array( ... это ,'redirect' admin/IndexAdmin.php - добавляем в конец функции private $modules_permissions = array( ... это , ,'RedirectsAdmin' => 'redirect', 'RedirectAdmin' => 'redirect' admin/design/html/manager.tpl - добавляем в конец списка {$perms = [ , это ,'redirect' =>'Редирект' в папке admin/design/html/ добавляем в файлах settings.tpl, currency.tpl, deliveries.tpl, payment_methods.tpl, managers.tpl, menu.tplв списке {capture name=tabs} добавляем это {if in_array('redirect', $manager->permissions)}<li><a href="index.php?module=RedirectsAdmin">Редирект</a></li>{/if} 3. Создаем sql таблицу, запрос такой CREATE TABLE IF NOT EXISTS `s_redirect` ( `id` int(11) NOT NULL AUTO_INCREMENT, `url` varchar(255) NOT NULL, `url_red` varchar(255) NOT NULL, `visible` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), KEY `enabled` (`visible`), KEY `url` (`url`), KEY `url_red` (`url_red`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; INSERT INTO `s_redirect` (`id`, `url`, `url_red`, `visible`) VALUES (1, 'contact', '/', 1); 4. включаем редиректв файле index.php в корне, вставляем $uri=trim($_SERVER['REQUEST_URI'], '/'); $red = $view->redirect->get_redirect($uri); if($uri==$red->url && $red->visible==1) { header('HTTP/1.1 301 Moved Permanently'); header('Location: '.$red->url_red); exit; } перед if(($res = $view->fetch()) !== false) { ... } else { ... } 5. Проверяем работоспособность... Edited March 10, 2015 by xilt Quote Link to post Share on other sites
Kors Posted March 10, 2015 Report Share Posted March 10, 2015 Спасибо, сделано очень аккуратно. Только в п.4 накручено лишнее. Куда проще вставить ОДИН раз в ОДНОМ месте: $uri=trim($_SERVER['REQUEST_URI'], '/'); $red = $view->redirect->get_redirect($uri); if($uri==$red->url && $red->visible==1) { header('HTTP/1.1 301 Moved Permanently'); header('Location: '.$red->url_red); exit; } Quote Link to post Share on other sites
xilt Posted March 10, 2015 Author Report Share Posted March 10, 2015 Подправил Quote Link to post Share on other sites
Jolian Posted December 28, 2015 Report Share Posted December 28, 2015 Добрый день. Не могу найти menu.tpl, помогите, пожалуйста. Куда добавить: в папке admin/design/html/ добавляем в файлах settings.tpl, currency.tpl, deliveries.tpl, payment_methods.tpl, managers.tpl, menu.tplв списке {capture name=tabs} добавляем это Quote Link to post Share on other sites
mishanya Posted December 28, 2015 Report Share Posted December 28, 2015 Добрый день. Не могу найти menu.tpl, помогите, пожалуйста. Куда добавить: в папке admin/design/html/ добавляем в файлах settings.tpl, currency.tpl, deliveries.tpl, payment_methods.tpl, managers.tpl, menu.tplв списке {capture name=tabs} добавляем это menu.tpl это дополнение, где можно созавать свои меню. в стандартной симпла его нет. можете пропускать этот файл Quote Link to post Share on other sites
Dmitry86 Posted February 10, 2021 Report Share Posted February 10, 2021 В 10.03.2015 в 12:56, xilt сказал: Решение может не идеальное на 100%, но какое есть, если заметили неточности или кривизну сообщите подправлю. Также пишите предложения о улучшении, добавления функционала. 1. Копируем файлы редирект.zip Redirect.php - в папку api RedirectsAdmin.php - в папку admin RedirectAdmin.php - в папку admin redirects.tpl - в папку admin/design/html/ redirect.tpl - в папку admin/design/html/ 2. Подключаем их api/Simpla.php - добавляем в конец функции private $classes = array( ... это ,'redirect' => 'Redirect' api/Managers.php - добавляем в конец функции public $permissions_list = array( ... это ,'redirect' admin/IndexAdmin.php - добавляем в конец функции private $modules_permissions = array( ... это , ,'RedirectsAdmin' => 'redirect', 'RedirectAdmin' => 'redirect' admin/design/html/manager.tpl - добавляем в конец списка {$perms = [ , это ,'redirect' =>'Редирект' в папке admin/design/html/ добавляем в файлах settings.tpl, currency.tpl, deliveries.tpl, payment_methods.tpl, managers.tpl, menu.tpl в списке {capture name=tabs} добавляем это {if in_array('redirect', $manager->permissions)}<li><a href="index.php?module=RedirectsAdmin">Редирект</a></li>{/if} 3. Создаем sql таблицу, запрос такой CREATE TABLE IF NOT EXISTS `s_redirect` ( `id` int(11) NOT NULL AUTO_INCREMENT, `url` varchar(255) NOT NULL, `url_red` varchar(255) NOT NULL, `visible` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), KEY `enabled` (`visible`), KEY `url` (`url`), KEY `url_red` (`url_red`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; INSERT INTO `s_redirect` (`id`, `url`, `url_red`, `visible`) VALUES (1, 'contact', '/', 1); 4. включаем редирект в файле index.php в корне, вставляем $uri=trim($_SERVER['REQUEST_URI'], '/'); $red = $view->redirect->get_redirect($uri); if($uri==$red->url && $red->visible==1) { header('HTTP/1.1 301 Moved Permanently'); header('Location: '.$red->url_red); exit; } перед if(($res = $view->fetch()) !== false) { ... } else { ... } 5. Проверяем работоспособность... Архив битый, не распаковывается.... Можете залить заново? Заранее благодарю. Quote Link to post Share on other sites
Dmitry86 Posted March 31, 2023 Report Share Posted March 31, 2023 Ни у кого не найдётся архива с файлами для этого решения? Quote Link to post Share on other sites
6cnitymi Posted April 4, 2023 Report Share Posted April 4, 2023 В 31.03.2023 в 16:15, Dmitry86 сказал: Ни у кого не найдётся архива с файлами для этого решения? тоже интересует.. вдруг у кого-нибудь остался? Quote Link to post Share on other sites
shooroop Posted April 6, 2023 Report Share Posted April 6, 2023 В 05.04.2023 в 02:38, 6cnitymi сказал: тоже интересует.. вдруг у кого-нибудь остался? есть Quote Link to post Share on other sites
6cnitymi Posted April 8, 2023 Report Share Posted April 8, 2023 В 06.04.2023 в 03:31, shooroop сказал: есть Можете поделиться, пожалуйста? Quote Link to post Share on other sites
Dmitry86 Posted April 8, 2023 Report Share Posted April 8, 2023 1 час назад, 6cnitymi сказал: Можете поделиться, пожалуйста? Выложу архив попозже сюда. Quote Link to post Share on other sites
Dmitry86 Posted April 8, 2023 Report Share Posted April 8, 2023 4 часа назад, 6cnitymi сказал: Можете поделиться, пожалуйста? https://cloud.mail.ru/public/3GgG/vGbnbuykt Возможно, вам потребуется вносить правки в зависимости от того, как у вас настроены общие редиректы в .htaccess Не знаю, как было изначально задумано, но в админке я вношу url в следующем виде: Откуда: catalog/razdel-1 Куда: /catalog/razdel Именно так, и слэш в новом ur; должен стоять в начале. Думаю, разберетесь) Quote Link to post Share on other sites
Dmitry86 Posted April 8, 2023 Report Share Posted April 8, 2023 В 10.03.2015 в 13:37, Kors сказал: Спасибо, сделано очень аккуратно. Только в п.4 накручено лишнее. Куда проще вставить ОДИН раз в ОДНОМ месте: $uri=trim($_SERVER['REQUEST_URI'], '/'); $red = $view->redirect->get_redirect($uri); if($uri==$red->url && $red->visible==1) { header('HTTP/1.1 301 Moved Permanently'); header('Location: '.$red->url_red); exit; } Кстати, тут ещё можно добавить удаление всяких get-параметров, если нужно или они были раньше в ссылках: $uri = trim(strtok($_SERVER['REQUEST_URI'], '?'), '/'); Quote Link to post Share on other sites
Dmitry86 Posted August 24, 2023 Report Share Posted August 24, 2023 Обновил ссылку на архив с файлами: https://cloud.mail.ru/public/LyHe/YYc283Xzy Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.