iCMS 2
#1
2 января 2015 в 02:43
Стал тестировать сайт в роли гостя и заметил неприятную вещь. Я сделал в меню ссылки, например добавить объявление, и если гость кликнет по ней, то получит страницу 404, что как минимум не логично. Как сделать, что бы при подобных ситуациях пользователю предлагалась страница с регистрацией, а не с ошибкой?
#2
2 января 2015 в 13:42
Я сделал двойные такие кнопки, одни видны юзерам, другие гостям, для гостей ссылка на вход, для юзеров на добавление
#3
2 января 2015 в 14:08
Да, я так и сделал.
Сегодня в 03:48
#4
2 января 2015 в 14:25
можно сделать примерно так:
\default\assets\errors\notfound.tpl.php
\default\assets\errors\notfound.tpl.php
<?php $config = cmsConfig::getInstance(); ?> <!DOCTYPE html> <html> <head> <title><?php echo ERR_PAGE_NOT_FOUND; ?></title> <link type="text/css" rel="stylesheet" href="<?php echo $config->root; ?>templates/<?php echo $this->name; ?>/css/theme-errors.css"> </head> <body> <?php if (cmsUser::isLogged()){ ?> <div id="error404"> <h1>404</h1> <h2><?php echo ERR_PAGE_NOT_FOUND; ?></h2> <p><a href="<?php echo $config->host; ?>"><?php echo LANG_BACK_TO_HOME; ?></a></p> </div> <?php } else { ?> <div id="error404"><h2>Извините, но страница доступна только для пользователей сайта! пожалуйста авторизируйтесь или зарегистрируйтесь</h2> <h3>Сейчас Вы будете перенаправлены на страницу регистрации</h3> </div> <script language="JavaScript" type="text/javascript"> <!-- function GoNah(){ location="/auth/register"; } setTimeout( 'GoNah()', 5000 ); //--> </script> <?php } ?> </body>
#5
3 января 2015 в 01:12
а я проще сделал при любой 404 ошибки после пару секунд перекидывает на главную страницу))) типа почитал вот ошибка, а вот опять главная))) надеюсь поисковики ха это на меня не сильно обидятся!
#6
3 января 2015 в 08:42
так я привел почти тоже самое..а я проще сделал при любой 404 ошибки после пару секунд перекидывает на главную страницу)))
если пользователь — 404,
если гость — текст и перенаправление на страницу регистрации...
можно также и пользователя перенаправить.