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

[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 и больше - потенциальная точка входа.

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

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

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

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

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

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

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

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

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

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