<?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>Очередной блог фрилансера &#187; html</title>
	<atom:link href="http://dreamhelg.ru/tag/html/feed/" rel="self" type="application/rss+xml" />
	<link>http://dreamhelg.ru</link>
	<description>о моей работе в сети и не только</description>
	<lastBuildDate>Mon, 21 May 2012 14:37:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>WordPress. Фильтруем HTML в записях и комментариях</title>
		<link>http://dreamhelg.ru/2010/01/wordpress-adding-and-filtering-raw-html-in-post-and-comments/</link>
		<comments>http://dreamhelg.ru/2010/01/wordpress-adding-and-filtering-raw-html-in-post-and-comments/#comments</comments>
		<pubDate>Wed, 13 Jan 2010 08:03:44 +0000</pubDate>
		<dc:creator>dreamhelg</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[переводы]]></category>
		<category><![CDATA[comments]]></category>
		<category><![CDATA[filter]]></category>
		<category><![CDATA[html]]></category>

		<guid isPermaLink="false">http://dreamhelg.ru/?p=1806</guid>
		<description><![CDATA[<p><img width="200" height="200" src="http://dreamhelg.ru/wp-content/uploads/2010/01/home.png" class="attachment-200x200 wp-post-image" alt="home" title="home" /></p>Я давно уже наблюдаю мучения читателей, которые пытаются оставить примеры html-разметки в комментариях. К сожалению, в прошлом году, долго не находилось времени, для решения этой проблемы.
Но сегодня, с радостью хочу объявить о том, что проблема наконец-то решена – теперь вы можете использовать любую html-разметку в комментариях, предварительно заключив ее в теги &lt;code&gt;, а если вам интересно как это реализовано, то читайте далее.<span id="more-1806"></span>

<h3>Описание проблемы</h3>
HTML – это структурированный язык разметки, в котором текст заключается внутри тегов с угловыми скобками. Эти тэги сообщает браузеру, каким образом необходимо структурировать/отобразить информацию, содержащуюся между ними. Одни из самых распространенных тегов – это открывающий и закрывающий тег параграфа (<code>&lt;p&gt;</code>, <code>&lt;/p&gt;</code>); они сообщают браузеру, что текст, который находится внутри, является параграфом, в общей структуре документа.

<em><strong>Но что если, вы захотите показать читателям пример html-разметки?</strong></em>

Вы не сможете вывести тэги на экран, просто напечатав их, поскольку браузер решит, что это html-код и не отобразит их. Поэтому, для того чтобы вывести html-код, мы должны использовать специальные угловые скобки. Для вывода таких скобок используется их символьный объект –  специальный код, который выведет нужный символ. Этот код может быть как в форме имени, так и в форме числа, можно использовать то, что больше нравится. Например, прямые кавычки “ можно вывести двумя способами – используя объект-имя <code>&amp;quot;</code> или объект-число <code>&amp;#34;</code>.

Левую угловую скобку можно вывести с помощью <code>&amp;lt;</code> или <code>&amp;#60;</code>. В нашем примере, для вывода угловых скобок, мы будем использовать символьные объекты <code>&amp;lt;</code> и <code>&amp;gt;.</code>

<h3>Добавляем HTML-код в текст записи WordPress</h3>
Теперь, после того как мы разобрались, как отобразить HTML-код на экране, давайте разберемся как нам это использовать в записях WordPress. На первый взгляд все очень просто – нужно всего лишь заменить левые и правые угловые скобки в их символьные эквиваленты. Это хорошо пока у вас одна-две строчки кода, но что делать, если их значительно больше? Существуют различные плагины для решения этой проблемы, но большинство их них требуют дополнительной разметки в статье.

Поэтому я решил создать WordPress-фильтр, который будет находить определенные секции записи и автоматически конвертировать угловые скобки в их числовой эквивалент.

С помощью специального фильтра WordPress, мы сможем нормально отображать примеры html-кода в статьях и комментариях, внутри тегов <code>&lt;pre&gt;</code>.

<h3>Фильтры WordPress</h3>
Из Кодекса:

<blockquote><em>Фильтры – это функции, через которые WordPress пропускает данные, в определенные моменты исполнения, до того, как с ними будут произведены какие-то действия (такие как добавление в базу данных или отображение в окне браузера).</em></blockquote>

Итак, мы создадим специальный фильтр, который будет отыскивать контент, находящийся внутри тэгов <code>&lt;pre&gt;</code>, и конвертировать код, прежде чем отображать его на экране.

<h3>Специальный WordPress HTML фильтр</h3>
Вот так выглядит код фильтра:

[php]
&lt;?php
function mish_code_filter($content_text) {
    $content_text = preg_replace('!(&lt;pre.*?&gt;)(.*?)&lt;/pre&gt;!ise', &quot; '$1' .  stripslashes( str_replace(array('&lt;','&gt;'),array('&amp;lt;','&amp;gt;'),'$2') )  . '&lt;/pre&gt;' &quot;, $content_text);
    return $content_text;
    }

add_filter('the_content','mish_code_filter', 1, 1);
?&gt;
[/php]

Теперь, давайте разберем код на части. Сначала мы создаем новую функцию, под названием “<code>mish_code_filter</code>”:

[php]
function mish_code_filter($content_text) {
    &lt;!-- function actions --&gt;
    }
[/php]

Далее, мы описываем, что будет делать функция. В нашем примере, мы используем PHP-функцию <code>preg_replace()</code>, которая будет отыскивать текст внутри тэгов <code>&lt;pre&gt;</code>…

[php]
$content_text = preg_replace('!(&lt;pre.*?&gt;)(.*?)&lt;/pre&gt;!ise',
[/php]

…и заменять их на зашифрованный текст:

[php]
&quot; '$1' .  stripslashes( str_replace(array('&lt;','&gt;'),array('&amp;lt;','&amp;gt;'),'$2') )  . '&lt;/pre&gt;' &quot;,
[/php]

Вторая часть функции <code>preg_replace()</code>, использует две PHP-функции: <code>stripslashes()</code> и <code>str_replace()</code>.

<strong><code>stripslashes()</code> </strong>удаляет обратные слэши (\), которые добавляет WordPress, до того как вставляет запись в базу данных. Обычно, WordPress самостоятельно удаляет эти слэши, до того как вывести контент на экран, но поскольку наш фильтр инициализируется до того как данные будут отображены, эта функция обязательна.

<strong><code>str_replace() </code></strong>– ищет угловые скобки и заменяет их на символьные объекты.

<code>$1</code> и <code>$2</code> – это значения выражения, где <code>$1 = (&lt;pre.*?&gt;)</code> и <code>$2 = (.*?)</code>.

Последняя часть функции возвращает значение (результат) функции, чтобы мы могли его использовать:

[php]
return $content_text;
[/php]

Теперь, нам нужно внедрить наш фильтр в WordPress, так, чтобы он срабатывал в определенное время. В нашем случае, мы внедрим фильтр, внутрь фильтра «t<code>he_content</code>»:

[php]
add_filter('the_content','mish_code_filter', 1, 1);
[/php]

Фильтр “<code>the_content</code>”, как нетрудно догадаться, используется для фильтрации записей, после того, как они получены из базы данных и до того, как они выведены на экран. Поэтому, в нашем случае, мы сообщаем вордпрессу, о том, что наш фильтр (<code>mish_code_filter</code>) нужно использовать совместно с фильтром “<code>the_content</code>”.

Первая единица в годе, говорит WordPress, о том, что фильтр имеет высокий приоритет и должен быть выполнен раньше любых, других фильтров. Вторая единица говорит WordPress, о том, что мы передаем нашему фильтру только 1 параметр.

<h3>Установка Фильтра</h3>
Откройте ваш файл <em>functions.php</em> (расположен в папке с вашей темой), и вставьте туда следующий код:

[php]
&lt;?php
function mish_code_filter($content_text) {
    $content_text = preg_replace('!(&lt;pre.*?&gt;)(.*?)&lt;/pre&gt;!ise', &quot; '$1' .  stripslashes( str_replace(array('&lt;','&gt;'),array('&amp;lt;','&amp;gt;'),'$2') )  . '&lt;/pre&gt;' &quot;, $content_text);
    return $content_text;
    }

add_filter('the_content','mish_code_filter', 1, 1);
?&gt;
[/php]

<h3>Фильтр для Комментариев</h3>

Наш фильтр также можно использовать для фильтрации html, в тексте комментариев, для этого понадобятся совсем небольшие изменения. Первое, что нам нужно сделать – это заменить фильтр «<code>the_content</code>», на фильтр «<code>comment_text»</code>, который выполняет ту же функцию, только для текста комментариев.

Ну и второе, необязательное изменение – теги <code>&lt;pre&gt;</code> мы заменим на теги <code>&lt;code&gt;</code>, так как они чаще используются в тексте комментариев. В результате у нас получится вот такой фильтр:

[php]
function mish_code_filter($content_text) {
    $content_text = preg_replace('!(&lt;code.*?&gt;)(.*?)&lt;/code&gt;!ise', &quot; '$1' .  stripslashes( str_replace(array('&lt;','&gt;'),array('&amp;lt;','&amp;gt;'),'$2') )  . '&lt;/code&gt;' &quot;, $content_text);
    return $content_text;
    }

add_filter('comment_text','mish_code_filter', 1, 1);
[/php]

Устанавливается он точно так же, как фильтр контента. Вот и все, можете проверить – наш фильтр работает.

<h3>Плагины с похожей функциональностью</h3>
<ul>
	<li><a href="http://wordpress.org/extend/plugins/raw-html/">Raw HTML</a></li>
	<li><a href="http://wordpress.org/extend/plugins/wp-no-format/">WP No Format</a></li>
	<li><a href="http://wordpress.org/extend/plugins/sm-clean-wordpress/">Clean WordPress</a></li>
</ul>
Перевод статьи "<a href="http://www.martinish.com/blog/2009/08/adding-and-filtering-raw-html-in-wordpress-posts/">Adding and Filtering Raw HTML in WordPress Posts</a>", автор <strong>Martin</strong>]]></description>
		<wfw:commentRss>http://dreamhelg.ru/2010/01/wordpress-adding-and-filtering-raw-html-in-post-and-comments/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Микроформаты: Что, Почему и Как</title>
		<link>http://dreamhelg.ru/2009/12/microformats-why-what-and-how/</link>
		<comments>http://dreamhelg.ru/2009/12/microformats-why-what-and-how/#comments</comments>
		<pubDate>Wed, 09 Dec 2009 13:34:03 +0000</pubDate>
		<dc:creator>dreamhelg</dc:creator>
				<category><![CDATA[общая]]></category>
		<category><![CDATA[переводы]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[microformats]]></category>

		<guid isPermaLink="false">http://dreamhelg.ru/?p=1745</guid>
		<description><![CDATA[<p><img width="200" height="200" src="http://dreamhelg.ru/wp-content/uploads/2009/12/200.jpg" class="attachment-200x200 wp-post-image" alt="200" title="200" /></p>В интернете существует большое количество всевозможных данных. Но я убежден, что большинство полезных данных –  например таких как контактная информация о людях или события, на которых необходимо присутствовать – должны храниться в HTML, там, где вы легко сможете получить к ним доступ. С этой задачей, нам помогут справиться Микроформаты.<span id="more-1745"></span>
<h3>Что это такое?</h3>
Итак, что же такое микроформаты? На домашней странице сайта <a href="http://microformats.org/">microformats.org</a> есть такое описание:

<blockquote>Разработанные в первую очередь для людей, а затем для машин, микроформаты – это набор простых, открытых форматов данных, построенные на основе существующих и широко распространенных стандартов.</blockquote>

Неплохое начало, но нам потребуется небольшое разъяснение.  Вы можете найти на сайте <a href="http://microformats.org/wiki/what-are-microformats">список определений</a>, но суть заключается в следующем: <strong>микроформаты – это набор стандартов для внедрения легко извлекаемых данных на ваши страницы, с использованием современных технологий</strong>.

Отличная новость в том, что если у вас, предположим, есть контент на сайте, мы можете прямо сейчас пометить его микроформатами. Другая хорошая новость в том, что после прочтения этой статьи, весь процесс займет у вас пару минут.

<h3>Для чего?</h3>

Зачем же нужны микроформаты? Ну, если вы убеждены в том, что HTML должен быть семантичным, то микроформаты отлично вам  подойдут. Или же, я могу привести другие аргументы: как мы уже заметили, идея микроформатов состоит в стандартизации того, как данные будут отмечены на странице, с тем, чтобы в дальнейшем, их легко можно было извлечь. На сегодняшний день существует не так уж и много инструментов, использующих возможности микроформатов, но я думаю ситуация изменится.

Использование микроформатов в своей работе, подготовит ваши сайты для будущего, когда микроформаты будут более широко распространены. Опять же, на сайте, вы можете найти <a href="http://microformats.org/wiki/what-can-you-do-with-microformats">список</a> того, что вы можете делать с микроформатами. Также для извлечения микроформатов, существует отличный аддон для Firefox, он называется <a href="https://addons.mozilla.org/en-US/firefox/addon/4106">Operator</a>.

<img class="aligncenter size-full wp-image-1748" title="operator" src="http://dreamhelg.ru/wp-content/uploads/2009/12/operator.jpg" alt="operator" width="600" height="332" />

Кроме этого, <a href="http://www.danwebb.net/">Дэн Веб</a> создал простую <a href="http://www.github.com/danwrong/sumo">JavaScript библиотеку под названием “Sumo”</a>, которая <a href="http://www.danwebb.net/2007/2/9/sumo-a-generic-microformats-parser-for-javascript">извлекает микроформаты, используя JavaScript</a>. Вы также можете попробовать <a href="http://leftlogic.com/lounge/articles/microformats_bookmarklet/">microformats bookmarklet</a>.

<h3>Как их использовать?</h3>
Что ж, если вы зашли так далеко, видимо вы и микроформаты просто созданы друг для друга. Так что, давайте сразу рассмотрим первый. Но прежде чем мы начнем, вот общая структура микроформатов, которую мы будем использовать:  если они связаны более чем с одним элементом в нашем коде, то используются классы. Если они связаны только с одним элементом, обычно используется атрибут <code>rel</code>.

<strong>hCalendar</strong>

hCalendar  - это простой способ отмечать события. Начнем с элемента, который объявляет наше событие:

[html]
&lt;div class=&quot;vevent&quot;&gt;   
  
&lt;/div&gt; 
[/html]

Если у вас предполагается несколько событий, вам нужно обернуть их в <code>div.vcalendar</code>, однако это не обязательно. Есть два обязательных свойства для события:  дата начала (<code>dtstart</code>) и описание (<code>summary</code>). Давайте добавим их:

[html]
&lt;div class=&quot;vevent&quot;&gt;   
    &lt;p&gt;This year, our &lt;span class=&quot;summary&quot;&gt;company holiday dinner&lt;/span&gt;    
    will begin at &lt;span class=&quot;dtstart&quot;&gt;2009-12-18T17:30&lt;/span&gt;.&lt;/p&gt;   
&lt;/div&gt;   
[/html]

Волне читаемо, не так ли? Но не дата! Вы правы, хотя микроформаты написаны в первую очередь для людей, даты – это единственная область, где в первую очередь важно, чтобы компьютер смог ее прочесть. Поэтому, было принято соглашение, записывать дату с помощью тэга <code>abbr</code>, в котором атрибут <code>title</code> будет выступать в роли значения свойства:

[html]
&lt;abbr class=&quot;dtstart&quot; title=&quot;2009-12-18T17:30&quot;&gt;5:30pm on Friday, December 18.&lt;/abbr&gt; 
[/html]

Есть и другие, необязательные свойства, которые вы можете добавить, при желании. Например, время окончания события или расположение:

[html]
&lt;p&gt;We'll meet in the &lt;span class=&quot;location&quot;&gt; conference room of the Tower Hotel&lt;/span&gt;,   
which we have reserved until &lt;abbr class=&quot;dtend&quot; title=&quot;2009-12-18T20:30&quot;&gt;9:30pm&lt;/abbr&gt;.&lt;/p&gt;   
[/html]

С помощью панели аддона Operator в Firefox, мы можем видеть это событие на нашей странице. Мы можем использовать его несколькими способами:

<img src="http://dreamhelg.ru/wp-content/uploads/2009/12/hcalendar1.jpg" alt="hcalendar" title="hcalendar" width="600" height="290" class="aligncenter size-full wp-image-1750" />

Если я выберу экспорт в Google Calendar, он отлично перенесет в календарь данные, которые мы указали.

<img src="http://dreamhelg.ru/wp-content/uploads/2009/12/gcal.jpg" alt="gcal" title="gcal" width="600" height="276" class="aligncenter size-full wp-image-1761" />

Если хотите узнать больше о hCalendar, обратитесь к <a href="http://microformats.org/wiki/hcalendar">документации</a>.

<strong>hCard</strong>

Давайте перейдем к hCard. hCard гораздо сложнее, чем hCalendar, но мы не будет рассматривать все детали. Если в дальнейшем, вы захотите узнать больше, читайте <a href="http://microformats.org/wiki/hcard">документацию</a>.

Снова мы начинаем с основы:

[html]
&lt;div class=&quot;vcard&quot;&gt;   
&lt;/div&gt;  
[/html]

Для hCard существует только два обязательных свойства: имя (<code>n</code>) и форматированное имя (<code>fn</code>). Обычно это один и тот же элемент.

[html]
&lt;div class=&quot;vcard&quot;&gt;   
    &lt;p class=&quot;fn n&quot;&gt;John Doe&lt;/p&gt;   
&lt;/div&gt;   
[/html]

Не забираясь слишком глубоко, замечу, что этот формат подразумевает что «John» - это имя, а “Doe” – фамилия. Если вы хотите это указать, вы можете использовать классы <code>given-name</code> и <code>family-name</code>:

[html]
&lt;span class=&quot;given-name&quot;&gt;John&lt;/span&gt;   
&lt;span class=&quot;family-name&quot;&gt;Doe&lt;/span&gt;   
[/html]

Конечно, обычно требуется указать немного больше, чем просто имя. Вы можете добавить псевдоним, фото, адрес электронной почты, день рожденья, url, номер телефона, и почтовый адрес.

[html]
&lt;p class=&quot;nickname&quot;&gt;JayDee&lt;/p&gt;   
&lt;img src=&quot;http://www.johndoe.com/avatar.jpg&quot; class=&quot;photo&quot; /&gt;   
&lt;ul&gt;   
    &lt;li class=&quot;email&quot;&gt;&lt;span class=&quot;type&quot;&gt;Personal:&lt;/span&gt; &lt;span class=&quot;value&quot;&gt;johndoe@gmail.com&lt;/span&gt;&lt;/li&gt;   
    &lt;li class=&quot;email&quot;&gt;&lt;span class=&quot;type&quot;&gt;Work:&lt;/span&gt; jdoe@example.com&lt;/li&gt;   
&lt;/ul&gt;   
&lt;ul&gt;   
    &lt;li class=&quot;tel&quot;&gt;&lt;span class=&quot;type&quot;&gt;Home&lt;/span&gt;: &lt;span class=&quot;value&quot;&gt;(416) 123-4567&lt;/span&gt;&lt;/li&gt;   
    &lt;li class=&quot;tel&quot;&gt;&lt;span class=&quot;type&quot;&gt;Work&lt;/span&gt; 416-987-6543&lt;/li&gt;   
&lt;/ul&gt;   
&lt;p class=&quot;bday&quot;&gt;January 1, 1980&lt;/p&gt;   
&lt;a href=&quot;http://www.johndoe.com&quot; class=&quot;url&quot;&gt;My Website&lt;/a&gt;   
&lt;address class=&quot;adr&quot;&gt;   
    &lt;p class=&quot;street-address&quot;&gt;123 Main Street&lt;/p&gt;   
    &lt;p&gt;&lt;span class=&quot;locality&quot;&gt;Toronto&lt;/span&gt;, &lt;span class=&quot;region&quot;&gt;Ontario&lt;/span&gt; &lt;span class=&quot;postal-code&quot;&gt;M2W 4R5&lt;/span&gt;&lt;/p&gt;   
    &lt;p class=&quot;country&quot;&gt;Canada&lt;/p&gt;   
&lt;/address&gt;   
[/html]

Есть несколько вещей, на которые стоит обратить внимание:
<ul>
	<li>Все имена классов, который я использовал здесь, являются свойствами hCard.</li>
	<li>Некоторые свойства, такие как url или photo, получают свои значения из атрибутов href и src, а не из текста элемента.</li>
	<li>Такие свойства как tel и email могут иметь два дочерних свойства: type и value. Если указан только type, value все равно будет подразумеваться (как вы могли заметить во втором адресе электронной почты и номере телефона).</li>
</ul>

С помощью Оператора, я могу экспортировать эти данные…

<img class="aligncenter size-full wp-image-1751" title="hcard" src="http://dreamhelg.ru/wp-content/uploads/2009/12/hcard.jpg" alt="hcard" width="342" height="300" />

… и открыть их в Outlook.

<img class="aligncenter size-full wp-image-1752" title="outlook" src="http://dreamhelg.ru/wp-content/uploads/2009/12/outlook.jpg" alt="outlook" width="600" height="418" />

Видите? Все что мы указывали, здесь!

<strong>xFolk</strong>

xFolk – это разрабатываемый микроформат для социальных закладок. Из <a href="http://microformats.org/wiki/xfolk">документации</a>:

<blockquote>Недостаток открытых, совместимых стандартов данных является главной проблемой в использовании сервисов социальных закладок. Открытый стандарт позволит легко собирать данные социальных закладок и на их основе изобретать новые сервисы… Кроме того, открытый стандарт сделает возможным написания кода JavaScript, который будет работать на любых сервисах, как сейчас сделано на del.icio.us.</blockquote>

Чтобы использовать xFolk, оберните каждую закладку контейнером с классом «<code>xfolkentry</code>»:

[html]
&lt;li class=&quot;xfolkentry&quot;&gt;   
&lt;/li&gt;   
[/html]

Затем, вставьте ссылку и описание, используя классы «<code>taggedLink</code>» и «<code>description</code>», соответственно.

[html]
&lt;a class=&quot;taggedlink&quot; href=&quot;http://net.tutsplus.com&quot; title=&quot;Nettuts+&quot;&gt;Nettuts&lt;/a&gt;,    
&lt;span class=&quot;description&quot;&gt;the best web development blog on the planet&lt;/span&gt;.
[/html]

Просто, не правда ли? Думаю, это будет весьма полезно для блог ролла или сводки последних новостей.

<strong>XFN (XHTML Friends Network)</strong>

XFN  - это простой способ отметить человеческие взаимоотношения. С помощью атрибута <code>rel</code> (который является аббревиатурой отношений) в ваших ссылках, вы описываете свои взаимоотношения с владельцем страницы, на которую вы ссылаетесь. У вас могут быть взаимоотношения двух видов: с другими людьми или с самим собой (ссылки на другие ваши страницы). Очень легко описать другие страницы, владельцем которых тоже являетесь вы:

[html]
&lt;a rel=&quot;me&quot; href=&quot;http://JohnDoe.posterous.com&quot;&gt;My Posterous&lt;/a&gt;   
&lt;a rel=&quot;me&quot; href=&quot;http://www.flickr.com/JohnDoe&quot;&gt;My Photos&lt;/a&gt;   
&lt;a rel=&quot;me&quot; href=&quot;http://twitter.com/JohnDoe&quot;&gt;My Tweets&lt;/a&gt; 
[/html]

Очень просто, да? Достаточно указать <code>rel=”me”</code> и все готово.

Отношения с другими людьми чуть более детальные, но совсем не трудные. Существует шесть категорий, которые вы можете использовать:  дружеские, физические, профессиональные, географические, семейные, романтические. Я не буду перечислять их все (узнать больше можно по этой <a href="http://gmpg.org×fn/creator">ссылке</a>), вот несколько примеров:

[html]
&lt;ul&gt;   
    &lt;li&gt;&lt;a href=&quot;#&quot; rel=&quot;met friend&quot;&gt;Good friend&lt;/a&gt;&lt;/li&gt;   
    &lt;li&gt;&lt;a href=&quot;#&quot; rel=&quot;met muse spouse sweetheart&quot;&gt;Darling wife&lt;/a&gt;&lt;/li&gt;   
    &lt;li&gt;&lt;a href=&quot;#&quot; rel=&quot;met acquaintance neighbour&quot;&gt;Guy next door&lt;/a&gt;&lt;/li&gt;   
    &lt;li&gt;&lt;a href=&quot;#&quot; rel=&quot;friend co-worker&quot;&gt;Co-worker at Envato&lt;/a&gt;&lt;/li&gt;   
&lt;/ul&gt;   
[/html]

В первой ссылке, вы можете сообщить, с помощью атрибута <code>rel</code>, что-то вроде «Я встречал владельца страницы, ставлю ссылку на его страницу, и я его друг».  Следующее, это моя (гипотетическая) жена, которой посчастливилось быть моей супругой и возлюбленной. Я также встречал парня по соседству, но он просто знакомый и сосед. И наконец, хотя мой (снова гипотетический) коллега является другом, обратите внимание, что я никогда не встречался с ним, это можно определить как виртуальные взаимоотношения.

Я хотел бы заметить, что вы не должны использовать XFN, когда просто ставите ссылки на статью в блоге и прочее. Используйте XFN, когда вы хотите указать непосредственно на человека, когда текстом ссылки является его имя, а ссылка ведет на домашнюю страницу.

<strong>VoteLinks</strong>

VoteLinks – это интересная идея: когда вы ставите ссылку на статью, продукт, на все что угодно, добавляйте атрибут rev. Rev? Rev – это противник <code>rel</code>; в то время как <code>rel</code> описывает как страница на которую ведет ссылка связана с текущей страницей, <code>rev</code> определяет отношение текущей страницы к той, на которую идет ссылка. С помощью VoteLinks, вы можете сделать свою страницу как голосующую за материал, который доступен по ссылке. Голосовать можно за, против, или воздержатся. Например:

[html]
&lt;p&gt;Check our &lt;a href=&quot;#&quot; rev=&quot;vote-for&quot;&gt;this great blog post by Collis&lt;/a&gt; on the netsetter&lt;/p&gt;   
  
&lt;p&gt;I got terrible service at &lt;a href=&quot;#&quot; rev=&quot;vote-against&quot;&gt;the Five Seasons Grill&lt;/a&gt; last night&lt;/p&gt;   
  
&lt;p&gt;What do I think of &lt;a href=&quot;#&quot; rev=&quot;vote-abstain&quot;&gt;his site redesign&lt;/a&gt;? &lt;/p&gt;
[/html]

Насколько это полезно? Ну, представьте если Google (или любой другой поисковик) будет учитывать VoteLinks при выдаче результатов поиска. Сейчас, их система (правда, в общих чертах)  выдает то количество ссылок, которое видит поисковик. Но что если за большинство этих ссылок являются голосами пользователей против продукта или страницы? Или как насчет сайта, который будет сканировать веб, в поисках VoteLinks, и выдавать вам список наиболее популярных страниц?  Конечно это обширное поле для спекуляции, но возможно это будет интересно. Проблема в том, что для того чтобы получить какой-то эффект, использовать VoteLinks  придется очень многим людям.

<strong>Geo</strong>

Geo очень простой, у него есть только два свойства: <code>latitude</code> и <code>longitude</code>.

[html]
&lt;p class=&quot;geo&quot;&gt;&lt;strong&gt;Apple :&lt;/strong&gt;   
    (&lt;span class=&quot;latitude&quot;&gt;37.33171397409807&lt;/span&gt;   
    &lt;span class=&quot;longitude&quot;&gt;-122.03051626682281&lt;/span&gt;)   
&lt;/p&gt;   
&lt;p class=&quot;geo&quot;&gt;&lt;strong&gt;Envato :&lt;/strong&gt;   
    &lt;abbr class=&quot;latitude&quot; title=&quot;-37.812528&quot;&gt;-37&amp;deg; 48' 45.1008&quot;&lt;/abbr&gt;   
    &lt;abbr class=&quot;longitude&quot; title=&quot;144.969076&quot;&gt;144&amp;deg; 58' 8.6736&quot;&lt;/abbr&gt;.   
&lt;/p&gt;   
[/html]

Как мы уже говорили ранее, вы можете использовать элемент abbr для маскировки настоящих значений. И конечно же, Оператор распознает их.

<img class="aligncenter size-full wp-image-1753" title="geo" src="http://dreamhelg.ru/wp-content/uploads/2009/12/geo.jpg" alt="geo" width="600" height="283" />

<strong>rel-license</strong>

Если вы разрабатываете что-то для публичного использования, вы, скорее всего, знаете, что в проект необходимо включить лицензию. Вы можете назначить атрибут <code>rel</code> со значением «<code>license</code>» для ссылки на лицензионную документацию.

[html]
&lt;a href=&quot;http://creativecommons.org/licenses/by/2.0/&quot; rel=&quot;license&quot;&gt;cc by 2.0&lt;/a&gt;
[/html]

В чем смысл? В том, что Yahoo Creative Commons Search и Google Usage Right's Search, оба уже используют атрибут rel=”license” в своих алгоритмах.

<strong>rel-tag</strong>

Это очень интересный микроформат, потому что каждый блоггер назначает тэги своим статьям. Для того, чтобы использовать этот микроформат, просто добавьте <code>rel=”tag”</code> к вашей тэговой ссылке, и все готово. Теперь, с помощью нашей панели Оператора, мы можем видеть контент других сайтов, с такими же тэгами. Важно понимать, что имя тэга берется из атрибута <code>href</code>, а не из текста ссылки. Так что в следующем примере…

[html]
&lt;a href=&quot;http://www.example.com/tag/javascript&quot; rel=”tag” &gt;Client-Side Scripting&lt;/a&gt;   
[/html]

… тэгом будет «JavaScript» а не «client-side scripting».

Nettuts использует этот микроформат, но вы конечно об этом знаете, если используете Оператор.

<img class="aligncenter size-full wp-image-1754" title="reltag" src="http://dreamhelg.ru/wp-content/uploads/2009/12/reltag.jpg" alt="reltag" width="600" height="308" />

<strong>rel-nofollow</strong>

Другой простой, но эффективный тэг – это атрибут <code>rel=”nofollow”</code> к ссылке. Он используется для того, чтобы выбранная ссылка не участвовала в ранжировании страниц  в поисковых системах. И конечно такие поисковые системы как Google, Yahoo и Bing, активно используют этот микроформат. Он идеален для ссылок в комментариях к блогу, поскольку с этим атрибутом сторонние ссылки не будут оказывать влияния на ваш сайт, а также раздавать рейтинг своим владельцам.

<h3>Итак, что вы собираетесь делать?</h3>
Сегодня, мы вкратце рассмотрели некоторые полезные микроформаты, но вопрос в том, стоят ли они вашего времени? Не стоят, пока вы не начнете их использовать! Микроформаты разработаны для более удобного получения данных со страницы, но пока они не будут широко использоваться, инструментов для их использования, тоже будет мало. Несмотря на то, что многие из них могут показаться бессмысленными сейчас, надеюсь, через несколько лет они будут использоваться повсеместно.

Будете ли вы использовать микроформаты в своих сайтах?

Перевод статьи "<a href="http://net.tutsplus.com/tutorials/other/microformats-what-why-and-how/">Microformats: What, Why, and How</a>", автор <strong>Andrew Burgess</strong>]]></description>
		<wfw:commentRss>http://dreamhelg.ru/2009/12/microformats-why-what-and-how/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>

