Очень часто вижу в интернете вопрос: «Как вывести список категорий с картинкой» или «Как добавить изображение рубрикам»
А на самом деле это очень просто!
С помощью плагинов:
Если не любите плагины:
Вариант 1
В папке /wp-content/upload/ создаем папку cat
В эту папку закачиваем картинки с расширением png. Название картинки должно соответствовать slug категории.
Там, где хотим вывести список категорий вставляем код:
$siteurl = site_url(); // Получаем URL сайта foreach((get_categories()) as $category) { echo $category->cat_name; //Выводим имя категории echo '<img src="' .$siteurl.'/wp-content/uploads/cat/' . $category->slug . '.png" alt="' . $category->cat_name . '" />'; // Выводим изображение }
Вариант 2
В functions.php:
Код:
// Снимаем фильтр на запрет html тэгов в описании категорий. $filters = array('pre_term_description', 'pre_link_description', 'pre_link_notes', 'pre_user_description'); foreach ( $filters as $filter ) { remove_filter($filter, 'wp_filter_kses'); } foreach ( array( 'term_description' ) as $filter ) { remove_filter( $filter, 'wp_kses_data' ); }
В описании категории теперь можно вставлять картинку в html виде, типа:
Код:
Это иконка категории: <img src="http://site.com/pic.png">, а это описание.
Вариант 3
Либо можно пойти еще проще:
В админке в описании категории прописываем на первой строке — описание, а на второй полный урл к иконке рубрики, например:
Код:
Описание рубрики http://site.com/pic.png
Затем в archive.php:
Код:
<?php $catdesc = category_description(); $catdesc = explode("\n", $catdesc); $lazha = array("\n", "<p>", "</p>"); $catdesc = str_replace($lazha, '', $catdesc); echo $catdesc[0]; echo '<img src="'.$catdesc[1].'"/>'; ?>
Тем самым сверху отобразится описание, а ниже будет желанная картинка.