<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>xela.ru &#187; Блог на Wordpress</title>
	<atom:link href="http://www.xela.ru/category/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.xela.ru</link>
	<description>Блог о фотографии, ее обработке в фотошопе, кино и интернете</description>
	<lastBuildDate>Fri, 30 Jul 2010 05:49:39 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Исправление в файле Robots.txt для Wordpress</title>
		<link>http://www.xela.ru/2010/02/ispravlenie-v-fajle-robots-txt-dlya-wordpress/</link>
		<comments>http://www.xela.ru/2010/02/ispravlenie-v-fajle-robots-txt-dlya-wordpress/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 16:49:12 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Блог на Wordpress]]></category>
		<category><![CDATA[robots.txt]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=1719</guid>
		<description><![CDATA[Вроде уже давно поставил точку на изысканиях правильного Robots.txt для Wordpress. Лишний контент убран, сайт хорошо индексируется, но вот недавно заметил одну неприятную вещь &#8211; Яндекс не загружает картинки из папки /wp-content/uploads/. С Гуглом все в порядке, он периодически добавляет новые изображения, а Яндекс, даже при ручном добавлении не хочет включать их в индекс. Для [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.xela.ru/wp-content/uploads/2010/02/ispravlenie-v-fajle-robots-txt-dlya-wordpress-pic1.jpg" ><img class="size-thumbnail wp-image-1721 alignleft" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="ispravlenie-v-fajle-robots-txt-dlya-wordpress-pic1" src="http://www.xela.ru/wp-content/uploads/2010/02/ispravlenie-v-fajle-robots-txt-dlya-wordpress-pic1-150x150.jpg" alt="ispravlenie-v-fajle-robots-txt-dlya-wordpress-pic1" width="150" height="150" /></a>Вроде уже давно поставил точку на изысканиях правильного <a href="http://www.xela.ru/2009/08/robotstxt-dlya-wordpress/" >Robots.txt для Wordpress</a>. Лишний контент убран, сайт хорошо индексируется, но вот недавно заметил одну неприятную вещь &#8211; Яндекс не загружает картинки из папки /wp-content/uploads/. С Гуглом все в порядке, он периодически добавляет новые изображения, а Яндекс, даже при ручном добавлении не хочет включать их в индекс. Для многих это возможно и не имеет значения, но на моем блоге много фотографий и отказыватся от дополнительного трафика с Яндекс.Картинок не хочется. Что ж, попробуем решить эту проблему и получить правильный файл Robots.txt для блогов на Wordpress.</p>
<p><span id="more-1719"></span></p>
<p>Приведу пример файла Robots.txt, который до недавнего времени стоял на моих сайтах:</p>
<blockquote><p>User-agent: *<br />
Disallow: /xmlrpc.php<br />
Disallow: /wp-login.php<br />
Disallow: /wp-register.php<br />
Disallow: /wp-admin/<br />
Disallow: /wp-includes/<br />
<span style="color: #ff0000;">Disallow: /wp-content/</span><br />
Disallow: /tag/<br />
Disallow: /?s=<br />
Disallow: /trackback/<br />
Disallow: /feed/<br />
Disallow: /comments/<br />
Disallow: */trackback/<br />
Disallow: */feed/<br />
Disallow: */comments/<br />
<span style="color: #ff0000;">Allow: /wp-content/uploads/</span></p>
<p>Sitemap: http://xela.ru/sitemap.xml</p></blockquote>
<p>На первый взгляд все грамотно, но обратите внимание на выделенные красным строки. Самое обидное, что когда разбирался в синтаксисе <a href="http://www.xela.ru/2009/07/o-fajle-robotstxt/" >Robots.txt</a> вообще, сам же и написал, что Яндекс выполняет ту директиву, которая выше. Иными словами последнюю строку робот поисковика проигнорирует и картинки будут закрыты от индексации.</p>
<p>Есть три пути, как решить эту проблему. Можно перенести разрешающую строку выше запрещающей. При этом мы нарушаем правила написания файла, впрочем они не являются строгими и скорее всего такой вариант пройдет. Второй вариант &#8211; сделать дополнительную секцию для Яндекса. Мне он не понравился из-за громоздкости. Вполне понятно, что чем больше файл, тем вероятнее в нем ошибка. Да и хочется универсального решения.</p>
<p>После некоторого раздумия я просто решил удалить строку Disallow: /wp-content/. Собственно в это папке не находится какой-то тайной информации, так пусть она будет открыта вся. Если в поисковиках вдруг всплывут ненужные файлы, то всегда можно спрятать их прописав запрещение, скажем, на папку плагинов или темы.</p>
<p>Мой итоговый вариант получился следующим:</p>
<blockquote><p>User-agent: *<br />
Disallow: /xmlrpc.php<br />
Disallow: /wp-login.php<br />
Disallow: /wp-register.php<br />
Disallow: /wp-admin/<br />
Disallow: /wp-includes/<br />
Disallow: /tag/<br />
Disallow: /?s=<br />
Disallow: /trackback/<br />
Disallow: /feed/<br />
Disallow: /comments/<br />
Disallow: */trackback/<br />
Disallow: */feed/<br />
Disallow: */comments/<br />
<span style="color: #ff0000;">Disallow: */?</span><br />
Allow: /wp-content/uploads/</p>
<p>Sitemap: http://xela.ru/sitemap.xml</p></blockquote>
<p>Внимательные увидят еще одну добавленную строку. Одно время в Яндексе вылезли странные ссылки на мой сайт следующего вида:</p>
<blockquote><p>http://www.xela.ru/2009/12/nastrojka-servera-apache-na-vps/?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed:+xelaru+(Xela.ru+Блог+о+фотографии,+программировании+и+seo)</p></blockquote>
<p>Я так и не смог разобраться откуда они попадают в индекс. Судя по вот этой части &#8220;utm_source=feedburner&#8221;, они появляются после перехода с RSS-подписки. При этом страница ничем не отличается от обычной со ссылкой до знака вопроса. Поэтому, чтобы в Яндексе не было <a href="http://www.xela.ru/2009/08/pro-dubliruyushhijsya-kontent-v-wordpress/" >ненужных дублей</a>, я просто закрыл подобные страницы дополнительной директивой.</p>
<p>Файл вверху действующий, так что можете смело использовать его у себя, нужно только заменить путь к сайту в sitemap.</p>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=1719&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2010/02/ispravlenie-v-fajle-robots-txt-dlya-wordpress/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Защита Wordpress от спама.</title>
		<link>http://www.xela.ru/2009/09/zashhita-wordpress-ot-spama/</link>
		<comments>http://www.xela.ru/2009/09/zashhita-wordpress-ot-spama/#comments</comments>
		<pubDate>Tue, 08 Sep 2009 07:56:34 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Блог на Wordpress]]></category>
		<category><![CDATA[антиспам]]></category>
		<category><![CDATA[блог]]></category>
		<category><![CDATA[программирование]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=753</guid>
		<description><![CDATA[Несколько дней не заходил в блог и вот результат &#8211; 48 комментариев за 4 дня и все они похожи на автоматический спам. Плагин антиспама Akismet фильтрует не все, да и часто наоборот в спам закидывает нормальные комментарии, поэтому на 100% полагаться на него нельзя и все равно приходится просматривать все самому. Решил поискать, как защитить [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.xela.ru/wp-content/uploads/2009/09/zashhita-wordpress-ot-spama-pic1.jpg" ></a><a href="http://www.xela.ru/wp-content/uploads/2009/09/zashhita-wordpress-ot-spama-pic1.jpg" ><img class="alignleft size-thumbnail wp-image-791" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="zashhita-wordpress-ot-spama-pic1" src="http://www.xela.ru/wp-content/uploads/2009/09/zashhita-wordpress-ot-spama-pic1-150x150.jpg" alt="zashhita-wordpress-ot-spama-pic1" width="150" height="150" /></a>Несколько дней не заходил в блог и вот результат &#8211; 48 комментариев за 4 дня и все они похожи на автоматический спам. Плагин антиспама Akismet фильтрует не все, да и часто наоборот в спам закидывает нормальные комментарии, поэтому на 100% полагаться на него нельзя и все равно приходится просматривать все самому. Решил поискать, как защитить Wordpress от спама не плагинами и нашел интересное решение &#8211; переделать форму отправки комментариев.<br />
<span id="more-753"></span><br />
Люди спамят осмысленно и немного, роботы составляют большинство спамящих, и берут они числом и скоростью. Им не важно пройдет ли комментарий, не на этом сайте, так на следующем они пройдут сквозь защиту, поэтому рассылка осуществляется быстро и по стандартному сценарию. Отсюда вывод &#8211; от людей мы не защитимся, а вот от роботов реально вполне, причем делать это нужно в автоматическом порядке без участия владельца блога.</p>
<p>Порядок поведения спам-ботов следующий: находим блог, в нем статью, далее форму для комментариев, заполняем стандартные поля и уходим дальше. Иногда роботы выбирают 1-2 строки из текста страницы и вставляют в поле комментария, но это для нас не важно. Ни блог, ни статью мы спрятать от них не сможем, а вот с формой размещения комментариев как раз поработать и стоит. Обычно она состоит из 4 полей- &#8220;имя&#8221;, &#8220;e-mail&#8221;, &#8220;сайт&#8221;, &#8220;комментарий&#8221;. Если копнуть чуть глубже, то мы увидим, что эти поля имеют name и id, которые для большинства сайтов совпадают.</p>
<p>Как же обмануть бота? При заполнении формы, он пойдет по стандартным полям, и, если создать дубликат поля с другим name, то заполнено будут именно стандартное. Но что делать пользователю-человеку, ведь он увидит несколько одинаковых полей в форме? Все просто &#8211; оставим для человека переименованное, он ничего не заметит, а стандартное скроем при помощи css, его увидит и заполнит робот. Дальше сделаем анализ заполненной формы, и при наличии текста в скрытом поле удалим комментарий, как спам.</p>
<p>Для изменения нам понадобятся следующие файлы: /wp-content/themes/тема/comments.php &#8211; это файл формы комментария и /wp-comments-post.php &#8211; это обработчик формы, ну и файл стилей, в котором мы будем прятать дублирующее поле, обычно это /wp-content/themes/тема/style.css.</p>
<p>Сначала исправляем саму форму добавления комментариев, для этого находим в comments.php часть кода, которая ответственна за внешний вид, обычно она расположена ближе к концу файла, нас будет интересовать строка ввода e-mail:</p>
<blockquote><p>&lt;input type=&#8221;text&#8221; name=&#8221;email&#8221; id=&#8221;email&#8221; value=&#8221;&lt;?php echo $comment_author_email; ?&gt;&#8221; size=&#8221;22&#8243; tabindex=&#8221;2&#8243; /&gt;</p></blockquote>
<p>Для этого поля создаем дубликат для ботов и добавляем класс для невидимости, для людей меняем название поля:</p>
<blockquote><p><strong> </strong>&lt;input type=&#8221;text&#8221; <strong>class=&#8221;irobot&#8221; </strong>name=&#8221;email&#8221; id=&#8221;email&#8221; value=<strong>&#8220;&#8221;</strong> size=&#8221;22&#8243; tabindex=&#8221;2&#8243; /&gt;<br />
&lt;input type=&#8221;text&#8221; name=&#8221;<strong>notaspam</strong>&#8221; id=&#8221;<strong>true-email</strong>&#8221; value=&#8221;&lt;?php echo $comment_author_email; ?&gt;&#8221; size=&#8221;22&#8243; tabindex=&#8221;3&#8243; /&gt;</p></blockquote>
<p>При использовании кода желательно поменять <strong>irobot</strong>, <strong>notaspam</strong> и <strong>true-email </strong>на любые другие имена.</p>
<p>Переходим к обработчику формы /wp-comments-post.php. В файле находим обработку формы, добавляем проверку на заполнение скрытого поля и меняем содержимое email на пользовательское:</p>
<blockquote><p><strong>$spam_test_field = trim($_POST['email']);<br />
if(!empty($spam_test_field)) wp_die(&#8217;Spam must die!&#8217;);</strong><br />
$comment_author       = ( isset($_POST['author']) )  ? trim(strip_tags($_POST['author'])) : null;<br />
$comment_author_email = ( isset($_POST['<strong>notaspam</strong>']) )   ? trim($_POST['<strong>notaspam</strong>']) : null;</p></blockquote>
<p>Таким образом, если заполнено невидимое поле email, то комментарий не пройдет &#8211; это однозначно бот. Осталось только спрятать дублированное поле, и человек заполнить его не сможет. Прописываем класс в файле стилей:</p>
<blockquote>
<div class="codecolorer-container css default" style="overflow: auto; white-space: nowrap; width: 100%;">
<div class="css codecolorer" style="white-space: nowrap;"><span class="re0">.</span>irobot<span class="br0">{</span> <span class="kw1">display</span><span class="sy0">:</span> <span class="kw2">none</span><span class="sy0">;</span> <span class="br0">}</span></div>
</div>
</blockquote>
<p>Плюс данного метода в том, что он не особенно распространен, а значит спаммеры не будут сильно задумываться над его обходом и какое-то время эффективность будет высока. Минус один, но большой, при изменении темы или обновлении блога, нужно не забыть повторить процедуру.</p>
<p><strong>UPD.</strong> Исходя из опыта администрирования нескольких блогов, могу сделать вывод, что защита Wordpress от спама путем изменения формы комментариев, в результате является самым простым способом. Плагины рано или поздно начинают пропускать спам, а затем становятся полностью неэффективными, кроме этого они требуют настройки, обновления и т.д., а тут минимальные манипуляции и почти 100% результат отсеивания ненужных сообщений.</p>
<p><strong>Ссылки по теме:</strong><br />
<noindex><a rel="nofollow" href="http://adw0rd.ru/2009/antispam/"  target="_blank">Защита блога от спама по версии adw0rd</a></noindex><br />
<noindex><a rel="nofollow" href="http://baboker.com/2009/02/23/wordpress-boremsya-so-spam-botami-raz-i-navsegda/"  target="_blank">Плагин &#8220;Я не робот!&#8221;</a></noindex><br />
<noindex><a rel="nofollow" href="http://www.snowballblog.com/zaschita-kommentariev-wordpress-ot-spam-botov-plagin-math-comment-spam-protection-rusifitsirovannyiy.html"  target="_blank">Защита от спама при помощи математики Math Comment Spam Protection</a></noindex><br />
<noindex><a rel="nofollow" href="http://parasite-eliminator.ru/"  target="_blank">Уничтожитель паразитов Новикова</a></noindex></p>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=753&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2009/09/zashhita-wordpress-ot-spama/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>Robots.txt для Wordpress.</title>
		<link>http://www.xela.ru/2009/08/robotstxt-dlya-wordpress/</link>
		<comments>http://www.xela.ru/2009/08/robotstxt-dlya-wordpress/#comments</comments>
		<pubDate>Thu, 20 Aug 2009 06:30:41 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Блог на Wordpress]]></category>
		<category><![CDATA[robots.txt]]></category>
		<category><![CDATA[дублирующийся контент]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=448</guid>
		<description><![CDATA[В wordpress есть несколько служебных файлов и папок, которые по-умолчанию могут индексироваться поисковиками. Это лишняя информация, которая засоряет базу поисковика, и мешает индексировать сайт, да и выставлять наружу файлы движка не самый лучший ход. Чтобы скрыть их нужно использовать файл robots.txt о котором и пойдет речь далее. Помимо этого я недавно рассматривал тему дублирующегося контента [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-686" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="robotstxt-dlya-wordpress-pic1" src="http://www.xela.ru/wp-content/uploads/2009/08/robotstxt-dlya-wordpress-pic1.jpg" alt="robotstxt-dlya-wordpress-pic1" width="150" height="137" />В wordpress есть несколько служебных файлов и папок, которые по-умолчанию могут индексироваться поисковиками. Это лишняя информация, которая засоряет базу поисковика, и мешает индексировать сайт, да и выставлять наружу файлы движка не самый лучший ход. Чтобы скрыть их нужно использовать файл robots.txt о котором и пойдет речь далее. Помимо этого я недавно рассматривал тему <a href="http://www.xela.ru/2009/08/pro-dubliruyushhijsya-kontent-v-wordpress/"  target="_self">дублирующегося контента в wordpress</a>, и все выводы, сделанные в той статье, найдут отражение при написании конечного robots.txt здесь.<span id="more-448"></span>Если вы не знакомы с форматом и параметрами файла robots.txt, то более подробно можно почитать в моей статье <a href="http://www.xela.ru/2009/07/o-fajle-robotstxt/"  target="_self">об этом файле</a>. Структура wordpress слабо меняется с выходом новых версия, поэтому можно говорить, что мой вариант подойдет для большинства сайтов. Текст файла, приведенный ниже, полностью работоспособный и может использоваться сразу, достаточно только вставить имя вашего сайта в конце в директиву Sitemap.</p>
<blockquote><p>User-agent: *<br />
Disallow: /xmlrpc.php<br />
Disallow: /wp-login.php<br />
Disallow: /wp-register.php<br />
Disallow: /wp-admin/<br />
Disallow: /wp-includes/<br />
Disallow: /wp-content/<br />
Disallow: /tag/<br />
Disallow: /?s=<br />
Disallow: /trackback/<br />
Disallow: /feed/<br />
Disallow: /comments/<br />
Disallow: */trackback/<br />
Disallow: */feed/<br />
Disallow: */comments/<br />
Allow: /wp-content/uploads/</p>
<p>Sitemap: http://xela.ru/sitemap.xml</p></blockquote>
<p>Сначала (строки 1-3) скрываем от поисковиков служебные файлы &#8211; страницы удаленного постинга, авторизации и регистрации, которые в противном случае они найдут. Затем (строки 4-6) служебные папки с темами, плагинами и т.д. Стоит обратить внимание, что внизу мы <strong>откроем </strong>доступ к папке картинок директивой &#8220;Allow: /wp-content/uploads/&#8221;, если у вас картинки к статьям лежат в другой папке, то необходимо поменять путь.</p>
<p>Строки, путь в которых начинается с &#8220;/wp&#8221; можно закрыть при помощи одной директивы &#8211; &#8220;Disallow: /wp*&#8221;, но я бы не стал так делать, потому, что эта маска может в будущих версиях закрыть от индексации что-то важное, да и с конкретными путями получается нагляднее.</p>
<p>Далее закрываем тэги &#8211; &#8220;Disallow: /tag/&#8221;, чтобы избежать дублирующегося контента и страницу результатов поиска- &#8220;Disallow: /?s=&#8221; , которая не несет никакой полезной информации для поисковиков и тоже может генерировать лишний неоригинальный контент.</p>
<p>Поисковые роботы, за исключением специализированных, которые ищут по блогам, не понимают фиды и т.п., и выдают ошибки, поэтому закрываем от них непонятные страницы. При этом &#8220;блогороботы&#8221; наоборот понимают в основном только RSS и игнорируют остальной контент, поэтому для них не нужна отдельная секция в robots.txt, они находят RSS-потоки и на этом их путешествие по сайту заканчивается. Записи &#8220;Disallow: /comments/&#8221; и &#8220;Disallow: */comments/&#8221; отличаются друг от друга, в первом случае мы закрываем фид со всеми комментариями, а во втором фиды с комментариями к отдельным статьям.</p>
<p>И, наконец, прописываем путь к файлу sitemap.</p>
<p>Стоит добавить, что при формате ЧПУ-ссылок с датой в начале, нет возможности закрыть от индексации архивы. Для этого я использую плагин <noindex><a rel="nofollow" href="http://semperfiwebdesign.com/portfolio/wordpress/wordpress-plugins/all-in-one-seo-pack/"  target="_blank">All in One SEO Pack</a></noindex>, а в нем ставлю noindex для архивов. Но можно поступить и проще, на этом сайте я просто убрал ссылку на архивы.</p>
<p><strong>Ссылки по теме:</strong><br />
<noindex><a rel="nofollow" href="http://codex.wordpress.org/Search_Engine_Optimization_for_Wordpress#Robots.txt_Optimization"  target="_blank">пример robots.txt</a></noindex> на официальном сайте wordpress.</p>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=448&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2009/08/robotstxt-dlya-wordpress/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Про дублирующийся контент в Wordpress.</title>
		<link>http://www.xela.ru/2009/08/pro-dubliruyushhijsya-kontent-v-wordpress/</link>
		<comments>http://www.xela.ru/2009/08/pro-dubliruyushhijsya-kontent-v-wordpress/#comments</comments>
		<pubDate>Fri, 14 Aug 2009 13:33:30 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Блог на Wordpress]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[гугл]]></category>
		<category><![CDATA[дублирующийся контент]]></category>
		<category><![CDATA[улучшение индексации]]></category>
		<category><![CDATA[яндекс]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=634</guid>
		<description><![CDATA[При создании записи в wordpress она автоматически помещается в несколько разделов т.е. она будет повторяться и в нее можно попасть как минимум с главной страницы, из архивов, тэгов и категории. Частично этого можно избежать если пользоваться тэгом &#8220;more&#8221;, который обрезает часть записи оставляя только анонс. Но в этом случае не записи целиком, а анонсы будут [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-667" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="pro-dubliruyushhijsya-kontent-v-wordpress-pic0" src="http://www.xela.ru/wp-content/uploads/2009/08/pro-dubliruyushhijsya-kontent-v-wordpress-pic0.gif" alt="pro-dubliruyushhijsya-kontent-v-wordpress-pic0" width="140" height="150" />При создании записи в wordpress она автоматически помещается в несколько разделов т.е. она будет повторяться и в нее можно попасть как минимум с главной страницы, из архивов, тэгов и категории. Частично этого можно избежать если пользоваться тэгом &#8220;more&#8221;, который обрезает часть записи оставляя только анонс. Но в этом случае не записи целиком, а анонсы будут повторяться на страницах, кроме того &#8220;more&#8221; создает дополнительную ссылку, опять-таки дублируя контент. Почему это плохо и как избежать подобной ситуации?<br />
<span id="more-634"></span><strong></strong></p>
<p><strong>Почему дублирующийся контент это нехорошо?</strong></p>
<p>Сначала постараемся разобраться почему это нехорошо. В качестве первоисточника <noindex><a rel="nofollow" href="http://googlewebmastercentral.blogspot.com/2006/12/deftly-dealing-with-duplicate-content.html"  target="_blank">статья</a></noindex> из Google Webmaster Blog (на английском) про дублирующийся контент. Краткое резюме: Гугл не наказывает сайты за повторяющиеся материалы, все страницы индексируются, но на результаты выдачи накладывается фильтр, который помогает избежать показа одинаковых результатов. В некоторых случаях, когда они считают, что дублирующийся контент создан с целью манипулирования результатами выдачи, к сайту могут быть применены соответствующие санкции.</p>
<p>Яндекс по этому поводу говорит следующее: &#8220;Документ, известный роботу, может не попасть в результаты поиска, если он является дубликатом ранее найденной страницы&#8221;. Глубже я копать не стал, но думаю, что в некоторых случаях за одинаковый контент и Яндекс может наказывать.</p>
<p>Кроме непосредственно наказания может сложиться ситуация, когда вместо страницы в выдачу может попасть ее копия из архива или тэгов, что нам конечно же не нужно.</p>
<p><strong>Что сделать, чтобы этого избежать?</strong></p>
<p>Сначала надо уточнить для чего сделан сайт. Если сайт сделан под рекламу, то чем больше страниц  проиндексировано поисковиком и присутствует в выдаче, тем больше рекламных площадей доступно. С другой стороны часть дублированных страниц все равно не будет помещена в выдачу, а само присутствие этих страниц в базе может замедлить последующую индексацию сайта. Да и возможность наказания не стоит игнорировать т.к. сайт под рекламу уже заведомо рискует. Для сайтов, при создании которых реклама не главное, все несколько проще, необходимо закрыть лишние страницы от поисковиков и все.</p>
<p><strong>С чего начать?</strong></p>
<p>Первое &#8211; это постоянные ссылки ЧПУ (человеко понятные ссылки). У кого установлены и настроены могут пропустить абзац. Итак, чтобы сделать постоянные ссылки заходим в раздел &#8220;настройки&#8221; и вполне логично выбираем &#8220;постоянные ссылки&#8221;, дальше по инструкциям. Формат ссылок не важен, для себя я выбрал &#8220;месяц и название&#8221;, но это не принципиально. Далее необходимо поставить и активировать плагин RusToLat, скачать можно <noindex><a rel="nofollow" href="http://mywordpress.ru/plugins/rustolat/"  target="_blank">отсюда</a></noindex>. Этот плагин автоматически переводит русские названия статей в транслит и на выходе мы получаем красивые постоянные ссылки с буквенным названием без спецсимволов.</p>
<p>Второе &#8211; это обрезка статей при помощи &#8220;more&#8221; до анонсов. Конечно если вы пишете по 1-2 абзаца, то пользоваться им не стоит, но если статьи достаточно длинные, то лучше спрятать их часть, чтобы не загромождать страницу. При этом читатель может, прочитав начало, сам решить стоит ли переходить дальше. Правда при таком подходе создается лишняя ссылка на страницу, но об этом в другой раз.</p>
<p><strong>Следующий шаг &#8211; определить структуру сайта и закрыть ненужное.</strong></p>
<p>Представим себе стандартную схему сайта на Wordpress. Причем за основу возьмем сильно упрощенный вариант: у нас есть 4 записи, они располагаются по 2 на странице, все записи из одной категории с одним тэгом и сделаны в одном месяце.  На записи стоят постоянные ссылки, и они обрезаны тэгом &#8220;more&#8221;. Пропишем все связи в которые вовлечены эти записи:</p>
<p><img class="alignnone size-full wp-image-670" style="border: 0pt none;" title="pro-dubliruyushhijsya-kontent-v-wordpress-pic1" src="http://www.xela.ru/wp-content/uploads/2009/08/pro-dubliruyushhijsya-kontent-v-wordpress-pic1.gif" alt="Дублирующийся контент" width="588" height="188" /><br />
Получается, что у нас уникальный контент несут только синие страницы, а зеленые в различных видах собирают анонсы. Главная тоже не уникальна, но с ней в любом случае ничего делать нельзя, т.к. эта начальная страница сайта. По-хорошему нужно выкинуть все зеленые страницы, но как в этом случае поисковик найдет записи в шаге от главной, если он не успел их проиндексировать?</p>
<p>Решим что нам не нужно. Тэги и архивы точно не понадобятся. Например, если есть одна запись с несколькими тэгами, то на нее будет вести ссылка со страницы каждого тэга, причем на всех страницах будет один и тот же анонс. А архивы это некая сборка анонсов записей, объединенных временем написания, тоже практической ценности никакой.</p>
<p>Со страницами и категориями несколько сложнее. Категории собирают тематические анонсы, а значит могут формировать уникальный текст для некоторых запросов с большим количеством ключевых слов. Этот текст в свою очередь может лучше подходить под поисковик, чем текст единичной записи, а значит он может принести дополнительных пользователей. Страницы полезны в меньшей степени, но и на них, при регулярном, обновлении блога будет собираться некий уникальный текст. Оставить или закрыть страницы решение индивидуальное, я их оставил.  Естественно это работает только при обрезании статей, в противном случае страницы или категории тоже необходимо закрыть, оставив что-то одно для индексации записей ушедших с первой страницы.</p>
<p><a href="http://www.xela.ru/wp-content/uploads/2009/08/pro-dubliruyushhijsya-kontent-v-wordpress-pic2.gif" ><img class="alignleft size-full wp-image-662" style="border: 0pt none;" title="pro-dubliruyushhijsya-kontent-v-wordpress-pic2" src="http://www.xela.ru/wp-content/uploads/2009/08/pro-dubliruyushhijsya-kontent-v-wordpress-pic2.gif" alt="pro-dubliruyushhijsya-kontent-v-wordpress-pic2" width="300" height="123" /></a></p>
<p>Таким образом мы значительно упрощаем структуру ссылок,  максимально убираем дублирующийся контент и при этом оставляем возможность для поисковиков найти все записи.</p>
<p>Чтобы реализовать это технически нужно сделать файл robots.txt в корневой директории сайта. Подробнее <a href="http://www.xela.ru/2009/07/o-fajle-robotstxt/"  target="_self">о файле robots.txt</a> в предыдущей моей статье, а <a href="http://www.xela.ru/2009/08/robotstxt-dlya-wordpress/" >robots.txt для wordpress</a> я опишу в следующей.</p>
<p>Кроме этого стоит обратить внимание на <a href="http://www.xela.ru/2009/08/tegi-noindex-i-nofollow/" >тэги Noindex и Nofollow</a> и возможность их применения для скрытия ссылок от поисковиком.</p>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=634&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2009/08/pro-dubliruyushhijsya-kontent-v-wordpress/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Прокрутка more в Wordpress</title>
		<link>http://www.xela.ru/2009/04/prokrutka-more-v-wordpress/</link>
		<comments>http://www.xela.ru/2009/04/prokrutka-more-v-wordpress/#comments</comments>
		<pubDate>Sat, 11 Apr 2009 05:54:19 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Блог на Wordpress]]></category>
		<category><![CDATA[блог]]></category>
		<category><![CDATA[программирование]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=44</guid>
		<description><![CDATA[После добавления тега more в запись, на главной публикуется лишь верхняя часть статьи. При нажатии на ссылку “далее” открывается полная запись и страница прокручивается до конца верхней части, в ссылку при этом добавляется якорь “#more-номер записи”. Опять же, считаю полным идиотизмом утверждения о том, что назначение такого якоря на страницу вызывает дублирование контента, ибо открывается [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1355" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="prokrutka-more-v-wordpress-pic1" src="http://www.xela.ru/wp-content/uploads/2009/04/prokrutka-more-v-wordpress-pic1.jpg" alt="prokrutka-more-v-wordpress-pic1" width="150" height="82" />После добавления тега more в запись, на главной публикуется лишь верхняя часть статьи. При нажатии на ссылку “далее” открывается полная запись и страница прокручивается до конца верхней части, в ссылку при этом добавляется якорь “#more-номер записи”. Опять же, считаю полным идиотизмом утверждения о том, что назначение такого якоря на страницу вызывает дублирование контента, ибо открывается та же самая страница, просто с другого места. Однако, с чисто эстетических позиций, мне не нравится такое окончание ссылок, лучше бы “читать далее” открывало просто страницу полной статьи.<br />
Для этого находим файл post-template.php, находящийся в папке wp-includes вордпресса, ищем в нем “#more-$id”, он встретится единожды, и удаляем этот кусочек кода.</p>
<p>Стянуто тут: <noindex><a rel="nofollow" href="http://qui-gon.ru/anti-more/" >http://qui-gon.ru/anti-more/</a></noindex><br />
пока не проверялось.</p>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=44&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2009/04/prokrutka-more-v-wordpress/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Запланированные записи в Wordpress</title>
		<link>http://www.xela.ru/2009/04/zaplanirovannye-zapisi-v-wordpress/</link>
		<comments>http://www.xela.ru/2009/04/zaplanirovannye-zapisi-v-wordpress/#comments</comments>
		<pubDate>Sat, 11 Apr 2009 05:49:27 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Блог на Wordpress]]></category>
		<category><![CDATA[блог]]></category>
		<category><![CDATA[программирование]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=38</guid>
		<description><![CDATA[Статья взята из интернета, я ни разу не сталкивался с подобными проблемами, но всякое бывает. Поэтому на всякий случай скопировал себе.
В wordpress есть весьма удобная функция отложенной публикации статей &#8211; пишем N записей, едем в отпуск, а они потихоньку вылезают на главную. По умолчанию у меня она работала как-то загадочно… В начале вроде работало, а [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1350" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="zaplanirovannye-zapisi-v-wordpress-pic1" src="http://www.xela.ru/wp-content/uploads/2009/04/zaplanirovannye-zapisi-v-wordpress-pic1.jpg" alt="zaplanirovannye-zapisi-v-wordpress-pic1" width="150" height="150" />Статья взята из интернета, я ни разу не сталкивался с подобными проблемами, но всякое бывает. Поэтому на всякий случай скопировал себе.<br />
В wordpress есть весьма удобная функция отложенной публикации статей &#8211; пишем N записей, едем в отпуск, а они потихоньку вылезают на главную. По умолчанию у меня она работала как-то загадочно… В начале вроде работало, а затем, по прошествии отметки в расписании, записи присваивался статус “просроченная” и на этом wordpress успокаивался.</p>
<p><span id="more-38"></span><br />
Мне подумалось, что wp-cron.php служит ни чем иным, как встроенным планировщиком вордпресса и по запуску должен совершать все запланированные действия. В свою очередь &#8211; для его регулярного запуска нужно настроить хрон на сервере хостинга.<br />
В cpanel это делается следующим образом &#8211; в Дополнительных инструментах находим Планировщик задач (cron). Выбираем “Стандартный” режим &#8211; так будет проще указать время, сверху указываем e-mail, на который будут приходить подтверждения, в поле команды для запуска вводим:</p>
<blockquote>
<div class="source">/usr/bin/php /home/%логин_в_cpanel%/public_html/wp-cron.php</div>
</blockquote>
<p>Описание этой строчки &#8211; “интерпретатор_php адрес_скрипта”. В случае, если хрон не находит php &#8211; введите в поле команды:</p>
<blockquote>
<div class="source">wich php</div>
</blockquote>
<p>и на указанную почту придет адрес нужной папки.<br />
Также нужно разрешить выполнение скрипта wp-cron.php на сервере. Для этого установим ему атрибуты 744 или выше. Это можно сделать с помощью Total Commander (Files &#8211; Change Attributes).<br />
Оказалось, что и тут канитель не заканчивается. Чтобы скрипт делал то, чего от него ожидают, следует поступить, как советуют на <noindex><a rel="nofollow" href="http://www.wordpressplugins.ru/faq/cron.html" >wpplugins</a></noindex>, а именно &#8211; открыть wp-cron.php в редакторе и закомментировать следующие строки:</p>
<blockquote>
<div class="source">if ( $_GET['check'] != wp_hash(’187425′) )<br />
exit;</div>
</blockquote>
<div class="source">Стянуто тут: <noindex><a rel="nofollow" href="http://qui-gon.ru/plan-wp/" >http://qui-gon.ru/plan-wp/</a></noindex></div>
<div class="source">Пока не проверялось.</div>
<div class="source"><strong>UPD. На двух блогах работает отложенная запись без всякого шаманства. Думаю, что после переезда на версию 2.8.4 глюки пропадают.</strong></div>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=38&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2009/04/zaplanirovannye-zapisi-v-wordpress/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
