Перейти к контенту

[SEO] Индекс тематичности топика


Рекомендуемые сообщения

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

 

Итак, сам мод. Опишу общие принципы, так как у меня сильно измененный движок, отдаленно напоминающий 1.3.

 

Сначала отпарсил вордстат по среднечастотникам, набрал тысячи полторы двухсловников и трехсловников. Кто не знает что это такое, тому наверное этот мод не нужен, может дальше не читать.

 

Ключи расположил в порядке убывания частоты запросов: первым самый частый с частотой несколько тысяч в месяц, последний самый редкий с частотой 100; меньше цифры не брал.

 

В skin_global создал новую функцию, в нее поместил массив отпарсенных ключей через символ "|".

В классе display - там, где происходит применение скина, добавился обсчет страницы.

 

Условие работы: только модерам и только в топиках:

		if( $ibforums->input['t'] and ($ibforums->member['g_is_supmod'] or $ibforums->member['is_mod']) )
	{

 

Забираю только тексты сообщений и подписи, чтобы не перегружать движок на больших страницах, беру только первые 64К текста без тегов:

			preg_match_all("/<!-- THE POST \d{1,10} -->(.+?)<!-- THE POST -->/is",$ibforums->skin['template'],$posts_text);
		$keys_string = substr(strip_tags(implode(" ",$posts_text[0])),0,64000);

 

Забираю массив ключей из скина:

			$wordstat = explode("|",trim($skin_universal->wordstat()));

 

Считаю полные и неполные вхождения ключей в текст:

			$count_wordstat = count($wordstat);
		$w_full = array();
		$w_o_full = array();
		foreach($wordstat as $key => $val)
		{
			$val = explode(" ",trim($val));
			$w_no = 0;
			foreach($val as $w_word)
			{
				if( !stristr($output['meta_keywords'],$w_word) )$w_no++;
			}
			if(!$w_no)$w_full[] = $key;
			if($w_no == 1)$w_o_full[] = $key;
		}

 

Забираю самый перспективный ключевик:

			if(count($w_full))$wordstat = " : ".$wordstat[$w_full[0]];
		elseif(count($w_o_full))$wordstat = " : ".$wordstat[$w_o_full[0]];
		else $wordstat = "";

 

Отдаю в тайтл готовые данные:

			$output_array['TITLE'] .= $wordstat" : ".( round((count($w_full)/($count_wordstat/150))*(count($w_o_full)/($count_wordstat/3))*100) );

 

Конец блока:

		}

 

В формуле обсчета есть два коэффициента: полных и неполных вхождений - "150" и "3" в моем случае.

Эти цифры подобраны для уже достаточно большого форума - хотя бы с 1000 страниц топиков. Для молодых форумов я бы посоветовал первую цифру увеличить хотя бы до 250.

 

Оценка по цифрам:

  • 0 - топик нетематичен; скорее всего такой топик следует удалить;
  • 0-100 - топик тематичен и может работать по алгоритму "еще с сайта", но точкой входа страница скорее всего не станет;
  • 100 и больше - потенциальная точка входа.

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.