Advanced Meta Tags

Advanced Meta Tags 1.1.0

Нет прав для скачивания
Совместимость
требуется адаптация
Изменения в БД
требуются
Автор
Gemini_13
Общественное достояние
нет
Описание: генерирует мета-теги ключевых слов (keywords) и описания (description). Настройка производится в разделе: Админка -> Модификации -> Конфигурация.
Инструкция по установке
PHP:
# ---- [ SQL ] -------------------

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);

# ---- [ Открыть ] -------------------

viewtopic.php

# ---- [ Найти ] -------------------

for($i = 0; $i < $total_posts; $i++)

# ---- [ Вставить до ] -------------------

$first_post_text = '';

# ---- [ Найти ] -------------------

$message = get_parsed_post($postrow[$i]);

# ---- [ Вставить после ] -------------------

    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 : '',
        ));
    }

# ---- [ Открыть ] -------------------

admin/admin_board.php

# ---- [ Найти ] -------------------

            'SEED_BONUS_USER_REGDATE' => $new['seed_bonus_user_regdate'],

# ---- [ Вставить после ] -------------------

            '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'],

# ---- [ Открыть ] -------------------

includes/page_header.php

# ---- [ Найти ] -------------------

// FOR SEO
$template->assign_vars(array(

# ---- [ Вставить до ] -------------------

$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,
    ));
}

# ---- [ Найти ] -------------------

    'U_MY_DRAFTS'              => "profile.php?mode=viewdraft&u={$userdata['user_id']}",

# ---- [ Вставить после ] -------------------

    'VIEWTOPIC_PAGE'            => (!$viewtopic_page ) ? true : false,

# ---- [ Открыть ] -------------------

language/lang_russian/lang_admin.php

# ---- [ Вставить в конец ] -------------------

// 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'] = '"Да" для размещения перед сгенерированными ключевыми словами,<br />"Нет" для размещения после сгенерированных ключевых слов.';
$lang['DESCRIPTION_WORD_COUNT'] = 'Количество ключевых слов в мета-описании';
$lang['KEYWORD_WORD_COUNT'] = 'Количество ключевых слов';

# ---- [ Открыть ] -------------------

templates/admin/admin_board.tpl

# ---- [ Найти ] -------------------

<!-- ENDIF / CONFIG_MODS -->

# ---- [ Вставить до ] -------------------

<tr class="row3 med">
    <td class="bold tCenter" colspan="2">{L_META_TAGS_MOD}</td>
</tr>

<tr>
    <td><h4>{L_USE_DYNAMIC_DESCRIPTION}</h4></td>
    <td>
        <label><input type="radio" name="use_dynamic_description" value="1" <!-- IF USE_DYNAMIC_DESCRIPTION -->checked="checked"<!-- ENDIF --> />{L_ENABLED}</label>&nbsp;&nbsp;
        <label><input type="radio" name="use_dynamic_description" value="0" <!-- IF not USE_DYNAMIC_DESCRIPTION -->checked="checked"<!-- ENDIF --> />{L_DISABLED}</label>
    </td>
</tr>
<tr>
    <td><h4>{L_USE_DYNAMIC_KEYWORDS}</h4></td>
    <td>
        <label><input type="radio" name="use_dynamic_keywords" value="1" <!-- IF USE_DYNAMIC_KEYWORDS -->checked="checked"<!-- ENDIF --> />{L_ENABLED}</label>&nbsp;&nbsp;
        <label><input type="radio" name="use_dynamic_keywords" value="0" <!-- IF not USE_DYNAMIC_KEYWORDS -->checked="checked"<!-- ENDIF --> />{L_DISABLED}</label>
    </td>
</tr>
<tr>
    <td><h4>{L_GLOBAL_DESCRIPTION}</h4></td>
    <td><input class="post" type="text" size="40" maxlength="255" name="global_description" value="{GLOBAL_DESCRIPTION}" /></td>
</tr>
<tr>
    <td><h4>{L_GLOBAL_KEYWORDS}</h4></td>
    <td><input class="post" type="text" size="40" maxlength="255" name="global_keywords" value="{GLOBAL_KEYWORDS}" /></td>
</tr>
<tr>
    <td><h4>{L_APPEND_GLOBAL_DESCRIPTION}</h4><h6>{L_APPEND_GLOBAL_DESCRIPTION_EXPLAIN}</h6></td>
    <td>
        <label><input type="radio" name="append_global_description" value="1" <!-- IF APPEND_GLOBAL_DESCRIPTION -->checked="checked"<!-- ENDIF --> />{L_ENABLED}</label>&nbsp;&nbsp;
        <label><input type="radio" name="append_global_description" value="0" <!-- IF not APPEND_GLOBAL_DESCRIPTION -->checked="checked"<!-- ENDIF --> />{L_DISABLED}</label>
    </td>
</tr>
<tr>
    <td><h4>{L_APPEND_GLOBAL_KEYWORDS}</h4><h6>{L_APPEND_GLOBAL_KEYWORDS_EXPLAIN}</h6></td>
    <td>
        <label><input type="radio" name="append_global_keywords" value="1" <!-- IF APPEND_GLOBAL_KEYWORDS -->checked="checked"<!-- ENDIF --> />{L_ENABLED}</label>&nbsp;&nbsp;
        <label><input type="radio" name="append_global_keywords" value="0" <!-- IF not APPEND_GLOBAL_KEYWORDS -->checked="checked"<!-- ENDIF --> />{L_DISABLED}</label>
    </td>
</tr>
<tr>
    <td><h4>{L_APPEND_KEYWORDS_FIRST}</h4><h6>{L_APPEND_KEYWORDS_FIRST_EXPLAIN}</h6></td>
    <td>
        <label><input type="radio" name="append_keywords_first" value="1" <!-- IF APPEND_KEYWORDS_FIRST -->checked="checked"<!-- ENDIF --> />{L_ENABLED}</label>&nbsp;&nbsp;
        <label><input type="radio" name="append_keywords_first" value="0" <!-- IF not APPEND_KEYWORDS_FIRST -->checked="checked"<!-- ENDIF --> />{L_DISABLED}</label>
    </td>
</tr>
<tr>
    <td><h4>{L_DESCRIPTION_WORD_COUNT}</h4></td>
    <td><input class="post" type="text" size="3" maxlength="4" name="description_word_count" value="{DESCRIPTION_WORD_COUNT}" /></td>
</tr>
<tr>
    <td><h4>{L_KEYWORD_WORD_COUNT}</h4></td>
    <td><input class="post" type="text" size="3" maxlength="4" name="keyword_word_count" value="{KEYWORD_WORD_COUNT}" /></td>
</tr>

# ---- [ Открыть ] -------------------

templates/default/page_header.tpl

# ---- [ Найти ] -------------------

<head>

# ---- [ Вставить после ] -------------------

<!-- IF PAGE_KEYWORDS_ON -->
<meta name="keywords" content="<!-- IF $bb_cfg['append_keywords_first'] -->{PAGE_KEYWORDS}{RND_KEYWORDS}<!-- ELSE -->{RND_KEYWORDS}{PAGE_KEYWORDS}<!-- ENDIF -->" />
<!-- ENDIF -->
<!-- IF PAGE_DESCRIPTION_ON -->
<meta name="description" content="<!-- IF not $bb_cfg['use_dynamic_description'] || VIEWTOPIC_PAGE -->{PAGE_TITLE}<!-- ELSE -->{RND_DESCRIPTION}<!-- ENDIF --> {PAGE_DESCRIPTION}" />
<!-- ENDIF -->

# ---- [ Конец ] -------------------
Автор
Exile
Скачивания
44
Просмотры
199
Первый выпуск
Обновление
Оценка
0.00 звёзд 0 оценок

Другие ресурсы пользователя Exile

Последние обновления

  1. Обновление 1.1.0

    Обновлено описание ресурса
Сверху