Лучше 404 Page

Много забавных 404 страниц были недавно поделился: тщательно разработанные мемы, смешные GIF-даже странный интерактивную игру.Но если 404 не поможет своим посетителям, то что точка

Посетитель мог найти себе на 404 странице для одной из многих причин: пропущен адрес, плохой ссылку откуда-то еще, удаленный страницу или содержание, переехал в другом месте.В то время как вы можете предотвратить ошибки из переехали страниц с переадресовывает, вы не можете контролировать ошибки людей .

Быть Helpful

Люди участки на вашем сайте ищут его содержание, как правило, с помощью ссылки.Они нажали на эту ссылку, ожидая одну вещь, так почему показать им рисованной панда?Вместо этого, ваша страница 404 должны получить их туда, где они должны быть .

Эта проблема не является новой, и мы видели много идей о том, как справиться с этим.Показаны форму поиска или ссылки на главную страницу разумно.Тем не менее, те пассивные решения, которые не решают проблему посетителя.Более прямой подход будет угадать, где посетитель намеревался отправиться и предложить эту страницу .

Предлагая правильный Page

Один из способов, чтобы предложить нужную страницу, чтобы искать его самостоятельно и представить результат.К счастью, мы не должны написать поисковик, чтобы сделать это (хотя, если у вас есть один удобный, хорошо для вас!).Вместо этого, мы можем использовать __13 компании Google | Custom Search API 1 .

We can use Google’s Custom Search API to suggest the right page.
Мы можем использовать Google, заказ Search API, чтобы предложить нужную страницу .

Google Custom Search в API является инструментом для поиска в пределах отдельного сайта.При настройке, она позволяет получить то, что он считает лучшим матч с вашего сайта.Это нужно поисковую фразу, хотя.Таким образом, чтобы дать Google что-то поиск с, мы будем использовать путь к URL, что пользователь находится в настоящее время на .

Оговоркой: Пределы Abound

Прежде чем прыгать в “как” часть, стоит отметить, что уровень свободного для этого API имеет ограничение в 100 звонков в день.Вы можете пойти свет на тестирование во время работы на нем.Мне удалось прожечь 100 звонков в менее чем за час, и я должен был проводной части это вместе, не видя результата до следующего дня .

В то время как кто-то с визитки может быть штраф с этого предела, платные обновления доступны.Документация по API от Google упоминает цена $ 5 за 1000 queries __34 | | 2__14 и до10000 запросов в день .

Настройка Up

Перед использованием пользовательских Search API, мы должны позволить Google знает, кто мы есть, и получить некоторые ключи доступа .

Поисковая ID

Мы должны пройти через несколько этапов, прежде чем мы можем летать через эти 100 запросов API.Во-первых, зарегистрировать свой сайт конкретных поисковый engine __10 | | 3__9 .

  • Выберите “Добавить”.
  • Ссылка введите веб-сайта (yoursite.com |) __16 в “сайты для поиска.”

  • Хит “Создать”.

Теперь вы должны найти свой “Поисковая ID.” Нажмите кнопку “Изменить” на поисковой системе, что вы создали, затем кнопку “Search Engine ID”.Принять к сведению, что код

Setting up the Google’s Custom Search API. 4
Настройка Google, заказ Search API.( Просмотр большой version __36 | | 5__9 )

API Разработчикам Access

Затем перейдите к Разработчики Console 6 .

Если у вас еще нет проекта, выберите опцию “New Project” и заполните форму .

Под “API,” активировать “Пользовательские Search API”, переключая кнопку “Off” в положение “Вкл.” Затем выберите “Полномочия”, а затем “Создать новый ключ”, и выберите опцию “Браузер ключ”.Принять к сведению ключ API

7

( Просмотр большой version __68 | | 8__9 )

JavaScript

Вооруженные как с поисковой ID и ключ API, теперь вы можете начать удара API.Код ниже требуется jQuery __79 | | 9__9 .Это делает некоторые AJAX JSON вещи, так что я бы предпочел опереться нарамки для того, чтобы она работает во всех браузерах .

. Перед созданием функции, мы должны рассмотреть условия, которые наш код будет работать, потому что мы пишем наличие на переднем конце, наш код может работать вместе с другими плагинами и скриптами.Итак, давайте строить мало места, чтобы отделить чисто наши функции от всего остального:

function createCustomSearch() {
// Private variables and methods here
}

В нашем customSearch объекта, мы можем определить методы и переменные на безопасном расстоянии от глобального контекста.Во-первых, давайте настроить некоторые переменные, чтобы использовать позже:

function createCustomSearch() {
  // Some private variables for this object
  var context = this;
  var dialog = document.querySelector('dialog');
  // Your keys
  var engineID = 'YOUR_ENGINE_ID';
  var apiKey = 'YOUR_API_KEY';
}

Заменить ключи с тем, мы получили ранее .

Первоначально мы установим локальный контекст, сохраняя это в переменной.Мы будем использовать это, чтобы получить доступ к showDialog метод .__ позже 0 |

Во-первых, мы добавим метод, который пытается пользовательский поиск:

function customSearchConstructor() {
  // Some private variables for this object
  var context = this;
  var dialog = document.querySelector('dialog');
  // Your keys
  var engineID = 'YOUR_ENGINE_ID';
  var apiKey = 'YOUR_API_KEY';
  this.trySearch = function(phrase) {
    var queryParams = {
      cx: engineID,
      key: apiKey,
      num: 10,
      q: phrase,
      alt: 'JSON'
    }
    var API_URL = 'https://www.googleapis.com/customsearch/v1?';
    // Send the request to the custom search API
    $.getJSON(API_URL, queryParams, function(response) {
      if (response.items && response.items.length) {
        console.log(response.items[0].link);
      }
    });
  };
}

Это trySearch метод принимает фразу и отправляет его вместе с ключами в качестве запроса на API Google.Затем ответ проверяется, и первая ссылка, что он находит будут регистрироваться в консоли.Вы назвали бы это так:

var customSearch = new customSearchConstructor();
customSearch.trySearch('cat');

Предполагая, что ваш веб-сайт содержит страницы о кошках (а чья не?), Вы должны увидеть что-то вошли в консоли .

Получение Поиск Phrase

Далее мы напишем код, чтобы получить путь от URL страницы.Этот путь станет поиск фраза .

$(document).ready(function() {
  var customSearch = new customSearchConstructor();
  var path = window.location.pathname;
  var phrase = decodeURIComponent(path.replace(/\/+/g, ' ').trim());
  customSearch.trySearch(phrase);
});

В JQuery ready Метод, мы забрать pathname часть текущего URL и создать поисковую фразу из него.Мы декодировать URI, заменить любой косую черту с пробелами, и отправить результат в trySearch Метод .

Замена строк с JavaScript

Одна удобная вещь, чтобы знать, как заменить глобальный регулярное выражение в JavaScript.Это один множество матчей, разделенных труб:

/\/+/g

Первый и последний косую черту (/) должны там содержать выражение.В ней мы избежать обратной косой черты (\/) так, чтобы она рассматривается как фактический характер.+ будут соответствовать все экземпляры нескольких косых черт, и g затем говорит, чтобы заменить все вхождения в строке .

Показаны Redirect

В моей первой версии, у меня было страницы перенаправления немедленно.Это было весело, но не большой опыт для посетителя.Страница будет загружаться, мерцание и прыгать в другом месте .

Альтернативный подход заключается в представлении опцию в виде наложения и в качестве связующего звена, что посетитель может нажать.Таким образом, посетитель лучше понимает, что произошло, и видит ясный путь, чтобы продолжить.И они будут иметь возможность не предпринимать действий, если результат не устраивает .

Другое Approaches

Показаны единственный результат является одним из способов пойти об этом, но это будет стоить с учетом более чем в первый резуль …

Если вы хотите прочитать полностью статью, посетите сайт наших спонсоров

Comments are closed.