WordPress: разработка, ссылки

Думал, фраза «разработка на WordPress» громко звучит. Ну, уж нет. WordPress имеет много собственных функций (еще ссылка). Было бы глупо и громоздко придумывать эти велосипеды самому. Пройдусь по возникшим у меня вопросам и получившимся решениям.

Надо было оформить вывод рубрики новостей. Последнее сообщение фиксировать вверху на всю ширину контента, а остальные выводить тремя колонками по девять штук на страницу. Использовал два цикла. В таблице terms нашел ID категории =11. По аналогии с category.php создал category-11.php. В нем переход к loop-category-11.php (по loop-category.php). Там создал сначала запрос на последний пост.
$args = array('cat' => 11, 'orderby' => 'date', 'order' => 'DESC', 'showposts' => 1, 'posts_per_page' => 10);
$my_query = new WP_Query($args);

Использовал две ссылки: несколько примеров использования query_posts и форматы объявления query_posts() на английском.

Дальше первый цикл для последней записи. Ее оформление в style.css. Потом второй цикл для остальных записей. Тут была проблема с их кривым выводом. Искал причину. Наткнулся на статейку не забывайте использовать wp_reset_query!. Не помогло. А в кодексе оказалось прямое решение этой задачки в разделе «Множественные Циклы в Действии», с использованием update_post_caches($posts).

Оформил вывод отдельной новости с помощью loop-single-11.php. Смотрите иерархию шаблонов WordPress. Был вопрос с тем, что ссылки на следующий/предыдущий посты включали все категории, а не только новости. Через поиск вышел на описание тег шаблона: previous_post_link. Увидел, что функция previous_post_link() находится в wp-includes/link-template.php. Вопросик решил. Поначалу немного запутался с запятыми.
неправильно:
< div class="nav-previous">< ?php previous_post_link( '%link', '< span class="meta-nav">' . _x( '«', TRUE , 'twentyten' ) . '< /span> %title'); ? >< /div>
правильно:
< div class="nav-previous">< ?php previous_post_link( '%link', '< span class="meta-nav">' . _x( '«', 'Previous post link', 'twentyten' ) . '< /span> %title', TRUE ); ? >< /div>

Полезным было сообщение как задать постам разных категорий индивидуальное оформление. Сделал отсылку к обработчику категории, при его наличии. Поковырялся с файлами. Почему-то file_exists() не отрабатывал. Использовал if (@fopen($url, «r»)), по статье на хабре.

Не мог найти константы путей WordPress. Поначалу использовал информер WordPress get_bloginfo. Потом увидел TEMPLATEPATH и ABSPATH. Для вывода названия рубрики подошел single_cat_title. Хотел еще сделать дату ссылкой на все посты за эту дату, но со ссылками WordPress пока не разобрался.

По ходу попадались еще полезные ссылочки.

Вот примеры решений некоторых задач на WP:
17 примеров на wordpressinside и
20 примеров на sonika.ru/blog

Учебник WP. Пока не читал. Но впечатляет содержание.

И просто полезные блоги WP, которые не замерзли в каком-то году, а актуальны сейчас и ведутся:
n-wp.ru
wp-starter.ru

——————-

Еще ссылки в тему.

Upd. 29/05/2011: blogto4ka.ru, подружить query_posts и постраничную навигацию

Upd. 23/06/2011: wp-kama.ru, 3 способа построения циклов в WordPress

Запись опубликована в рубрике WordPress с метками . Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *