Отображаем список рубрик в две колонки

Теги: , 21 декабря 2009

Как вы, наверняка, знаете, для вывода списка рубрик в WordPress используется функция wp_list_categories(). Манипулируя этой функцией с помощью PHP, мы можем реализовать вывод этого списка в две колонки.

Прошу обратить внимание, что этот способ годится в случае, если нужно вывести только родительские рубрики (без подрубрик).

В соответствующее место шаблона вашей WordPress-темы вставьте следующий PHP-код:

<?php
$cats = explode("<br />", wp_list_categories('title_li=&echo=0&depth=1&style=none'));
$cat_n = count($cats) - 1;
for ($i=0; $i < $cat_n; $i++) {
	if ($i < $cat_n / 2) {
		$catLeft = $catLeft.'<li>'.$cats[$i].'</li>';
	} elseif ($i >= $cat_n / 2) {
		$catRight = $catRight.'<li>'.$cats[$i].'</li>';
	}
}
?>

А после него вот такой HTML-код:

<div class="cats">
	<ul class="catLeft">
		<?php echo $catLeft;?>
	</ul>
	<ul class="catRight">
		<?php echo $catRight;?>
	</ul>
</div>

Теперь остается расположить списки правильно с помощью CSS (добавьте эти стили в файл style.css вашей темы):

.cats {
	width: 100%;
	overflow: hidden;
}
.catLeft,
.catRight {
	float: left;
	width: 50%;
}
Комментариев: 16
(голосов: 6, средняя оценка: 3.67 из 5)
Loading ... Loading ...

Заменяем символ [...] на ссылку “читать далее”

В прошлый раз мы рассмотрели вариант, когда из анонса необходимо удалить символ [...].

Если же этот символ необходимо заменить на ссылку “читать далее“, то функция, которую нужно вставить в файл functions.php, будет выглядеть следующим образом:

function trim_excerpt($text) {
	global $post;
	$moreLink = ' ... <a href="' . get_permalink($post->ID) . '">читать далее &raquo;</a>';
	$text = str_replace('[...]', $moreLink, $text);
  return $text;
}
add_filter('get_the_excerpt', 'trim_excerpt');

Если потребуется, то текст ссылки можно заменить на любой другой.

Комментариев: 3
(голосов: 1, средняя оценка: 5.00 из 5)
Loading ... Loading ...

Выводим записи между двумя указанными датами

Теги: , 11 декабря 2009

Для этого в тех файлах шаблона, где необходимо отобразить записи, опубликованные между двумя конкретными датами, находим начало цикла:

<?php if (have_posts()) : ?>
	<?php while (have_posts()) : the_post(); ?>

и добавляем перед ним следующий код:

<?php
function filter_where($where = '') {
	$where .= " AND post_date >= '2009-11-07' AND post_date <= '2009-11-25'";
	return $where;
}
add_filter('posts_where', 'filter_where');
query_posts($query_string);
?>

Даты в двух местах, естественно, нужно заменить на нужные. Формат даты: год-месяц-день. 1-я дата – начала диапазона, 2-я – конец диапазона.

Оставить комментарий
(голосов: 3, средняя оценка: 3.67 из 5)
Loading ... Loading ...