category.php

include (TEMPLATEPATH . '/searchform.php');
if (have_posts()) :
$posts = get_posts('numberposts=10&category='.$cat);
foreach($posts as $post) : start_wp();
setup_postdata($post);


the_time('F j, Y'); сентябрь 24, 2011
the_author(); Yantar
the_category(', '); wordpress, для продолжающих
the_ratings();
раз снежинкадва снежинкатри снежинкаа я четвертую сорву!отличная снежинка (голосов: 24)
comments_popup_link(); Комментариев: 3

the_excerpt();

Т.к. фильтры в вордпрессе появились довольно давно, написано про них уже немало. Но статьи на эту тему обычно такие длинные, что к концу забываешь ее начало. Мне фильтры нужны периодически, поэтому каждый раз разбираться с нуля - не с руки. Так что попробую сделать небольшую схематическую шпаргалку на эту тему, а дальше - гугл в помощь.
Итак, фильтры нужны, если необходимо исправить какую-то информацию, отдаваемую движком. Лезть в код движка - последнее дело, при первом же обновлении все затрется. А фильтр написал один раз, поместил в файл functions.php своей темы, и спишь спокойно.

Ну вот, например, мне понадобилось изменить ссылку, которую отдает дефолтный виджет Recent Comments (Последние комментарии). Он ставит на статью ссылку вида сайт/запись/#id_комментария - а я не хочу по каким-то причинам это id_комментария.

Итак, шаг 1. Лезем в код виджета (дефолтные виджеты располагаются в файле wp_includes/default_widgets.php. Находим там строчку, отвечающую за ссылку на комментарий:
get_comment_link($comment->comment_ID).

Шаг 2. Ищем эту самую функцию get_comment_link - и в конце ее видим строчку
return apply_filters( 'get_comment_link', $link . '#comment-' . $comment->comment_ID, $comment, $args );
Это оно! Именно здесь движок вордпресса позволяет нам что-то сделать с возвращаемым функцией значением.

Шаг 3. Немедленно этим пользуемся: в файл темы functions.php запишем:
add_filter('get_comment_link', 'my_own_comment_link');

Шаг 4. Пишем функцию, которая будет подсовывать новое значение виджету:
function my_own_comment_link($link){
    return strstr($link,'#',true); //берет строку вида "раздва/три/#четыре" и отсекает весь хвост, который начинается со знака "#"
}

Ну вот и все, подробности в Кодексе. Надеюсь, в следующий раз мне не придется снова тратить три часа, чтобы вникнуть во все это.

the_time('F j, Y'); август 15, 2010
the_author(); Yantar
the_category(', '); wordpress, для продолжающих
the_ratings();
раз снежинкадва снежинкатри снежинкаа я четвертую сорву!отличная снежинка (голосов: 18)
comments_popup_link(); Комментариев: 7

the_excerpt();

Продолжаем разговор :)
В свое время я начала вести этот блог, потому что только-только пыталась разобраться в движке WordPress (тогда еще версия 1.5 сменялась на 2.0), чтобы сделать один сайт, которым до сих пор, пожалуй, горжусь. С тех пор я сделала довольно много сайтов на вордпрессе, потом последовал некоторый перерыв, а теперь я вновь погрузилась в дебри этого движка, чтобы существенно обновить тот самый, первый сайт. И вновь возвращаюсь к своему блогу.
Читать дальше »

the_title();

Pages или Posts?

the_time('F j, Y'); февраль 26, 2008
the_author(); Yantar
the_category(', '); wordpress, для продолжающих
the_ratings();
раз снежинкадва снежинкатри снежинкаа я четвертую сорву!отличная снежинка (голосов: 53)
comments_popup_link(); Комментариев: 13

the_excerpt();

Я довольно часто пользуюсь движком WordPress в качестве CMS для маленьких и не очень сайтов. И каждый раз передо мной встает вопрос - как лучше организовывать информацию, посредством записей (Posts) или страниц (Pages)? узнать банальности и тонкости

the_time('F j, Y'); декабрь 7, 2007
the_author(); Yantar
the_category(', '); wordpress, для продолжающих
the_ratings();
раз снежинкадва снежинкатри снежинкаа я четвертую сорву!отличная снежинка (голосов: 21)
comments_popup_link(); Комментариев: 15

the_excerpt();

С тех пор как я только начала изучать WordPress меня интересовала эта проблема: как показать профиль/профайл автора, у которого нет ни одной записи. Дело в том, что Вордпресс в этом случае почему-то перенаправляет нас на ошибку 404.
И вот, спустя два года, у меня наконец дошли руки до этой проблемы.
Во-первых, в теме должен находиться файл author.php.
Во-вторых, там же должен быть файл 404.php (он обычно есть в стандартных темах).
В-третьих, в этом самом 404.php сразу же как только начинается php-код, то есть после <?php (или <?), перед get_header(); надо написать:

 
if(isset($_GET['author_name'])) {
$curauth = get_userdatabylogin($author_name);
include (TEMPLATEPATH.'/author.php');
}
elseif ($curauth = get_userdata(intval($author)))
 {
include (TEMPLATEPATH.'/author.php');
} else {
 


Ну и в конце файла, после get_footer(); и перед ?> надо поставить закрывающую фигурную скобку }.

the_time('F j, Y'); июль 23, 2007
the_author(); Yantar
the_category(', '); wordpress, links, для продолжающих
the_ratings();
раз снежинкадва снежинкатри снежинкаа я четвертую сорву!отличная снежинка (голосов: 6)
comments_popup_link(); Комментариев: 9

the_excerpt();

Есть, оказывается, такая чудная штука как PHPXref. Она анализирует php-код, составляет список его функций и классов и все это внутри себя пролинковывает. Надо будет обязательно научиться ей пользоваться.
Пока же - вот две ссылки на исходники WordPress 2.0 и WordPress 2.2 2.3. Гораздо удобнее, чем поиск по файлам в текстовом редакторе.

the_time('F j, Y'); апрель 17, 2007
the_author(); Yantar
the_category(', '); wordpress, для продолжающих
the_ratings();
раз снежинкадва снежинкатри снежинкаа я четвертую сорву!отличная снежинка (голосов: 21)
comments_popup_link(); Комментариев: 28

the_excerpt();

Блог, как известно, отличается от простых сайтов тем, что записи в нем датированы и показываются читателю в обратном порядке. Но если рассматривать WordPress не как просто блоговый движок, а как CMS, то может возникнуть потребность представить посетителю записи в алфавитном порядке.
Я бы в данном случае пользовалась страницами (Pages): тут пришелся бы ко двору тэг wp_list_pages("sort_column=post_title"). Но если уж очень хочется вывести по алфавиту именно постинги, то стоит воспользоваться уже рассмотренным ранее query_posts.
Читать дальше »

the_time('F j, Y'); апрель 12, 2007
the_author(); Yantar
the_category(', '); wordpress, для продолжающих
the_ratings();
раз снежинкадва снежинкатри снежинкаа я четвертую сорву!отличная снежинка (голосов: 64)
comments_popup_link(); Комментариев: 37

the_excerpt();

Бывает, человеку очень хочется, чтобы на первой странице его блога выводились посты только из одной категории - например, "Новости". Человек этот не особо заморачивался с темой блога, в папке темы у него не лежит ни single.php, ни category.php - все формируется по единому шаблону. Но вот для первой страницы человек решил сделать исключение.

Читать дальше »

the_time('F j, Y'); сентябрь 28, 2006
the_author(); Yantar
the_category(', '); wordpress, для продолжающих
the_ratings();
раз снежинкадва снежинкатри снежинкаа я четвертую сорву!отличная снежинка (голосов: 28)
comments_popup_link(); Комментариев: 51

the_excerpt();

Иногда, чтобы стимулировать случайного посетителя еще побродить по блогу, стоит показать ему, что у вас еще есть на заинтересовавшую его тему. Если поместить следующий незамысловатый код в шаблон single.php, он выведет десяток постов из той же категории, к которой относится просматриваемый пост:

Читать дальше »

the_time('F j, Y'); август 12, 2006
the_author(); Yantar
the_category(', '); wordpress, для продолжающих
the_ratings();
раз снежинкадва снежинкатри снежинкаа я четвертую сорву!отличная снежинка (голосов: 2)
comments_popup_link(); Комментариев: 11

the_excerpt();

Сегодня я, наконец, собралась с духом и переконвертировала базу одного из своих сайтов на вордпрессе из UTF-8 в Win1251.
Очень долго мне казалось, что это как-то глупо - менять кодировку движка с универсальной на локальную.
Читать дальше »

the_time('F j, Y'); февраль 13, 2006
the_author(); Yantar
the_category(', '); wordpress, для продолжающих
the_ratings();
раз снежинкадва снежинкатри снежинкаа я четвертую сорву!отличная снежинка (голосов: 11)
comments_popup_link(); Комментариев: 6

the_excerpt();

Меж тем, мы с kitp завели блог о погоде вокруг нас. Туда собираемся писать не только мы, только те, кто туда собираются писать еще, пока что об этом не знают.
Это я к тому, что собираюсь рассказать, как выводить информацию об авторах постинга.

Читать дальше »

endforeach;
endif;