Например, необходимо получить следующую запись:
<meta name="keywords" content="{keywords}">
В файле template.php создаем функцию preprocess_page($page):
function ВАША_ТЕМА_preprocess_page($page) {
$meta_keywords = array(
'#tag' => 'meta',
'#attributes' => array(
'name' => 'keywords',
'content' => '{keywords}',
),
);
drupal_add_html_head($meta_keywords, 'meta_keywords');
}
В 7 версии Друпала по умолчанию подставляется:
<meta name="Generator" content="Drupal 7 (htt p: //drupal . org)" >
Один из способов от "этого" избавиться: в файле template.php создать функцию:
function ВАША_ТЕМА_html_head_alter(&$head_elements) {
unset($head_elements['system_meta_generator']);
}
function ИМЯ_МОДУЛЯ_html_head_alter(&$head_elements) {
$items = array(
'news' => array(
'link' => 'news.rss',
'title' => 'Новости на сайте sitename',
),
'articles' => array(
'link' => 'articles.rss',
'title' => 'Новые статьи на сайте sitename',
),
'blogs' => array(
'link' => 'blogs.rss',
'title' => 'Блоги на сайте sitename',
),
'events' => array(
'link' => 'events.rss',
'title' => 'Афиша на сайте sitename',
),
);
foreach ($items as $name => $rss) {
$head_elements['ij_main_rss_' . $name] = array(
'#type' => 'html_tag',
'#tag' => 'link',
'#attributes' => array(
'rel' => 'alternate',
'type' => 'application/rss+xml',
'title' => $rss['title'],
'href' => url($rss['link'], array('absolute' => TRUE)),
),
);
}
}
}
Результат:
<link rel="alternate" type="application/rss+xml" title="Афиша на сайте sitename" href="http //sitename.ru/events.rss" />
<link rel="alternate" type="application/rss+xml" title="Блоги на сайте sitename" href="http //sitename.ru/blogs.rss" />
<link rel="alternate" type="application/rss+xml" title="Новости на сайте sitename" href="http //sitename.ru/news.rss" />
<link rel="alternate" type="application/rss+xml" title="Новые статьи на сайте sitename" href="http //sitename.ru/articles.rss" />
- 10.05.2012
- 100 просмотров
Напишите Ваш код, который Вы добавили в template.php. Так сложно что то сказать.
Я просто для теста поставила свою тему не меняя пока 'name' и 'content'
function theme677_preprocess_page($page) {
$meta_keywords = array( '#tag' => 'meta', '#attributes' => array( 'name' => 'keywords', 'content' => '{keywords}', ), ); drupal_add_html_head($meta_keywords, 'meta_keywords'); }
function theme677_html_head_alter(&$head_elements) { unset($head_elements['system_meta_generator']); }
Проверьте, может в template.php уже есть функции theme677_html_head_alter или theme677_preprocess_page
Все сделала так как написано в этой статье, но к сожалению сайт вообще перестает отображаться, может я упустила помимо кода какие-нибудь важные нюансы...?