<?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>Diz blog &#187; Плагины</title>
	<atom:link href="http://diz-blog.com.ua/category/wordpress/wordpress-plugins/feed" rel="self" type="application/rss+xml" />
	<link>http://diz-blog.com.ua</link>
	<description>Web-программирование, php скрипты, блоггинг, заработок в сети, WordPress, SEO, SMO.</description>
	<lastBuildDate>Thu, 02 Jun 2011 20:04:10 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Установка кода биржи Sape на сайт под управлением WordPress</title>
		<link>http://diz-blog.com.ua/installation-sape-code-2-wordpress-site.html</link>
		<comments>http://diz-blog.com.ua/installation-sape-code-2-wordpress-site.html#comments</comments>
		<pubDate>Fri, 28 May 2010 10:36:12 +0000</pubDate>
		<dc:creator>Diz</dc:creator>
				<category><![CDATA[Php]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Биржи ссылок]]></category>
		<category><![CDATA[Плагины]]></category>
		<category><![CDATA[sape]]></category>

		<guid isPermaLink="false">http://diz-blog.com.ua/?p=1296</guid>
		<description><![CDATA[Думаю что не преувеличу, если скажу что биржа Sape продолжает оставаться основным пассивным источником дохода не одной тысячи веб-мастеров и манимэйкеров. И те кто использует CMS WordPress сталкиваются с задачей установки Sape кода. Передо мной в свою очередь тоже встала эта проблема и я решил немного автоматизировать процесс и написать плагин, который представлю ниже Вашему [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><img src="http://diz-blog.com.ua/wp-content/uploads/2010/05/wordpress_sape.gif" alt="WordPress Sape" title="WordPress Sape" width="128" height="128" class="size-full wp-image-1321" align="left"/>Думаю что не преувеличу, если скажу что биржа Sape продолжает оставаться основным пассивным источником дохода не одной тысячи веб-мастеров и манимэйкеров. И те кто использует CMS <strong>WordPress сталкиваются с задачей установки Sape кода</strong>. Передо мной в свою очередь тоже встала эта проблема и я решил немного автоматизировать процесс и написать плагин, который представлю ниже Вашему вниманию, а заодно и расскажу как добавить сайт в биржу.</p>
<p><span id="more-1296"></span></p>
<p style="text-align: justify;">Подготовительные действия. Необходимо быть <a href="http://www.sape.ru" title="Sape — это система купли - продажи  ссылок со страниц сайтов" onclick="this.href='http://www.sape.ru/r.fTfHniujvU.php'" rel="nofollow">зарегистрированным в системе</a>. Логинимся в биржу, выбираем раздел <em>&#8220;Веб-Мастеру&#8221;</em> и кликаем на кнопку <em>&#8220;Добавить площадку&#8221;</em>.</p>
<p align="center"><img src="http://diz-blog.com.ua/wp-content/uploads/2010/05/sape_wordpress_add_site1.gif" alt="Установка sape на WordPress. Добавление площадки" title="Установка sape на WordPress. Добавление площадки" width="555" height="189" class="size-full wp-image-1299" align="center"/></p>
<p style="text-align: justify;">В открывшемся окне выбираем <em>&#8220;Для хостинга с поддержкой PHP&#8221;</em> и скачиваем zip-архив:</p>
<p align="center"><img src="http://diz-blog.com.ua/wp-content/uploads/2010/05/sape_wordpress_download_zip.gif" alt="Установка sape на WordPress. Архив с sape.php" title="Установка sape на WordPress. Архив с sape.php" width="599" height="131" class="size-full wp-image-1301" align="center" /></p>
<p style="text-align: justify;">Следуя инструкциям, распаковываем содержащуюся в нем папку и закачиваем на хостинг прямо в корень. Устанавливаем папке права 777, которые позволят скрипту биржи читать и записывать в директорию файлы (права для находящегося там файла sape.php не меняем).</p>
<p style="text-align: justify;">Скачиваем плагинчик <a title="Скачать плагин для установки кода биржи Sape на сайт под управлением WordPress" href="http://diz-blog.com.ua/files/diz-sape-code-installer.rar" target="_blank">Diz sape code installer</a>. Открываем на редактирование <strong>diz-sape-code-installer.php</strong>, где устанавливаем значение переменной $sape_id равное Вашему идентификатору в Sape, сохраняем. Традиционно кладем его в папку с плагинами и активируем в админке. По-умолчанию плагин отображает одну ссылку в футере (<strong>footer.php</strong>) в том месте, где вызывается функция <strong>wp_footer()</strong>. Но Вы можете отобразить необходимое количество ссылок в любом месте просто вставив в нужный файл шаблона следующий код:</p>
<p style="text-align: justify;">

<div class="wp_codebox"><table><tr id="p12962"><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code" id="p1296code2"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
diz_sape_code_installer_add_n<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></td></tr></table></div>

</p>
<p style="text-align: justify;">Где 2 &#8211; количество отображаемых ссылок, можете установить свое значение (Я настоятельно рекомендую не отображать более 2-х ссылок на одной странице).</p>
<p style="text-align: justify;">А вот теперь добавляем сайт в биржу, указав тематику и урл сайта:</p>
<p style="text-align: center;"><img src="http://diz-blog.com.ua/wp-content/uploads/2010/05/sape_wordpress_add_site2.gif" alt="Установка sape на WordPress. Добавление площадки 2" title="Установка sape на WordPress. Добавление площадки 2" width="390" height="108" class="size-full wp-image-1300" align="center"/></p>
<p style="text-align: justify;">И ждем когда поисковый робот проиндексирует страницы. Поздравляю, <strong>код sape установлен, WordPress сайт</strong> в системе.</p>
<p style="text-align: center;"><a title="Скачать плагин для установки кода биржи Sape на сайт под управлением WordPress" href="http://diz-blog.com.ua/files/diz-sape-code-installer.rar" target="_blank"><strong>Скачать плагин для установки кода биржи Sape на сайт под управлением WordPress</strong></a></p>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://diz-blog.com.ua/installation-sape-code-2-wordpress-site.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Еще один способ отображения архива постов</title>
		<link>http://diz-blog.com.ua/another-way-2-display-the-archive-of-posts.html</link>
		<comments>http://diz-blog.com.ua/another-way-2-display-the-archive-of-posts.html#comments</comments>
		<pubDate>Wed, 24 Feb 2010 18:57:23 +0000</pubDate>
		<dc:creator>Diz</dc:creator>
				<category><![CDATA[Ajax]]></category>
		<category><![CDATA[Php]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Плагины]]></category>
		<category><![CDATA[jquery]]></category>

		<guid isPermaLink="false">http://diz-blog.com.ua/?p=914</guid>
		<description><![CDATA[Прошло уже почти две недели как я ничего не писал в блог, могло показаться, что я забросил это дело, но нет&#8230; Все это время я изучал  мастерство &#8220;плагинописания&#8221;.   И вот результат &#8211; &#8220;сАвсЭм маленький, но очень гордый&#8221;   плагин wp-display-archives, использующий ajax.
Все прекрасно знают что такое архив постов и зачем он нужен. [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><img src="http://diz-blog.com.ua/wp-content/uploads/2010/02/archives.jpg" alt="Архивы постов Wordpress" title="Архивы постов Wordpress" width="150" height="186" class="size-full wp-image-919 alignleft" />Прошло уже почти две недели как я ничего не писал в блог, могло показаться, что я забросил это дело, но нет&#8230; Все это время я изучал  мастерство &#8220;плагинописания&#8221;. <img src='http://diz-blog.com.ua/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  И вот результат &#8211; &#8220;сАвсЭм маленький, но очень гордый&#8221; <img src='http://diz-blog.com.ua/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  плагин <strong>wp-display-archives</strong>, использующий ajax.</p>
<p style="text-align: justify;">Все прекрасно знают что такое <strong>архив постов</strong> и зачем он нужен. Мало кто из блоггеров не пользуется им. Архив обычно визуализируется либо как список ссылок (<em>&lt;ul&gt;</em>) с разбиением по месяцам и годам, либо в виде выпадающего меню (<em>&lt;select&gt;</em>), реже но встречаются еще и в виде дерева. Я хочу рассмотреть его реализацию в виде двух выпадающих списков (два <em>&lt;select&gt;</em>). Что бы дальше стало понятно, о чем идет речь &#8211; глянем на картинку, на которой продемонстрированы распространенные способы отображения архива и способ предложенный мною (<em>пункт 3</em>):</p>
<p><span id="more-914"></span><br />
<img src="http://diz-blog.com.ua/wp-content/uploads/2010/02/archive_list_evolution.gif" alt="Варианты отображения архива постов" title="Варианты отображения архива постов" width="564" height="100" class="size-full wp-image-918 aligncenter" /></p>
<p style="text-align: justify;">1-й способ реализуется вызовом функции:</p>

<div class="wp_codebox"><table><tr id="p9147"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p914code7"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> wp_get_archives<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></td></tr></table></div>

<p style="text-align: justify;"> без каких-либо параметров. Генерируется список, где каждая ссылка &#8211; архив за определенный месяц. Все красиво и очень наглядно. Минус &#8211; со временем количество ссылок увеличивается, приходится лимитировать вывод.</p>
<p style="text-align: justify;">2-й способ реализуется той же самой функцией, но только приправляется тэгами:</p>

<div class="wp_codebox"><table><tr id="p9148"><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code" id="p914code8"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">select</span> <span style="color: #000066;">onChange</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">'document.location.href=this.options[this.selectedIndex].value;'</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">option</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;&quot;</span>&gt;&lt;?php echo<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'Выбрать месяц'</span><span style="color: #66cc66;">&#41;</span>; ?&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">option</span>&gt;</span>
<span style="color: #009900;">&lt;?php wp_get_archives<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'type=monthly&amp;format=option&amp;show_post_count=1'</span><span style="color: #66cc66;">&#41;</span>; ?&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">select</span>&gt;</span></pre></td></tr></table></div>

<p style="text-align: justify;">В этом случае передаются параметры: <em>type=monthly</em> &#8211; выводить по месяцам, <em>format=option</em> &#8211; указывается что архивы будут выводиться как <em>&lt;option&gt;</em> элементы тэга <em>&lt;select&gt;</em>, <em>show_post_count=1</em> &#8211; отображать количество постов в каждом месяце. При выборе нужного месяца и года во всплывающем списке происходит переход на страницу архива. Такое представление очень компактно, но присутствует дублирование по годам (т.е. рядом с каждым месяцем выводится и год, которому он относится).</p>
<p style="text-align: justify;">3-й способ, мой &#8211; два выпадающих списка: в одном годы, в другом месяцы, при выборе года динамически (без перезагрузки страницы) подгружаются месяца и количество постов в них.</p>
<p style="text-align: justify;"><strong>Цель:</strong> Реализуем 3-й способ с помощью библиотеки <strong>jquery</strong> и оформим его в виде плагина к <strong>WordPress</strong>.</p>
<p style="text-align: justify;"><strong>Детали реализации:</strong><br />
Как подключать <strong>jquery</strong> я уже рассказывал в статье о <a title="Оповещение о новых заявках в Sape" href="http://diz-blog.com.ua/insert-ajax-form-in-post.html" target="_blank">вставке ajax формы в любой пост (запись)</a>. Исходный код плагина:</p>

<div class="wp_codebox"><table><tr id="p9149"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
</pre></td><td class="code" id="p914code9"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #666666; font-style: italic;">/*
Plugin Name: Display archives as two select
Description: Плагин отображает архив постов в виде 2-х раскрывающихся списков выбора
Version: 1.0
Author: Diz
Author URI: http://diz-blog.com.ua/
*/</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">function</span> wp_display_archives_months_list<span style="color: #009900;">&#40;</span><span style="color: #000088;">$wp</span><span style="color: #009900;">&#41;</span> 	
<span style="color: #009900;">&#123;</span>
<span style="color: #000000; font-weight: bold;">global</span> <span style="color: #000088;">$wpdb</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$months_list</span><span style="color: #339933;">=</span><span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'Январь'</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'Февраль'</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">3</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'Март'</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">4</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'Апрель'</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">5</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'Май'</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">6</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'Июнь'</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">7</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'Июль'</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">8</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'Август'</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">9</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'Сентябрь'</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">10</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'Октябрь'</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">11</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'Ноябрь'</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">12</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'Декабрь'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">isset</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$_GET</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'year'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
	<span style="color: #000088;">$_GET</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'year'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">=</span><span style="color: #009900;">&#40;</span>int<span style="color: #009900;">&#41;</span><span style="color: #000088;">$_GET</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'year'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$months_of_archive</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$wpdb</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">get_results</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;SELECT DISTINCT MONTH (<span style="color: #006699; font-weight: bold;">$wpdb-&gt;posts</span>.post_date) as `month`, COUNT(*) as `count_of_posts`
		FROM <span style="color: #006699; font-weight: bold;">$wpdb-&gt;posts</span> WHERE YEAR(<span style="color: #006699; font-weight: bold;">$wpdb-&gt;posts</span>.post_date) = &quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$_GET</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'year'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot; AND <span style="color: #006699; font-weight: bold;">$wpdb-&gt;posts</span>.post_status = 'publish' AND <span style="color: #006699; font-weight: bold;">$wpdb-&gt;posts</span>.post_type = 'post' GROUP BY MONTH (<span style="color: #006699; font-weight: bold;">$wpdb-&gt;posts</span>.post_date)&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$months_of_archive</span><span style="color: #009900;">&#41;</span> 
	<span style="color: #009900;">&#123;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span>
	<span style="color: #339933;">&lt;</span>select name<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;months&quot;</span> onChange<span style="color: #339933;">=</span><span style="color: #0000ff;">'document.location.href=this.options[this.selectedIndex].value;'</span><span style="color: #339933;">&gt;</span>
	<span style="color: #339933;">&lt;</span>option value<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;&quot;</span><span style="color: #339933;">&gt;</span>Выберите месяц<span style="color: #339933;">&lt;/</span>option<span style="color: #339933;">&gt;</span>
<span style="color: #000000; font-weight: bold;">&lt;?php</span>
	<span style="color: #b1b100;">foreach</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$months_of_archive</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$m_o_a</span><span style="color: #009900;">&#41;</span> 
		<span style="color: #009900;">&#123;</span> 
<span style="color: #000000; font-weight: bold;">?&gt;</span>	<span style="color: #339933;">&lt;</span>option value<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;&lt;?php echo(get_month_link(<span style="color: #006699; font-weight: bold;">$_GET</span>['year'],<span style="color: #006699; font-weight: bold;">$m_o_a-&gt;month</span>));?&gt;&quot;</span><span style="color: #339933;">&gt;</span><span style="color: #000000; font-weight: bold;">&lt;?</span>php <span style="color: #b1b100;">echo</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$months_list</span><span style="color: #009900;">&#91;</span><span style="color: #000088;">$m_o_a</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">month</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot; (&quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$m_o_a</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">count_of_posts</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;)&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000000; font-weight: bold;">?&gt;</span><span style="color: #339933;">&lt;/</span>option<span style="color: #339933;">&gt;</span>
<span style="color: #000000; font-weight: bold;">&lt;?php</span>
		<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">?&gt;</span>
	<span style="color: #339933;">&lt;/</span>select<span style="color: #339933;">&gt;</span>
<span style="color: #000000; font-weight: bold;">&lt;?php</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #990000;">die</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>	
    	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
add_action<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'wp'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'wp_display_archives_months_list'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">function</span> wp_display_archives_years_list<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
<span style="color: #000000; font-weight: bold;">global</span> <span style="color: #000088;">$wpdb</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000088;">$years_of_archive</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$wpdb</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">get_results</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;SELECT DISTINCT YEAR(<span style="color: #006699; font-weight: bold;">$wpdb-&gt;posts</span>.post_date) as `year` FROM <span style="color: #006699; font-weight: bold;">$wpdb-&gt;posts</span> WHERE <span style="color: #006699; font-weight: bold;">$wpdb-&gt;posts</span>.post_status = 'publish' AND <span style="color: #006699; font-weight: bold;">$wpdb-&gt;posts</span>.post_type = 'post'&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$years_of_archive</span><span style="color: #009900;">&#41;</span> 
	<span style="color: #009900;">&#123;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span>
<span style="color: #339933;">&lt;</span>script type<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span>
<span style="color: #666666; font-style: italic;">// &lt;![CDATA[</span>
<span style="color: #000000; font-weight: bold;">function</span> get_months_list<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>  
<span style="color: #009900;">&#123;</span>
<span style="color: #000000; font-weight: bold;">var</span> str <span style="color: #339933;">=</span> jQuery<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;#display_archives&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">serialize</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> 
jQuery<span style="color: #339933;">.</span>get<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'&lt;?php echo(get_bloginfo('</span>wpurl<span style="color: #0000ff;">')); ?&gt;'</span><span style="color: #339933;">,</span> str<span style="color: #339933;">,</span> <span style="color: #000000; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span>  <span style="color: #009900;">&#123;</span> jQuery<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;#months_div&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span>html<span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>  
<span style="color: #666666; font-style: italic;">//alert('&lt;?php echo(get_bloginfo('wpurl')); ?&gt;');</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #666666; font-style: italic;">// ]]&gt;</span>
<span style="color: #000000; font-weight: bold;">&lt;/script&gt;</span>
&nbsp;
<span style="color: #339933;">&lt;</span>form id<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;display_archives&quot;</span><span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>div id<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;years_div&quot;</span> align<span style="color: #339933;">=</span><span style="color: #0000ff;">'center'</span><span style="color: #339933;">&gt;</span>
	<span style="color: #339933;">&lt;</span>select name<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;year&quot;</span> onChange<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;if (this.options[this.selectedIndex].value != '') {get_months_list(); return false;}&quot;</span><span style="color: #339933;">&gt;</span>
	<span style="color: #339933;">&lt;</span>option value<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;&quot;</span><span style="color: #339933;">&gt;</span>Выберите год<span style="color: #339933;">&lt;/</span>option<span style="color: #339933;">&gt;</span>
<span style="color: #000000; font-weight: bold;">&lt;?php</span>
	<span style="color: #b1b100;">foreach</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$years_of_archive</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$y_o_a</span><span style="color: #009900;">&#41;</span> 
		<span style="color: #009900;">&#123;</span> 
	<span style="color: #000000; font-weight: bold;">?&gt;</span><span style="color: #339933;">&lt;</span>option value<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;&lt;?php echo (<span style="color: #006699; font-weight: bold;">$y_o_a-&gt;year</span>);?&gt;&quot;</span><span style="color: #339933;">&gt;</span><span style="color: #000000; font-weight: bold;">&lt;?</span>php <span style="color: #b1b100;">echo</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$y_o_a</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">year</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000000; font-weight: bold;">?&gt;</span><span style="color: #339933;">&lt;/</span>option<span style="color: #339933;">&gt;</span>
<span style="color: #000000; font-weight: bold;">&lt;?php</span>
		<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span>
	<span style="color: #339933;">&lt;/</span>select<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>div<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>div id<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;months_div&quot;</span> align<span style="color: #339933;">=</span><span style="color: #0000ff;">'center'</span><span style="color: #339933;">&gt;&lt;</span>br<span style="color: #339933;">&gt;&lt;/</span>div<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>form<span style="color: #339933;">&gt;</span>
<span style="color: #000000; font-weight: bold;">&lt;?php</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></td></tr></table></div>

<p style="text-align: justify;">
Разберем некоторые нюансы реализации. Плагин состоит их двух функций: <strong><em>wp_display_archives_months_list()</em></strong> &#8211; отображает список месяцев, <br /><strong><em>wp_display_archives_years_list()</em></strong> &#8211; отображает список годов.<br />
После того как посетитель выбрал год, выполняется ajax-запрос методом <em>GET</em> к серверу и управление получает первая функция, которая производит выборку месяцев из базы, согласно указанному году, возвращая их в виде <em>&lt;select&gt;</em>. Браузер получив эти данные, генерирует html-код.
</p>
<p style="text-align: center;"><a title="скачать WP-DISPLAY-ARCHIVES" href="http://diz-blog.com.ua/files/wp-display-archives.rar" target="_blank"><strong>Скачать плагин WP-DISPLAY-ARCHIVES</strong></a>
</p>
<p style="text-align: justify;"><strong>Инсталляция плагина:</strong> Сохраняем архив себе на диск, распаковываем и как обычно &#8211; кладем в папку <strong>\plugins\</strong>, в админке активируем плагин и в шаблоне в нужном месте (я вставил в <strong>sidebar.php</strong>) помещаем код:</p>

<div class="wp_codebox"><table><tr id="p91410"><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code" id="p914code10"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> 
<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #990000;">function_exists</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'wp_display_archives_years_list'</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> 
               <span style="color: #009900;">&#123;</span>wp_display_archives_years_list<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></td></tr></table></div>

<p style="text-align: justify;"><strong>Ссылки:</strong></p>
<ul>
<li><a title="AJAX_in_Plugins" href="http://codex.wordpress.org/AJAX_in_Plugins" target="_blank">AJAX_in_Plugins</a></li>
<li><a title="Wordpress Quick Tricks #01. AJAX и не только" href="http://anton.shevchuk.name/wordpress/wordpress-quick-tricks-01-ajax-and-more">Wordpress Quick Tricks #01. AJAX и не только</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://diz-blog.com.ua/another-way-2-display-the-archive-of-posts.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

