--------------------------------------------------
Название: Advanced Meta Tags v3.0
Автор: Highway of Life, Drugs
Адаптировал под TP R775: Demetri
Адаптировал под TP II: Gemini_13
Версия движка: R478
Описание: Мод генерирует мета-теги ключевых слов (keywords) и описания (description).
Настройка: Админка -> Модификации -> Конфигурация
Cложность установки: Легкая
Время, необходимое для установки: ~ 5 минут
--------------------------------------------------
Запрос в БД:
INSERT INTO bb_config VALUES ('use_dynamic_description', 1);
INSERT INTO bb_config VALUES ('use_dynamic_keywords', 1);
INSERT INTO bb_config VALUES ('global_description', 'ваше глобальное мета-описание');
INSERT INTO bb_config VALUES ('global_keywords', 'подставьте, сюда, свои, ключевые, слова');
INSERT INTO bb_config VALUES ('append_global_description', 1);
INSERT INTO bb_config VALUES ('append_global_keywords', 1);
INSERT INTO bb_config VALUES ('append_keywords_first', 0);
INSERT INTO bb_config VALUES ('description_word_count', 150);
INSERT INTO bb_config VALUES ('keyword_word_count', 50);
Открыть admin/admin_board.php
Найти:
'BIRTHDAY_CHECK_DAY' => $new['birthday_check_day'],
'PREMOD' => $new['premod'],
Вставить после:
// Advanced Meta Tags
'USE_DYNAMIC_DESCRIPTION' => $new['use_dynamic_description'],
'USE_DYNAMIC_KEYWORDS' => $new['use_dynamic_keywords'],
'GLOBAL_DESCRIPTION' => $new['global_description'],
'GLOBAL_KEYWORDS' => $new['global_keywords'],
'APPEND_GLOBAL_DESCRIPTION' => $new['append_global_description'],
'APPEND_GLOBAL_KEYWORDS' => $new['append_global_keywords'],
'APPEND_KEYWORDS_FIRST' => $new['append_keywords_first'],
'DESCRIPTION_WORD_COUNT' => $new['description_word_count'],
'KEYWORD_WORD_COUNT' => $new['keyword_word_count'],
// Advanced Meta Tags [END]
Открыть language/lang_russian/lang_admin.php
В конец вставить:
// Advanced Meta Tags
$lang['META_TAGS_MOD'] = 'Генератор мета-тегов';
$lang['USE_DYNAMIC_DESCRIPTION'] = 'Включить генерацию мета-описания';
$lang['USE_DYNAMIC_KEYWORDS'] = 'Включить генерацию ключевых слов';
$lang['GLOBAL_DESCRIPTION'] = 'Глобальное мета-описание';
$lang['GLOBAL_KEYWORDS'] = 'Глобальные ключевые слова';
$lang['APPEND_GLOBAL_DESCRIPTION'] = 'Добавлять глобальное мета-описание';
$lang['APPEND_GLOBAL_DESCRIPTION_EXPLAIN'] = 'Добалять глобальное мета-описание к сгенерироанному описанию.';
$lang['APPEND_GLOBAL_KEYWORDS'] = 'Добавлять глобальные ключевые слова';
$lang['APPEND_GLOBAL_KEYWORDS_EXPLAIN'] = 'Добалять глобальные ключевые слова к сгенерироанным ключевым словам.';
$lang['APPEND_KEYWORDS_FIRST'] = 'Позиция размещения глобальных ключевых слов';
$lang['APPEND_KEYWORDS_FIRST_EXPLAIN'] = '"Да" для размещения перед сгенерированными ключевыми словами,
"Нет" для размещения после сгенерированных ключевых слов.';
$lang['DESCRIPTION_WORD_COUNT'] = 'Количество ключевых слов в мета-описании';
$lang['KEYWORD_WORD_COUNT'] = 'Количество ключевых слов';
Открыть templates/admin/admin_board.tpl
Найти:
Вставить до:
| {L_META_TAGS_MOD} |
{L_USE_DYNAMIC_DESCRIPTION} |
|
{L_USE_DYNAMIC_KEYWORDS} |
|
{L_GLOBAL_DESCRIPTION} |
|
{L_GLOBAL_KEYWORDS} |
|
{L_APPEND_GLOBAL_DESCRIPTION}{L_APPEND_GLOBAL_DESCRIPTION_EXPLAIN} |
|
{L_APPEND_GLOBAL_KEYWORDS}{L_APPEND_GLOBAL_KEYWORDS_EXPLAIN} |
|
{L_APPEND_KEYWORDS_FIRST}{L_APPEND_KEYWORDS_FIRST_EXPLAIN} |
|
{L_DESCRIPTION_WORD_COUNT} |
|
{L_KEYWORD_WORD_COUNT} |
|
Открыть templates/default/page_header.tpl
Найти:
Вставить по Вашему желанию приблизительную конструкцию:
Открыть viewtopic.php
Найти:
//
// Okay, let's do the loop, yeah come on baby let's do the loop
// and it goes like this ...
//
for($i = 0; $i < $total_posts; $i++)
Вставить перед:
// Advanced Meta Tags
$first_post_text = '';
// Advanced Meta Tags [END]
Найти:
$message = get_parsed_post($postrow[$i]);
Вставить после:
// Advanced Meta Tags
if ($i == 0)
{
$first_post_text = $message;
$post_text = $first_post_text;
if (!empty($post_text))
{
$post_text = mb_strtolower(strip_tags($post_text),"UTF-8");
$post_text = preg_split("/[\s,.-:]+/", $post_text);
if ($bb_cfg['use_dynamic_keywords'])
{
$count = 0;
$rnd_keywords = array();
foreach ($post_text as $word)
{
$word = str_replace("'", '', $word);
if (strlen($word) > 2)
{
if (!empty($rnd_keywords) && in_array($word, $rnd_keywords)) continue;
$rnd_keywords[] = $word;
$count++;
}
if ($count == $bb_cfg['keyword_word_count']) break;
}
$rnd_keywords = implode(', ', $rnd_keywords);
if ($bb_cfg['append_keywords_first']) $rnd_keywords = ', ' . $rnd_keywords;
else $rnd_keywords = $rnd_keywords . ', ';
}
if ($bb_cfg['use_dynamic_description'])
{
$count = 0;
$rnd_description = '';
foreach ($post_text as $word)
{
$rnd_description .= $word . ' ';
$count++;
if ($count == $bb_cfg['description_word_count']) break;
}
}
}
$template->assign_vars(array(
'RND_DESCRIPTION' => (preg_match('/viewtopic\.php/', $_SERVER['SCRIPT_NAME']) && $bb_cfg['use_dynamic_description']) ? $rnd_description : '',
'RND_KEYWORDS' => (preg_match('/viewtopic\.php/', $_SERVER['SCRIPT_NAME']) && $bb_cfg['use_dynamic_keywords']) ? $rnd_keywords : '',
));
}
// Advanced Meta Tags [END]
page_header.php
Найти:
// FOR SEO
$template->assign_vars(array(
Перед вставить:
// Advanced Meta Tags
$viewtopic_page = (preg_match('/viewtopic\.php/', $_SERVER['SCRIPT_NAME'])) ? true : false;
if ($bb_cfg['append_global_description'] || $bb_cfg['use_dynamic_description'])
{
$global_description = ($bb_cfg['append_global_description']) ? $bb_cfg['global_description'] : '';
$template->assign_vars(array(
'PAGE_DESCRIPTION' => $global_description,
'PAGE_DESCRIPTION_ON' => ($global_description == '' && !$viewtopic_page) ? false : true,
));
}
if ($bb_cfg['append_global_keywords'] || $bb_cfg['use_dynamic_keywords'])
{
$global_keywords = ($bb_cfg['append_global_keywords']) ? $bb_cfg['global_keywords'] : '';
$template->assign_vars(array(
'PAGE_KEYWORDS' => $global_keywords,
'PAGE_KEYWORDS_ON' => ($global_keywords == '' && !$viewtopic_page) ? false : true,
));
}
// Advanced Meta Tags [END]
Найти:
'U_SEARCH_SELF_BY_LAST' => "search.php?uid={$userdata['user_id']}&o=5",
После вставить:
'VIEWTOPIC_PAGE' => (!$viewtopic_page ) ? true : false,