dle.in.ua » Хаки » Автоматическое добавление тегов v1.0

Автоматическое добавление тегов v1.0

Автор: kand2004 от 13-12-2009, 02:32
Автоматическое добавление тегов v1.0


Возможности хака:
Из заголовка новости берутся слова (исключены цифры и спецсимволы), длина которых больше 3 символов и формируется строка тэгов.
Тестировался на версии DLE 8.2
Очень часто Журналисты сайта забывают или не хотят проставлять теги для новости. Сначала я не обращал внимания, но поняв, в чем смысл и назначение тегов (для поисковиков в первую очередь), я сам начал руками редактировать посты и добавлять теги.

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

Долго не думая, я копировал слова (исключая цифры) и ставил между ними запятую. Через некоторое время это стало надоедать...
Так появился этот простой хак. Большинству может показаться совершенно бесполезным, но мне помогает. Может кому-то тоже пригодится.


Инсталяция.

Скрипт (ниже по тексту буду называть "script"), который втавляем в нижеуказанные файлы:


/*-------------хак автоматическое добавление тэгов ----------------*/
$arr_tags = explode(' ', $title);
$str_tag = '';
foreach ( $arr_tags as $tvalue ) {
    $tvalue =    trim($tvalue);
    preg_match('/[a-zA-Zа-яА-Я]{4,}/', $tvalue, $t_v);
    if ($t_v[0]) {
        $str_tag .= $t_v[0].',';
    }
};
$_POST['tags'] = substr($str_tag, 0, strlen($str_tag)-2);
/*-------------!хак автоматическое добавление тэгов ----------------*/



1) Открываем файл /engine/modules/addnews.php

Находим первое вхождение


     if( $found )
  


ВЫШЕ вставляем script

2) Открываем файл /engine/inc/addnews.php

Находим


     if( trim( $_POST['vote_title']
  


ВЫШЕ вставляем script

3) Все :-)
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • люди вот я поставил облоко тегов для версии 8.2 а у меня в блоке пишет :
    Требуется для просмотраFlash Player 9 или выше.
    Хотя флеш плеер установлен,в чём может быть причина?
    • Lazio
    • Регистрация: --
    • Репутация: (||)
    • 13 декабря 2009 09:04
    • 1
    ^
  • Группа: User
  • Icq: 821635
  • Комментариев: 36
  • Публикаций: 1
  • имхо выборка из заголовка не лучший вариант, но все равно +1
    • kild
    • Регистрация: 18.01.2009
    • Репутация: (0|0|0)
    • 13 декабря 2009 09:27
    • 2
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • а если теги написаны вручную, этот хак заменит их?
    • curup
    • Регистрация: --
    • Репутация: (||)
    • 13 декабря 2009 10:02
    • 3
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • Цитата: curup
    а если теги написаны вручную, этот хак заменит их?


    да, заменит...

    Фактически - этот хак предназначен в тех случаях, если никто никогда не ставит в новостях теги
    • kand2004
    • Регистрация: --
    • Репутация: (||)
    • 13 декабря 2009 12:43
    • 4
    ^
  • Группа: User
  • Icq: --
  • Комментариев: 8
  • Публикаций: 0
  • kand2004,
    Хм У меня чет не заменило.
    • lBERSeRKl
    • Регистрация: 3.12.2009
    • Репутация: (0|0|0)
    • 13 декабря 2009 12:58
    • 5
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • Чуть переделал получение тэгов, смотрим переделанную версию:
    http://dle-code.com/hacks/115-avtomaticheskoe-dobavlenie-tegov.html
    • DmitriFB
    • Регистрация: --
    • Репутация: (||)
    • 13 декабря 2009 13:21
    • 6
    ^
  • Группа: User
  • Icq: --
  • Комментариев: 72
  • Публикаций: 4
  • Такое же на дле.ин.юа...прикольная штука

    --------------------
    • sir95
    • Регистрация: 4.08.2009
    • Репутация: (0|0|0)
    • 13 декабря 2009 14:08
    • 7
    ^
  • Группа: User
  • Icq: 2929550
  • Комментариев: 32
  • Публикаций: 0
  • Lazio,
    ты модуль тегов проверь.
    У меня всё отлисно работает автору +

    --------------------
    • MTS32
    • Регистрация: 16.06.2009
    • Репутация: (0|0|0)
    • 21 декабря 2009 11:03
    • 8
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • Автору +!
    Поставил, все работает, но обрезает последние слова (буквально одну, две буквы). Как это можно побороть?
    • curup
    • Регистрация: --
    • Репутация: (||)
    • 26 декабря 2009 10:52
    • 9
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • Цитата: curup
    Поставил, все работает, но обрезает последние слова (буквально одну, две буквы). Как это можно побороть?


    Спасибо за отзыв!

    Если режет последние символы, то в строке

    $_POST['tags'] = substr($str_tag, 0, strlen($str_tag)-2);

    ставим

    $_POST['tags'] = substr($str_tag, 0, strlen($str_tag)-1);

    или

    $_POST['tags'] = substr($str_tag, 0, strlen($str_tag));
    • kand2004
    • Регистрация: --
    • Репутация: (||)
    • 31 декабря 2009 17:53
    • 10
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • У меня новости добавляются через RSS и теги не прописываются. Когда в ручную добавляю, то все работает.
    Подскажите пожалуйста как сделать для рсс
    • venom_
    • Регистрация: --
    • Репутация: (||)
    • 12 января 2010 11:54
    • 11
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • Привет всем! Скажите почему теги прописываються не на всех новостях? Последние новости на сайте не прописывает данный хак!!
    • xaker223
    • Регистрация: --
    • Репутация: (||)
    • 12 января 2010 17:38
    • 12
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • Это для тех у кого граббер
    • Russia56
    • Регистрация: --
    • Репутация: (||)
    • 23 марта 2010 08:47
    • 13
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • Спасибкен аффтар, на 8.5 все работает. Проблема так же была с обрезанием последней буквы, но поменял 2 на 1 вроде ща не режет.
    • WWWital
    • Регистрация: --
    • Репутация: (||)
    • 4 июля 2010 15:28
    • 14
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • Все зделал как вы сказали но у меня даже нет флешки для вывода тегов где можно скачать его? Извините только начал разбираться с дле
    • new_forward
    • Регистрация: --
    • Репутация: (||)
    • 18 сентября 2010 20:37
    • 15
    ^
  • Группа: User
  • Icq: 373624275
  • Комментариев: 71
  • Публикаций: 0
  • они стандартным тегом выводятся {tags} в шаблоне

    --------------------
    • lika004
    • Регистрация: 13.02.2010
    • Репутация: (0|0|0)
    • 18 сентября 2010 23:18
    • 16
    ^
    Информация
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.