Внутренняя перелинковка (Internal linking)Расширения для PhpBB

Раздел посвящён интересным расширениям форумного движка PhpBB
Ответить Пред. темаСлед. тема
Аватара пользователя
Автор темы
adm2
Администратор
Всего сообщений: 10
Зарегистрирован: 27.03.2008
 Внутренняя перелинковка (Internal linking)

Сообщение adm2 »

Если в размещаемом новом посте встречается слово или фраза, совпадающие с названием какого-то раздела или топика, то это слово (или фраза) заменится на внутреннюю ссылку.
Внутренняя перелинковка всегда положительно сказывается на позициях в поисковиках. Да и пользователям ненавязчиво может дать информацию о темах, которые уже обсуждались. :)
В настройках можно указать что учитывать - Форумы или Темы, или то и другое.
Особенности:
- сработает только если в тексте нет цитаты (просто если никнейм пользователя совпадет с заменяемым словом, получается чепуха), может, потом это разберу, но пока так;
- темы и разделы берутся лишь те, которые доступны пользователю, отправляющему пост;
- ссылку можно убрать, второй раз (при редактировании) она не поставится;
- перед и после заменяемого слова должны стоять пробелы, иначе не заменится.
intlink001.zip
(11.8 КБ) 200 скачиваний
Реклама
Аватара пользователя
Автор темы
adm2
Администратор
Всего сообщений: 10
Зарегистрирован: 27.03.2008
 Re: Внутренняя перелинковка

Сообщение adm2 »

На этом форуме это расширение включено. Например, пишем: внутренняя перелинковка полезна для сайта. И видим, что фраза внутренняя перелинковка становится, становится... ссылкой! :lol:
Аватара пользователя
Автор темы
adm2
Администратор
Всего сообщений: 10
Зарегистрирован: 27.03.2008
 Re: Внутренняя перелинковка

Сообщение adm2 »

Вы спросите меня как убрать подчеркивание внутренней ссылки? Очень просто. Открываете styles\prosilver\theme\links.css и в блоке

Код: Выделить всё

.postlink {
	text-decoration: none;
	border-bottom: 1px solid transparent;
	padding-bottom: 0;
}
Меняете 1px на 0px
Никаких underline тут нет, как видите.
Аватара пользователя
Автор темы
adm2
Администратор
Всего сообщений: 10
Зарегистрирован: 27.03.2008
 Re: Внутренняя перелинковка

Сообщение adm2 »

По результатам комментариев на phpbbguru.net Сделал следующую версию - 0.0.2
Добавил в настройки возможность указывать минимальную длину темы\раздела для обработки
И теперь в посте ставится лишь одна ссылка на конкретную тему
Из-за этого расширение может немного торомозить при отправке поста, но это если очень много тем на форуме, больше 100000
В listiner.php есть переменная $limit, она установлена в 50000 (это сколько за один раз тем анализируется), можно ее менять при необходимости
intlink002.zip
(13.41 КБ) 145 скачиваний
Аватара пользователя
Автор темы
adm2
Администратор
Всего сообщений: 10
Зарегистрирован: 27.03.2008
 Re: Внутренняя перелинковка

Сообщение adm2 »

Очередная версия - 0.0.3
Убрал ограничение "одна ссылка на пост", всё-таки быстродействие важнее.
Добавил в админку возможность указывать - искать ли темы по всем форумам или лишь по текущему, т.е. в том, в котором размещается новый пост (плюс ищется и в подфорумах, если они есть).
Теперь приоритет - у свежих тем с длинными названиями. Раньше было просто с длинными названиями. Но ведь могут быть темы с одинаковым названием! Теперь из них выберется самая свежая тема.
intlink003.zip
(13.96 КБ) 115 скачиваний
Аватара пользователя
Автор темы
adm2
Администратор
Всего сообщений: 10
Зарегистрирован: 27.03.2008
 Re: Внутренняя перелинковка

Сообщение adm2 »

Очередная версия - 0.0.4
Теперь нет зависимости от регистра. Фраза в размещаемом сообщении может быть наПИсаНа Хоть ТАК, но если есть тема под названием "Написана хоть так", фраза станет ссылкой.
Ещё исправил несколько недочётов. Например, будет срабатывать и в цитатах. Тэг URL теперь тоже не помеха. Работать должно всё быстро.
intlink004.zip
(15.2 КБ) 116 скачиваний
Аватара пользователя
Автор темы
adm2
Администратор
Всего сообщений: 10
Зарегистрирован: 27.03.2008
 Re: Внутренняя перелинковка (Internal linking)

Сообщение adm2 »

-- Версия 0.0.5
Теперь внутренних ссылок станет больше! Расширение научилось исключать из названий тем знаки препинания, звездочки, скобочки и т.п.
Т.е. если есть тема "Как починить чёртов двигатель???",
а в другой теме кто-то пишет "Я не знаю, как починить чёртов двигатель", то "как починить чёртов двигатель" станет ссылкой на тему "Как починить чёртов двигатель???". Раньше фраза должна была полностью совпадать с темой, вплоть до знаков препинания.
intlink005.zip
(15.8 КБ) 105 скачиваний
Ответить Пред. темаСлед. тема

Быстрый ответ, комментарий, отзыв

Изменение регистра текста:  Транслит: 
Смайлики
:D :) ;) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :!: :?: :idea: :arrow: :| :mrgreen: :geek: :ugeek:
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.