Популярные материалы этого сайта:
sh404SEF
посмотреть
0+
HD Web Player
посмотреть
0+
Jcomments
посмотреть
0+
AllVideos Reloaded
посмотреть
0+
JCE редактор
посмотреть
0+
RubberDoc
посмотреть
0+
phpBB
посмотреть
0+
jDownloads
посмотреть
0+
0+ Материал без явных возрастных ограничений

Наверняка, когда ты создаешь сайт, ты просматриваешь его исходный код. Одним из главных недостатков Joomla 3 является то, что она еще с версии 1.7 пишет в исходном коде страницы Joomla – Open source content management, чем уже доставляет много хлопот web-мастерам.

Загрузка...

Делать полный обзор всех тех SEO и программных изменений, которые я сделал в Joomla 3 мне лень. Поделюсь хотя бы частью.

Например, мы можем найти безполезный тег rel="canonical", который ровным счетом делает только хуже. Поисковые системы не настолько глупые, чтобы не понимать какая именно страница является канонической и на сегодняшний день делают присвоение «каноническая страница» именно той, которая наиболее им нравится.

Например, у тебя есть сайт с 500 статьями. Некоторые из них могут иметь разные URL, например, http://site.org/staya-1 и http://site.org/statya-1?option-tra-la-la

Некоторым «мега»-SEO оптимизаторам истерически хочется, чтобы данные ссылки распознавались роботами Яндекса, Гугла и других поисковых систем, как разные. Но эти времена уже прошли. ПС (поисковые системы) с каждым днем или неделей становятся умнее, их разработчики добавляют все больше алгоритмов, а вместе с тем и НУЖНО менять структуру сайта (или не менять, в зависимости от оптимизации сайта).

Вот и разработчики Joomla, вместо того, чтобы заняться оптимизацией кода, добавлением функций безопасности в стандартной сборке (это они делают, но слабо), решают УЛУЧШИТЬ свою любимую CMS, на которой сегодня создано много миллионов сайтов. Однако, не всегда шаги разработчиков являются обоснованными, порой они гонятся за «наворотами», в ущерб нам с тобой. Что я имею ввиду? Например, файл template.css, который в стандартном шаблоне «побогател» настолько, что просто нет слов для описания. Его тысячи ненужных никому строк постоянно будут лишней обузой для твоих посетителей, лишней нагрузкой для серверов. Но это еще не все. Они решили свести меня с ума и добавили столько JS файлов на страницу, что становится вопрос о адекватности этих самых разработчиков. Такое впечатление, что Google Search живет отдельной страной от всех остальных, кто создает в его резиденции различные программные компоненты.

Продолжу тем, что в стандартной версии сборки в стандартном шаблоне protostar, а также при выводе материала при использовании стандартных средств (блог категории - материал) допущены SEO-ошибки. Например, вообще отсутствует тег H1, который поисковики считают главным. Хотя, это можно пропустить, учитывая, что есть хотя бы тег H2 и по аналогии с rel="canonical", ПС используют его, как H1, подстраивая свои алгоритмы под каждый отдельный сайт. Но и это еще не все. Честно, мне уже не вспомнить сколько всего я переделал, когда строил новый сайт на J3, но поверь мне, дело было долгим. Например, я поубирал: индекс печатной версии статьи, opensearch, много строк из css файлов, переделал страницу ошибки 404 (там был плохой перевод и странные возможные варианты решения проблем для пользователя) и т.п.

Итак, преступим к rel="canonical"

Все началось с того, что я поставил J3 и посмотрел исходный код, кроме стандартного Open suorce... я обнаружил этот самых rel... и посмотрел как он работает. Дело все в том, что почему-то разработчики сделали (как-будто специально) многие ошибки и «нагрузили» J3 так, чтобы потом пришлось изрядно постараться над своей сборкой. Так вот, если ввести URL http://site.org/300 , где 300 – это ID материала, то rel="canonical" выдавал запрошенную ссылку вместо реальной ссылки на материал, которую можно посмотреть в блоге категории. Например, она должна быть такой: http://site.org/video/300-videoklip-loya . Однако, этот самый каноникал не хотел правильно работать. Я его переделал. Для начала убрал его вызов в файле:

../plugins/system/sef/sef.php

закомментировал строку:

//$doc->addHeadLink(htmlspecialchars($link), 'canonical');

После чего, произвел некоторые манипуляции с выводом данных из БД. Условие: стандартная J3, вывод стандартного материала (т.е. ни K2, ни ZOO, просто Joomla и её файлы в components/com_content/views/article/tmpl)
Нужно найти файл

../components/com_content/views/article/tmpl/default.php

и в любое его место (желательно почти вверху, после $user = JFactory::getUser(); $info = $params->get('info_block_position', 0);) вставить код:

//достаем ID материала, который запросили
$id_content = JRequest::getInt('id', 0);

//достаем псевдоним ссылки (alias) материала
$db = JFactory::getDBO();
$query = 'SELECT alias,catid FROM #__content WHERE state=1 AND id = "'.$id_content.'"';
$db->setQuery($query);
$rows = $db->loadObjectList();

foreach ( $rows as $row )
{
$cont_alias = $row->alias;
$cont_catid = $row->catid;
}

//достаем alias категории
$query2 = 'SELECT path FROM #__menu WHERE catid_my = "'.$cont_catid.'"';
$db->setQuery($query2);
$rows2 = $db->loadObjectList();

foreach ( $rows2 as $row2 )
{
$cont_path = $row2->path;
}

//подставляем для своего сайта. можно, конечно, сделать универсальный код и вместо домена подставлять, например, JUri::base(), но зачем лишний раз нагружать PHP в статике?
$href = "http://site.org/".$cont_path."/".$id_content."-".$cont_alias;
//можно проверить вывод link в шапке так: echo $doc->addHeadLink("123");
$doc =& JFactory::getDocument();
//собственно выводим результат:
$doc->addHeadLink( $href, 'canonical', 'rel');

Внимание catid_my - это вручную созданная в структуре таблицы _menu, которой присвоены ID категорий. Логика: каждому меню присваиваю соответствующее ID категории. Например, у нас есть категория Яблоки с ID 26, я иду в базу данных, создаю новую ячейку в ПРЕФИКС_menu, после чего вручную прописываю ID категорий в соответствующее название пункта меню Яблоки, которое собственно и выводит эту категорию на сайте. Иначе я не знаю как сделать, но сделать стоит это всего 1 раз, даже если у тебя много категорий.

Теперь как бы мы не запрашивали URL http://site.org/300 или http://site.org/video/300-videoklip-loya, всегда будет выводится тот URL, который должен, а именно – http://site.org/video/300-videoklip-loya в rel="canonical"

Но на этом, удивительные приключения в коде Joomla не заканчиваются Оо ;-)

В данной ситуации мы присваиваем канонические ссылки только для материалов, а для категорий их не будет. Возможно, стоит сделать тоже самое только в файле ../plugins/system/sef/sef.php


Поделитесь в социльных сетях:

Информация:

Категория:
Web
Создан:
Просмотров:
1497


Метки:

joomla

Случайный материал: Еще

Охотники за сенсациями. Технологии древних Богов
Подробнее
0+

Охотники за сенсациями – серии документальных фильмов, которые рассказывают о различных сенсационных открытиях. В серии «Технологии древних Богов» Вы узнаете о невероятных фактах, которые стали известны совсем недавно...


Последние 5 материалов:

Раскрыть все
Тайны русского алфавита
0+
Тайны русского алфавита
Подробнее

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

Тайфун-ВДВ
0+
Тайфун-ВДВ
Подробнее

Тайфун-ВДВ – новейший армейский бронеавтомобиль России. В серии «Военная приемка» Вы узнаете всю правду об этом автомобиле. Его будут испытывать в настоящих боевых условиях.

XviD4PSP
0+
XviD4PSP
Подробнее

XviD4PSP – программа конвертер для Виндовс 7, 8, 10, которая способна существенно уменьшить размер видео файла, почти без потери качества.

Open Server
0+
Open Server
Подробнее

Open Server – свободно распространяемое программное обеспечение, которое позволит Вам создавать и изменять сайты на своем компьютере, используя операционную систему Windows.

NetBeans
0+
NetBeans
Подробнее

NetBeans – программа для разработчиков программного обеспечения. Среда разработки IDE, которая позволяет создавать полноценные приложения на различных языках программирования включая: PHP, Java, HTML5/JavaScript, C, C++


Следите за обновлениями VK:

Добавить комментарий

Комментариев пока нет
Лучший хостинг
от 7.34$/365 дней
div вместо p Joomla
Подробнее
0+
admitad.com отзыв
Подробнее
0+
Proftpd настройка
Подробнее
0+
HDW Player
Подробнее
0+
Как сохранить изображения с facebook
Подробнее
0+
PHPmyAdmin
Подробнее
0+
K2 для Joomla
Подробнее
0+
MarketGid отзыв
Подробнее
0+
Безопасность сайта
Подробнее
0+
CoalaWeb Traffic
Подробнее
0+
Mozilla Firefox
Подробнее
0+
Opera
Подробнее
0+
Яндекс браузер
Подробнее
0+
XviD4PSP
Подробнее
0+
Eset NOD32
Подробнее
0+
Tor Browser
Подробнее
0+
FileZilla
Подробнее
0+
CCleaner
Подробнее
0+
Notepad++
Подробнее
0+
Google Chrome
Подробнее
0+