В стандартной CMS Joomla 1.5 невозможно прописать мета тэги (meta tags) keywords и description при выводе блога раздела (section) или категории (category).
В блогах и форумах рекомендуют устанавливать специальные компоненты (например ArtioJoomSef) или плагины (например MetaTags). Однако, можно решить эту задачу, используя один небольшой хак, о котором будет идти речь ниже.
В результате этого простого хака получаем:
- В настройках пункта меню блога раздела или категории появится возможность указать мета тэги description и keywords
- Прописанные в настройках меню тэги будут выводиться на страницах сайта.
Итак, начнем...
Meta tags keywords and description for sections of Joomla 1.5 (Мета тэги keywords и description блога раздела Joomla 1.5)
1. В первую очередь делаем бэкап нашего сайта;
2. Все сделанные изменения необходимо фиксировать, т.к. при обновлении Joomla все изменения будут затерты;
3. Редактируем файл /components/com_content/views/section/tmpl/blog.xml
Между строками:
</param> <advanced>
Добавляем строки:
<param name="description" type="textarea" rows="5" cols="30" default="" label="Description" description="METADESC" /> <param name="keywords" type="textarea" rows="5" cols="30" default="" label="Keywords" description="METAKEYS" />
4. Редактируем файл /components/com_content/views/section/view.html.php
После строк:
if (!$menu_params->get( 'page_title')) { $params->set('page_title', $section->title); }
Добавляем строки:
if ($menu_params->get( 'description')) { $document->setMetadata('description', $menu_params->get( 'description')); } if ($menu_params->get( 'keywords')) { $document->setMetadata('keywords', $menu_params->get( 'keywords')); }
5. Сохраняем на хосте оба файла и тестируем.
Meta tags keywords and description for categories of Joomla 1.5 (Мета тэги keywords и description блога категории Joomla 1.5)
1. В первую очередь делаем бэкап нашего сайта;
2. Все сделанные изменения необходимо фиксировать, т.к. при обновлении Joomla все изменения будут затерты;
3. Редактируем файл /components/com_content/views/category/tmpl/blog.xml
Между строками:
</param> <advanced>
Добавляем строки:
<param name="description" type="textarea" rows="5" cols="30" default="" label="Description" description="METADESC" /> <param name="keywords" type="textarea" rows="5" cols="30" default="" label="Keywords" description="METAKEYS" />
4. Редактируем файл /components/com_content/views/category/view.html.php
После строк:
$menus = &JSite::getMenu(); $menu = $menus->getActive();
Добавляем строки:
$menu_params = new JParameter( $menu->params ); if ($menu_params->get( 'description')) { $document->setMetadata('description', $menu_params->get( 'description')); } if ($menu_params->get( 'keywords')) { $document->setMetadata('keywords', $menu_params->get( 'keywords')); }
5. Сохраняем на хосте оба файла и тестируем.
Данную статью можно прокомментировать или обсудить в комментариях.
Создание и разработка web-сайта/a> |
Оставляем свои комментарии
Рулит! Долго искал, где тестировать, нашел эти поля в меню.
Реальное решение!
Приветствую,
все сделал как написано, окошко появились,
но ни ключи ни описания не появились
в метатегах страницы
Джумла Версия 1.5.14
Все работает как надо. Это sh404SEF блокировал пока ключей и описаний.
Спасибо з ахак
Всегда пожалуйста :)
Будут вопросы пишите
У меня та же самая проблема, окошко появилось но ни ключей ни описания нету помогите понять в чем проблема. сделал все как надо перепроверил много раз. и что за sh404SEF у меня такое не установлено
Сделал, работает :) автору спасибо!
А как на счет категории, не блога категории. Там увы новые формы для ключей и описания не появляются?
Спасибо большое, работает! Но действительно интересует вопрос, как и Ивана: как изменить описание для категорий и разделов?
Обратите внимание на пункт 3.
Для решения этого вопроса необходимо сделать такие же изменения, но в файле default.xml
Про default.xml я додумалась тоже, также вставляла п.3, но видимо, что-то намутила до этого, и у меня не получилось. (Я пыталась это все сделать так, чтобы при обновлении Joomla! изменения не затирались...)
Сделала сейчас как Вы написали - все получилось и работает! Спасибо большое, а то уже думала MetaTags устанавливать.
Еще раз спасибочки! :-) :-) :-)
Спасибо автору, удобная вещь! ;-)
От себя хочу добавить, что также можно включить и для "Контактов" в Joomla 1.5.
Единственное,
а) в "components/com_contact/views/contact/tmpl/default.xml" из пункта 3 вставляем между тегами и ;
б) в "components/com_contact/views/contact/view.html.php" из пункта 4 вставляем после "if (!$menu_params->get( 'page_title')) { $pparams->set('page_title', $contact->name); }"
:-)
ага, теги вырезались :lol:
а) между тегами param и params
Спасибо за хак - но может быть Meta Tags, лучше. Пожалуйста подскажите начинающему - в чем разница.
Здраствуйте, уважаемый автор! Спасибо за хорошую статью.
Я не сильна в програмировании, но сделать все по вашим предписаниям могу. Помогите понять каких настроек мне еще не хватает.
Проблема такая: при проверки сайта на описания блогов категорий в теге дублируется тег , хотя все получилось и даже при прочтении исходного кода html-страницы блога категории я вижу именно то описание, которое задала для тега .
И еще, сдесь упоминалось, про какую-то блокировку sh404SEF. Не могу понять, что это такое и как работает.
Прошу помощи. Спасибо.
Исправление: (В теге description дублируется тег title.)
Ответ найден. В поле description нужно кодировать символы типа "
При появлении такого некодированного символа Джумла автоматически берет описание из заглавия.
Всем удачи!
Столько раз все проверила но все равно выдает ошибку
Fatal error: Call to a member function get() on a non-object in /home/*****/public_html/components/com_content/views/category/view.html.php on line 43
Здравствуйте, проделал всё как описано, теги прописываются, но теперь на этой странице при нажатие на любую ссылку перенаправляет на: site.ru/component/content/section/50. Подскажите в чём может быть проблема?
Проблема решилась, просто были изменены файлы в com_content к изначальным
А как быть при переносе сайта на версию 1.7 или 2.5? Где в базе хранятся данные этого хака?
Будут ли предложены способы реализовать возможности хака на последующих версиях? (если это необходимо)
Добрый день! Я пытаюсь настроить Meta tags keywords и description в установленном компоненте на joomla 1,5. Все получилось, эти окошечки появились, написанное в них сохраняться, но если смотреть исходный код страницы, то там то что указано на главной странице, т.е они там не появляются. Не подскажите что можно сделать или в чем может быть причина? Я бы выслал код, но не знаю как его сюда вставить :oops:
Спасибо большое, все четко и грамотно расписано. По возможности(время) буду читать Ваш сайт!