Где лучше всего разместить идентификатор страницы в удобном для пользователя URL-адресе? [дубликат]


Я искал на сайте, но нигде не нашел точного ответа на мой вопрос, поэтому я задаю его здесь:

Какая из этих структур для user-friendly url является лучшим в отношении search engines и пользовательского опыта:

 http://www.example.com/category/sub-category/sub-sub-category/article/ID

Или

 http://www.example.com/ID/category/sub-category/sub-sub-category/article

Или, возможно:

 http://www.example.com/category/ID/sub-category/sub-sub-category/article

Другими словами, лучше ли размещать идентификатор в конце url или в начале, или, может быть, где-то в середине?

И еще один вопрос: лучше ли добавить завершающую косую черту в конец url?

Чтобы угадать, сколько времени будет таким, url количество слов в каждом разделе url равно:

  1. Категория-название: 2 слова

  2. Подкатегория-название: 1 слово

  3. Su-подкатегория-название: 1-4 слова (в среднем 2 слова)

  4. Артикль-название: Средний: 4 слова

Большое вам спасибо

Author: Ormoz, 2014-10-23

1 answers

Есть две вещи, которые вы должны иметь в виду:

  1. Чем легче запомнить, тем лучше
  2. вы должны иметь возможность удалять каждую часть URL-адреса, не нарушая его

Это делает ваши 3 примера довольно простыми:

A http://www.example.com/category/sub-category/sub-sub-category/article/ID
B http://www.example.com/ID/category/sub-category/sub-sub-category/article
C http://www.example.com/category/ID/sub-category/sub-sub-category/article

Идентификатор в B&C слишком близок к домену. Если бы вы удалили "/статью" с URL-адреса, вам пришлось бы просмотреть страницу подкатегории. Идентификатор продукта больше не имеет никакого смысла.

Это оставляет A. Правило 1 здесь не работает (вы должны иметь возможность удалить /ID из URL-адреса), но есть простое решение:

http://www.example.com/category/sub-category/sub-sub-category/article-ID

Я заменил последнюю косую черту тире. Вы можете легко взять идентификатор с помощью чего-то вроде:

$pid = substr($url, strrpos($url,'-')+1); // find the last dash

Вы не можете использовать explode здесь и взять последнее значение, это приведет к разрыву с /example-string-123. Используете ли вы id-name или name-id, на самом деле не имеет значения.


Оффтопик: Я бы сохранил структуру URL-адреса A, но URL-адрес продукта, который я пытаюсь сделать очень коротко:

A http://www.example.com/article-ID
B http://www.example.com/ID-article
C http://www.example.com/Brandname-article-ID

Если продукт изменит категорию, URL-адрес останется прежним. Меньше мертвых ссылок, меньше поводов для беспокойства, а более короткие URL-адреса (часто) лучше. Если вы хотите немного упростить различие, код может добавить .htm после URL-адреса только для продуктов.

Это позволяет отображать продукты несколько раз, если они соответствуют нескольким критериям. Допустим, у вас есть потрясающая синяя футболка (ABT), вы можете отобразить ABT в обзорах /blue-stuff и /t-shirts.
Это просто мое предпочтение после нескольких лет опыта.

 3
Author: Martijn, 2014-10-23 14:13:59