Как избавиться от дублирования контента Joomla
Мы можем использовать псевдонимы, чтобы создать повторяющийся элемент меню без создания дубликатов URL или дублирования контента. Они очень просты в использовании, и могу помочь решить проблемы SEO и контент-менеджмента в Joomla.
Мы можем использовать псевдонимы, чтобы создать повторяющийся элемент меню без создания дубликатов URL или дублирования контента. Они очень просты в использовании, и могу помочь решить проблемы SEO и контент-менеджмента в Joomla.
Что такое псевдоним пункта меню?
Псевдоним пункта меню – это тоже тип меню, как, допустим, Блог материала или просто Материал. Однако он не отображает контент, а является ссылкой.
Зачем нам нужен псевдоним пункта меню?
Сайты обычно имеют несколько навигационных меню, чтобы помочь пользователям найти любую необходимую информацию, и это не редкость, когда одни и те же ссылки располагаются в нескольких меню. Например, меню в футере может содержать одни и те же ссылки, что и в главном меню. Если эти ссылки меню не настроены должным образом, могут возникнуть проблемы с дублированием контента, нескольких URL для одних страниц и другие проблемы. К счастью, в Joomla имеется очень простой способ избежать подобных проблем с помощью Псевдонима пункта меню.
Пример :
Заметьте, что верхнее меню и боковое меню имеют одинаковые пункты. Чаще всего верхнее меню строится из реальных пунктов меню, выводящих контент, а боковое меню – из ссылок и псевдонимов.
Почему мы должны его использовать?
Псевдоним пункта меню, как уже было сказано, позволяет создать ссылку на уже существующий пункт меню. Допустим, у нас есть пункт «О нас». Этот пункт находится в главном верхнем меню и ведет на одиночный материал «О нас». А нашей задачей является внести еще один такой пункт меню в меню в футере (блок меню в самом низу сайта). И вместо того, чтобы создавать еще один пункт меню, который ссылается на тот же самый материал «О нас», мы просто создаем Псевдоним пункта меню. Почему именно так?
Значит нам нужно в новом, создаваемом нами пункте меню нам нужно ввести алиас меню, как и в уже существующем меню. То есть, «about-us».
Однако, когда вы введете алиас и нажмете сохранить – вы увидите вот такое сообщение об ошибке.
«Предупреждение
Сохранить не удалось из-за ошибки: Другой пункт меню, верхнего уровня, уже содержит такой Алиас»
Если же вы уверены, что такого пункта нет – скорее всего он находится в корзине и вам нужно просто ее очистить через менеджер меню.
А вообще, в большинстве случаев эта ошибка говорит вам «НУЖНО ИСПОЛЬЗОВАТЬ ПСЕВДОНИМ ПУНКТА МЕНЮ!». И это правда!
Чтобы избавиться от ошибки достаточно переключить тип пункта меню на Псевдоним пункта меню, а потом выбрать нужный пункт меню с тем же адресом.
Когда вы выберете пункт меню Псевдоним пункта меню и сохраните его, вы увидите, что Joomla может создать алиас страницы из даты и времени. Но не стоит этого пугаться, это чисто системные детали, которые никак не повлияют на адрес страницы, а используются для системных связок.
Почему это полезно?
Однако и это может быть проблематично, поскольку вы можете захотеть переименовать пункт меню, поменять/переименовать ссылку на страницу, перенести сайт и сменить домен. Это тоже может быть довольно проблематично. В случаях любых изменений вам придется каждый раз вносить любые изменения вручную. Чтобы избавиться от всех этих проблем, легче использовать Псевдоним пункта меню.
Joomla 3.x. Как редактировать ссылки (алиасы)
Из этого туториала вы узнаете, как редактировать ссылки статей (алиасы) в Joomla 3.x.
Алиасы (Aliases) — это окончание ссылок в Joomla, в которых содержатся заголовки соответствующих элементов сайта (пунктов меню, статей и категорий).
Пожалуйста, обратите внимание, что алиасы могут состоять только из букв и тире.
Для редактирования Ссылки пункта меню (Алиаса), перейдите в панель управления Joomla > во вкладку Меню (Menus) > Главное меню (Main menu). Откройте необходимый пункт меню, и найдите поле Алиаса (Alias) рядом с Заголовком пункта меню (Menu Item title) или под ним.
Укажите новое окончание ссылки в поле Алиас (Alias) и воспользуйтесь кнопкой Сохранить (Save) или Сохранить и закрыть (Save & Close) для применения изменений.
Алиасы Категорий (Categories) можно изменить во вкладке Содержимое (Content) — Менеджер категорий (Category manager) в панели управления Joomla. Текст алиаса можно изменить в таком же поле Алиас (Alias).
Для изменения ссылки Статьи (Article) перейдите в раздел Содержимое (Content) — Менеджер статей (Article manager), откройте соответствующую статью и введите новую ссылку в поле Алиас (Alias).
Вы также можете воспользоваться детальным видео — туториалом:
Типы пунктов меню Joomla 3. «Системные ссылки» — «Разделитель». Поля «Заголовок меню» и «Алиас»
В предыдущей статье про Тип пунктов меню Joomla 3 «Системные ссылки» — «Разделитель» я упомянул, что лучше не использовать этот тип. В этой статье рассмотрим два основных поля при формировании пункта меню «Заголовок меню» и «Алиас» и я сразу наглядно покажу то, почему лучше не использовать тот тип пунктов меню на сайте Joomla, а подобрать и настроить какой-нибудь другой. Но сначала всё-таки о том, как сделать, а потом, почему так лучше не делать.
Поля «Заголовок меню» и «Алиас» пункта меню типа «Системные ссылки» — «Разделитель»
Те, кто не поленился и посмотрел по ссылке в самом начале, уже понимают, про что речь. Для тех, кто пока не смотрел, на картинке ниже показано место, где располагаются поля «Заголовок меню» и «Алиас»:
Они не случайно пронумерованы. Далее будет показано, как то или иное поле отображается на сайте или влияет на URL страницы сайта. Сразу отмечу важное:
Итак, для того чтобы задать (или поменять) значения этих полей, нужно с помощью клавиатуры ввести их значения в соответствующих полях ввода текста.
Где отображается значение поля «Заголовок меню» и как применяется значение поля «Алиас» или почему не нужно применять пункты меню типа «Системные ссылки» — «Разделитель» в Joomla
Теперь посмотрим, куда и как вставляются значения полей «Заголовок меню» и «Алиас» на сайте Joomla.
Само собой, они вставляются в меню, но так как это «Разделитель», то данный пункт меню не будет кликабельным. (Первый минус.)
А ещё, данный пункт меню попадает в хлебные крошки. И при этом нарушается навигация по сайту, так как данная «крошка» будет неактивна. (Второй минус.) Вот так выглядят хлебные крошки с этим пунктом меню (см. 1):
Как видно на картинке выше, в хлебных крошках возникает как бы пункт, но он не активен.
А теперь посмотрим на URL (см.2 на картинке выше). По хорошему, вся навигационная цепочка должна прокликиваться и пользователь должен иметь возможность с помощью URL также легко осуществлять навигацию по сайту, как и с помощью элементов страницы. Итак, в URL у нас есть то, что задано в поле «Алиас». И это как бы рубрика или раздел. Попробуем с помощью адресной строки браузера попасть в этот раздел:
. но не тут то было! Раздел в URL сайта существует, но по факту, его нет на сайте (в Joomla он не задан). Это третий минус использования пункта меню типа «Системные ссылки» — «Разделитель». И это может сказаться на SEO сайта (плохо расцениться поисковыми машинами и понизить сайт в поисковой выдаче).
Выводы
Таким образом, рассмотрев, как правильно заполнить поля «Заголовок меню» и «Алиас», я всё-таки призываю не использовать пункт меню типа «Системные ссылки» — «Разделитель» как минимум по трём причинам, указанных в этой статье.
Как решить проблему с Joomla: Создаю материал, присваиваю alias, при переходе в браузере на этот алиас — выдает ошибку?
Оценить 3 комментария
Вероятно кто-то нагуглит этот вопрос, поэтому решение friendly адресов для nginx кроется всего в нескольких location для nginx + php-fpm.
1) определяет пути для статики
3) непосредственно сам rewrite для джумлы
тогда при запросе «/about-us» nginx реврайтнит сие в «/index.php/about-us».
4) далее для корня сайта
Итого у нас работают и friendly ссылки и прямые ссылки на php файлы.
Если там не php-fpm, а apache за nginx, то 3й location не нужен, а реврайт можно обыграть в настройках proxy_pass в location /.
URL-адреса в Joomla. Как сделать для страницы желаемый адрес.
«Как привести в Joomla адрес страницы к желаемому виду?» – вопрос, казалось бы, очень простой, но судя по количеству запросов на форуме, это не так. Те люди, которые давно работают с Joomla и используют CMS во многих своих проектах, наверняка знают, как правильно настраивать SEF-url в Joomla. Новички же зачастую прибегают к помощи громоздких сторонних расширений, не догадываясь, что почти всё можно сделать стандартными инструментами Joomla. В этой статье я расскажу, как сделать для любой страницы сайта желаемый адрес, не прибегая к помощи сторонних расширений.
SEF-ссылки в Joomla.
Прежде всего, давайте разберемся, что же такое SEF-ссылки и для чего они вообще нужны. SEF – аббревиатура от «Search Engine Friendly», или «дружественные для поисковых систем». Википедия нам подсказывает:
Концепция SEF предполагает максимально лаконичные и интуитивно понятные адреса, которые показывают естественную для человека логическую структуру данных на сервере, а не её программный интерфейс с модулями и параметрами. Структуру обычно представляют в виде иерархии как в обычной файловой системе, к которой привык пользователь:
/articles/tags/summer/ — статьи по меткам, метка summer (лето).
/news/sport/2003/10/ — новости спорта, 2003 год, октябрь.
/catalogue/light/bulbs/GE/ — каталог товаров, отдел «Свет», лампочки, производитель GE.
/статьи/метки/лето/ — статьи по меткам, метка summer (лето).
/новости/спорт/2003/10/ — новости спорта, 2003 год, октябрь.
/каталог/свет/лампочки/GE/ — каталог товаров, отдел «Свет», лампочки, производитель GE.
Т.е. концепция SEF не только дает поисковым роботам больше информации о странице, но и помогает людям ориентироваться на сайте. Пренебрегать SEF-ссылками сегодня просто глупо. Основной вопрос в том, как все грамотно настроить при использовании CMS Joomla.
Активация SEF в Joomla.
Для того чтобы активировать функционал SEF в Joomla, необходимо выполнить несколько простых шагов:
После этого сохраняем настройки и идем на главную страницу сайта. SEF-ссылки активированы.
Настройка вида SEF-ссылок в Joomla. Общие принципы.
Теперь, наконец, перейдем к самому интересному. Одной активации SEF в Joomla зачастую бывает недостаточно. Всё зависит от того, URL какого вида вы хотите получить.
Есть несколько видов SEF URL, обычно используемых на сайте:
Каждый из представленных видов хорошо подходит в том или ином случае. Использование ID в URL оправданно тем, что при таком подходе вы можете не беспокоиться о том, что две статьи с одинаковым названием (псевдонимом) будут иметь одинаковые URL, т.к. ID для каждой статьи строго уникален.
Я обычно использую конструкцию:
http://site.ru/article.html
для основных страниц меню сайта, таких как «О нас», «Контакты» и т.д. и конструкцию:
http://site.ru/category/article.html
для остальных материалов сайта. Во втором случае приходится самостоятельно следить, чтобы псевдонимы заголовков были уникальны.
Настройка вида SEF-ссылок в Joomla. Псевдонимы.
Настройка вида SEF-ссылок в Joomla. URL типа http://site.ru/article.html
Теперь перейдем непосредственно к созданию ссылок разных типов. Первым типом будет наиболее простой и удобный:
http://site.ru/article.html
Для создания такой ссылки недостаточно просто создать материал. В Joomla все материалы в обязательном порядке должны иметь категорию. Если категория не указана, то материал будет помещен в категорию uncategorized. В таком случае по умолчанию ссылка будет иметь вид:
http://site.ru/2-uncategorised/2-article.html
где 2 и 2 – ID категории и материала соответственно.
Для того чтобы придать URL красивый вид, необходимо создать пункт меню типа «Материал», выбрать необходимый материал из списка и указать для пункта меню псевдоним «article». После этого URL примет тот самый вид, что описан в начале.
Настройка вида SEF-ссылок в Joomla. URL типа http://site.ru/category/id-article.html
URL материалов категории лучше представлять в виде:
http://site.ru/category/id-article.html
По умолчанию, URL будут иметь вид:
http://site.ru/id-category/id-article.html.Обычно категорий на сайте не так много и можно не волноваться о том, что их названия могут повториться. Поэтому имеет смысл избавиться от ID категории в URL. Для этого, опять же, создаем пункт меню типа «Блог категории» и выбираем из списка нужную категорию. URL’ы всех материалов категории будут преобразованы к виду
http://site.ru/menualias/id-article.html
menualias – это псевдоним пункта меню, который был создан.
Кроме очевидной выгоды для URL создание пункта меню блога категории имеет и другие плюсы. Так для всех материалов категории при переходе в любой из них будет активироваться соответствующий пункт меню на сайте (если это предусмотрено шаблоном). Также для всех материалов категории можно выбрать уникальное отображение модулей, т.к. модули привязываются к пунктам меню и, привязанные к созданному пункту, будут отображаться/скрываться для всех материалов данной категории.
Настройка вида SEF-ссылок в Joomla. А как же создать URL вида http://site.ru/category/article.html
Вопрос в том, как создать URL, содержащий только псевдонимы, но не ID. Интересно, но это, как оказывается, достаточно сложная задача. Если кратко, то нужно переопределять файл router.php в шаблон Joomla и вносить в него исправления. На просторах Интернета по этому вопросу есть несколько подробных инструкций. Но не думаю, что стоит с этим связываться. URL-адреса – это такая вещь, настроить которую можно только при создании сайта. Если что-то изменять во время его работы, это может привести к печальным последствиям вплоть до временного выпадения из индекса поисковых систем большей части страниц. Неизвестно, что будет с таким файлом при обновлении версии Joomla, например, с выходом Joomla 3.2. Я считаю, что лучше не рисковать и оставить ID в URL материала.
Еще одним выходом будет являться установка стороннего SEF-компонента, например, SH404SEF.
Настройка вида SEF-ссылок в Joomla. Скрытое меню.
Еще один частый вопрос: что делать, если нужно только создать правильный URL, но не показывать пункт меню на сайте? В этом случае все просто. Нужно создать в менеджере меню скрытое меню. «Скрытое» – это просто такое название для удобства. На самом деле оно ничем не отличается от обычного меню. Разница лишь в том, что обычное меню вы показываете на сайте через модуль Joomla. Для скрытого меню просто не публикуйте этот модуль и его никто не увидит. Оно будет использоваться только для служебных целей, а именно создания правильных URL и привязки модулей к определенным страницам сайта.
Настройка вида SEF-ссылок в Joomla. Сторонние компоненты.
Всё, что было описано выше, относится только к основным расширениям Joomla, которые предустановленны сразу с CMS. Для сторонних компонентов SEF делают разработчики этих компонентов. Весь код, относящийся к формированию ссылок, находится в папке с компонентом, в файле router.php. Этот файл можно переопределить в шаблон Joomla и доработать под себя. Хотя потребуются приличные знания PHP. Иначе, либо искать готовый переделанный router, либо использовать то, что есть.
Вот так обстоят дела в SEF URL в Joomla. Надеюсь, для кого-то процесс формирования таких ссылок стал понятнее, и теперь создать красивые читаемые URL для страниц своего сайта будет проще.
















