Вы наверное уже заметили,а может быть и нет,что при выполнении входа на любой сайт в системе Ucoz из архива новостей (или файлов,статей и т.д.) выскакивает страница ошибки 404 и сообщает ,что страница типа ла-ла-ла.ucoz.ru/news/2?YCgfU или ла-ла-ла.ucoz.ru/load/0-3?YCgfU (или чтото подобное) не
найдена. Если Вы такого не видели или просто не обращали внимания,то попробуйте на своём или любом другом сайте от Ucoz c главной страницы или в архиве материалов (только не в категориях,а всех материалов) выбрать любую страницу архива материалов переключателем страниц и войти на сайт со своим логином и паролем. Вы увидите страницу ошибки 404 ,хотя страница на самом деле существует.Приходится возвращаться назад или обновлять страницу,что не все пользователи будут делать.
Для того чтобы избежать этого и удержать пользователей на своём сайте я предлагаю вам следующий скрипт...Собственно два варианта,с таймером и без таймера редиректа.Пример работы скрипта вы можете увидеть на сайте автора.
Особенности: 1. При выполнении входа на сайт выше описаным способам (из архива материалов) происходит редирект на ту же самую страницу с минимальной задержкой на странице ошибки 404 (задержка составляет доли секунды,в зависимости от скорости вашего интернет-соединения)
2. При переходе по несуществующей или удаленной внутренней ссылке сайта,происходит редирект на страницу с которой производился переход
3. При переходе по несуществующей или удаленной ссылке вашего с другого сайта открывается страница ошибки 404 (как и раньше) без всяких редиректов
И так,если у вас стандартная страница ошибки 404,то вам нужно загрузить свою (таких сотни готовых) чтобы была возможность редактирования
Вот сам скрипт ,его ставим в вашей страницы ошибки 404
Code
<script type="text/javascript">
tmp=new Array();
tmp2=new Array();
param=new Array();
get=location.search;
domain=document.referrer+'/';
domain=domain.substr(domain.indexOf('://')+3);
domain=domain.substr(0,domain.indexOf('/'));
if (get!='') {
tmp=(get.substr(1)).split('&');
for(i=0;i<tmp.length;i++) {
tmp2=tmp[i].split('=');
param[tmp2[0]]=tmp2[1];
}
}
if (!(param["url"])) param["url"]=document.referrer;
redir=false;
function makeurl(system) {
var url=param["url"];
}
function redirect() {
if (redir) location.href=redir;
redir=false;
}
document.write('<a style="display:none" href="'+domain+'">'+domain+'</a>');
if ( domain == 'ВАШ ДОМЕН' ) {
var ints = 1;
function alertes () {
document.getElementById('calc').innerHTML = ints;
if ( ints == 0 ) {
document.location.href = param["url"];
ints = '--';
}
if ( ints > 0 ) {
ints--;
}
};
function refresh(){
if(ints > 0) time_Interval = setInterval("alertes ()",1 );
};
refresh();}
</script>
Скопировать данный код
где ВАШ ДОМЕН меняем на ваш домен типа ла-ла-ла.ucoz.ru без http://
А это ставим в поле
Code
<span style="display: none;" id="calc"> </span>