Wordpress сделать архив. Как правильно оформить страницы архивов WordPress. Категории, тэги и пользовательские классификации

Вайбер на компьютер 17.03.2019
Вайбер на компьютер

Буквально вчера выполнял очередное задание с GoGetLinks и на одной из страниц превысил допустимое число внутренних ссылок. Глянул так на блог что можно было убрать и понял — архив. Хотя, в принципе, конечно, все это затевалось не ради GGL, сам архив я уже давно хочу как-то модернизировать для всех своих блогов, но никак не нахожу времени чтобы покопаться с паре тройке плагинов и найти оптимальный для себя. Если так призадуматься, то пользы от 10-20 ссылок в сайдбаре на архивы блога не особо много, вряд ли кто-то будет изучать информацию, которая вполне вероятно уже не актуальна. К тому же куда более удобно искать посты по wordpress категориям, тегам или поиску. Лично у меня нет желания убирать архив на совсем, пусть себе статьи линкуются, но хотелось бы разместить его на отдельной странице — что-то вроде карты сайта, но по месяцам. Но сегодня не об этом, расскажу о функции wp_get_archives и ее возможностях.

Итак, функция wp_get_archives используется для отображения архива блога по датам. Информация может выводиться в любом месте шаблона. Синтаксис функции следующий:

По умолчанию аргумент имеется значения:

"monthly" , "limit" => , "format" => "html" , "before" => , "after" => , "show_post_count" => false , "echo" => 1 ) ; ?>

"monthly", "limit" => , "format" => "html", "before" => , "after" => , "show_post_count" => false, "echo" => 1); ?>

То есть без каких-либо настроек функция wp_get_archives выводит:

  • архив по месяцам
  • отображает все доступные ссылки без ограничения в количестве
  • выводит архив в формате списка LI
  • перед каждой ссылкой ничего не добавляется
  • и количество постов за период тоже не показывается

Параметры wordpress функции wp_get_archives могут принимать следующий значения.

type (string) — тип архивных ссылок (дат), которые выводятся:

  • yearly — года
  • monthly — месяцы (по умолчанию)
  • daily — дни
  • weekly — недели
  • postbypost — посты, отображаемые по дате (используется часто в шаблонах wordpress для вывода списка последних постов блога. Про это я уже как-то рассказывал в статье как отображать последние посты и комментарии блога, популярные статьи. http://tods-blog.com.ua/wordpress/lastpost-comments/
  • alpha — в алфавитном порядке, то же самое, что и postbypost, но вместо даты статьи отображаются по алфавиту.

limit — количество записей архива для отображения, по умолчанию выводит все.

format (string) — формат ссылок для списка архива, есть такие варианты:

  • html — в виде обычного списка LI (по умолчанию)
  • option — в виде выпадающего списка (

    Выводим все статьи блога в алфавитном порядке (можно использовать в какой-то степени в качестве карты сайта):

    Хук widget_archives_args

    Если вам нужно изменить параметры базового виджета Архива в WordPress, то можно использовать хук widget_archives_args. Следующий пример позволяет выводить в сайдбаре архив по годам с ограничением числа записей = 7. Добавить код нужно в functions.php.

    function filter_widget_archives_args( $args ) { $args [ "type" ] = "yearly" ; $args [ "limit" ] = "7" ; return $args ; } ; add_filter( "widget_archives_args" , "filter_widget_archives_args" , 10 , 1 ) ;

    function filter_widget_archives_args($args) { $args["type"] = "yearly"; $args["limit"] = "7"; return $args; }; add_filter("widget_archives_args", "filter_widget_archives_args", 10, 1);

    Вот, в принципе, и все:) Если есть какие-то вопросы, задавайте в комментариях. Лучший способ разобраться в работе функции wp_get_archives попробовать ее на практике.

    P.S. Постовой. Для любителей почитать предлагаем интересный проект, где можно скачать электронные книги олнайн. На сайте есть разбиение по жанрам и авторам — искать достаточно легко.
    Качественная декоративная косметика, женская и мужская парфюмерия в интернет магазине Makeup, бесплатная доставка по Украине.

    Думаю, начинающий вебмастер, рано или поздно сталкивается с проблемой вывода архива записей, будь то блог или портал. И многие CMS имеют такую возможность, ну или подразумевают её наличие. Так и с системой WordPress, множественные функции вполне способны реализовать архивы записей: по рубрикам, по авторам, по месяцам и т.п. Только отдельной страницы под эти нужды разработчиками WP не предусмотрено, правда, некоторые темы WordPress могут содержать шаблон страницы – «архивы».

    Конечно, в системе присутствуют соответствующие виджеты, которые не только выводят список рубрик блога, но и отдельный список записей по месяцам. Только не всегда Sidebar сайта позволяет вывести столь крупные блоки, которые со временем разрастаются, занимая почти всё место боковой панели. И тут, может придти на помощь создание отдельной странички под вывод архивов публикаций, что более удобнее в сравнении с той же « »…

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

    Сперва берём на вооружение код вывода списка рубрик, используемый в стандартном виджете:

    Код настроен на показ счётчика записей.

    Код вывода архива по месяцам

    А вторым вариантом вывода архивов WordPress станет стандартный виджет «Архивы», который отображает прошлые записи по месяцам, начиная с первой публикации:

    Также, как и первый код, этот настроен на показ числа записей.

    Как сделать страницу архивов?

    Чтобы объединить вывод двух блоков на одной странице, понадобиться создать новый шаблон на основе «Page.php»,то есть на базовом шаблоне страницы WordPress, присутствующем в каждой теме.

    Для этого лучше скопировать файл темы . И начать редактирование не посредственно на компьютере, например через редактор «Notepad++».

    В коде находим строку, отвечающую за вывод содержимого страницы:

    И сразу после неё можно вставлять коды блоков архива (или заменив системный вывод «content» на соответствующие коды). Оформление отображения можно отредактировать по своему усмотрению.

    В самом верху кода добавляем несколько строчек, которые определят его как новый шаблон страницы. Например, назовём его «Archives»:

    После можно закрыть редактирование, сохранив внесённые изменения. Переименовываем полученный файл «page.php» в «Archives.php» и загружаем в каталог сайта по пути темы WordPress.

    Дальнейшее редактирование можно продолжить через админ – панель (Внешний вид -> Редактор -> Archives.php). А после создайте новую страницу, дайте ей соответствующее название и справа в выпадающем меню выберете новый шаблон «Archives».

    Пример кода страницы «Архивы» с расположением блоков в две колонки:

    Архив публикаций

    По месяцам:


    По рубрикам:

    Примечание! Данный пример не будет корректно отображаться на вашем блоге, для того чтобы скопировать — придётся внести изменения в соответствии с вашем шаблоном темы WordPress.

    Если я спрошу вас, какой стандартный тип страниц в WordPress используете реже всего, то, скорее всего, ваш ответ будет – шаблон архивов. Или, что еще вероятнее, вы вообще даже не слышали о шаблоне архивов – настолько он непопулярен. Причина проста. Стандартный способ использования архивов далек от понимания «дружественного к пользователям».

    Давайте поправим это сегодня! Давайте создадим страницу архивов WordPress, которая будет действительно полезной. Самая приятная вещь – то, что вы сможете использовать эти архивы в любой современной теме WordPress, установленной на вашем сайте. Однако давайте сначала разберемся, что мы подразумеваем под «страницей архивов»?

    История архивов WordPress

    В WordPress вы работаете с массой разных шаблонов и структурных элементов, которые входят в стандартную конфигурацию. Если взглянуть на список директорий стандартной темы Twenty Fifteen, то мы увидим следующее:

    • Страница ошибок 404
    • Страница архивов (наш сегодняшний гость)
    • Страница вложенных изображений
    • Индексная страница (главная страница)
    • Шаблон страниц (для стандартных страниц)
    • Страница результатов поиска
    • Страницы отдельных записей и вложений

    Несмотря на различные цели, все эти страницы очень похожи по своей структуре, и зачастую они отличаются лишь несколькими участками или несколькими строками кода. Единственное видимое различие между индексной страницей и архивной страницей – это дополнительный заголовок вверху, который меняется в зависимости от просматриваемой страницы.

    Идея, которая была положена в основу архивной структуры, заключается в том, чтобы предложить администратору блога удобный и простой способ вывода архивов по различным критериям. В конце концов, все эти различные архивные страницы – это просто версии индексной страницы; они выводят контент, опубликованный в определенный временной промежуток, определенным автором, с определенными метками и рубриками.

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

    Вот, что я имею в виду. В данный момент единственный встроенный способ вывода архивных ссылок на сайте WordPress – это вывод через виджет. Таким образом, если вы хотите разрешить пользователям углубляться в архивы, причем вы хотите сделать это понятным для людей способом, вам пришлось бы посвятить весь сайдбар под одни архивы (лишь для того, чтобы раскрыть разные виды структурирования: архивы по дате, архивы рубрик, архивы меток, авторские архивы и т.д.).

    Нам нужен какой-то посредник, какая-то страница, которая будет приветствовать посетителя, объяснять ему, что он находится в архиве, и указывать на тот контент, которым он интересуется, либо предлагать популярный контент.

    Именно по этой причине мы и решили создать произвольную страницу архивов.

    Как создать произвольную страницу архивов в WordPress

    Вот то, что мы собираемся сделать. Наша произвольная архивная страница будет основана на специальном шаблоне страниц. Этот шаблон позволит нам сделать следующее:

    • Добавить произвольное сообщение (может содержать текст, изображения, форму регистрации и т.д. – стандартный контент WordPress).
    • Выводить 15 последних записей (настраивается)
    • Отображать ссылки на авторские архивы
    • Отображать ссылки на архивы по месяцам
    • Иметь дополнительные области виджетов (чтобы выводить такие вещи, как популярный контент, рубрики, теги).

    Наконец, страница будет адаптивной, и ее можно будет использовать на любом сайте.

    Однако нам действительно понадобится взять за основу некоторую тему. Я воспользовался темой Zerif Lite . Признаюсь, что это одна из наших собственных тем. Тем не менее, это одна из 10 самых популярных тем, опубликованных в прошлом году в каталоге тем WordPress. Поэтому я надеюсь, что вы воспользуетесь ей.

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

    Начинаем с основного файла

    Самая лучшая модель для создания архивной страницы — это файл page.php вашей текущей темы, на что есть некоторые причины:

    • Его структура уже оптимизирована для вывода произвольного контента в пределах основного контентного блока
    • Это, пожалуй, один из самых простых шаблонов страниц в структуре вашей темы

    Поэтому воспользуемся файлом page.php темы Zerif Lite. Я создам его копию и назову ее tmpl_archives.php.

    (Убедитесь в том, что вы не назвали страницу page-archives.php. Все названия файлов, начинающиеся с «page-», будут рассматриваться как новый шаблоны страниц в пределах основной иерархии файлов WordPress тем. Именно по этой причине мы использовали префикс tmpl_).

    Изменим ее на следующее:

    Все, что делает эта строка – это передает соответствующий контентный файл для нашей страницы архивов.

    Вы можете удалить и другие элементы, которые выглядят лишними, с вашей архивной страницы (как комментарии, к примеру), однако убедитесь в том, что вы удалили все элементы, которые относятся к HTML-структуре. И, в целом, не бойтесь экспериментировать. В конце концов, если что-то вдруг перестанет работать, вы всегда можете вернуться к предыдущему коду и легко провести его отладку.

    Кроме того, не забывайте о стандартном комментарии — описании шаблона, — который должен находиться в самом начале вашего файла (в нашем случае, в файле tmpl_archives.php):

    В конце концов, мы останемся со следующей структурой (некоторые элементы удалены из нее для удобства):

    В этом файле нам нужно будет удалить все лишнее, оставив только структурные элементы, а также вызовы базовых WordPress-функций:

    >

    Комментарий-заполнитель в самой середине кода – то, куда мы затем вставим наши произвольные элементы.

    Добавляем произвольное приветствие

    Об этом уже позаботился сам WordPress. Нам достаточно вставить следующую строку:

    Добавляем новые области виджетов

    Давайте настроим новые области виджетов в WordPress, используя стандартный процесс. Мы сделаем это с помощью дополнительного файла функций, чтобы сохранить вещи реюзабельными от темы к теме. Мы создадим новый файл, archives-page-functions.php, поместив его в основной каталог темы, а также зарегистрируем две новые области виджетов:

    If(!function_exists("archives_page_widgets_init")) : function archives_page_widgets_init() { /* First archive page widget, displayed to the LEFT. */ register_sidebar(array("name" => __("Archives page widget LEFT", "zerif-lite"), "description" => __("This widget will be shown on the left side of your archive page.", "zerif-lite"), "id" => "archives-left", "before_widget" => "

    ", "after_widget" => "
    ", "before_title" => "

    ", "after_title" => "

    ",)); /* Second archive page widget, displayed to the RIGHT. */ register_sidebar(array("name" => __("Archives page widget RIGHT", "zerif-lite"), "description" => __("This widget will be shown on the right side of your archive page.", "zerif-lite"), "id" => "archives-right", "before_widget" => "
    ", "after_widget" => "
    ", "before_title" => "

    ", "after_title" => "

    ",)); } endif; add_action("widgets_init", "archives_page_widgets_init");

    If(!function_exists("archives_page_styles")) : function archives_page_styles() { if(is_page_template("tmpl_archives.php")) { wp_enqueue_style("archives-page-style", get_template_directory_uri() . "/archives-page-style.css"); // standard way of adding style sheets in WP. } } endif; add_action("wp_enqueue_scripts", "archives_page_styles");

    Это условная операция постановки в очередь. Она будет работать только в том случае, если посетитель просматривает архивную страницу.

    Нужно не забыть включить наш новый файл archives-page-functions.php путем добавления следующей строки в самый конец файла functions.php текущей темы:

    Require get_template_directory() . "/archives-page-functions.php";

    Наконец, новый блок, который мы будем использовать в нашем основном файле content-tmpl_archives.php, достаточно простой. Поместите следующий код под вызовом the_content();:

    Все, что нам теперь останется – это позаботиться о единственно недостающем файле, archives-page-style.css. Однако давайте оставим его на потом, поскольку мы будем использовать его в качестве хранилища всех стилей нашей произвольной архивной страницы, в том числе и для виджетов.

    Вывод последних 15 записей

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

    Вы, вероятно, спросите, почему именно 15 записей? Не знаю, просто взял это число с потолка. Давайте сделаем его настраиваемым с помощью произвольных полей.

    Вот, что мы сделаем:

    • Задаем количество записей через произвольное поле archived-posts-no.
    • Если число не является корректным, шаблон будет использоваться стандартное значение в 15 последних записей.

    Ниже представлен код, который делает это. Поместите его под предыдущей секцией в файле content-tmpl_archives.php, который обрабатывает новые области виджетов.

    ID, "archived-posts-no", true)); /* Here, we"re making sure that the number fetched is reasonable. In case it"s higher than 200 or lower than 2, we"re just resetting it to the default value of 15. */ if($how_many_last_posts > 200 || $how_many_last_posts < 2) $how_many_last_posts = 15; $my_query = new WP_Query("post_type=post&nopaging=1"); if($my_query->have_posts()) { echo "

    "; echo "
      "; $counter = 1; while($my_query->have_posts() && $counter <= $how_many_last_posts) { $my_query->the_post(); ?>
    1. ">
    "; wp_reset_postdata(); } ?>

    Все, что делает этот код – это получает значение произвольного поля, задает количество выводимых записей, после чего выбирает эти записи из базы данных, используя WP_Query();. Также я использую некоторые иконки Font Awesome, чтобы добавить данному блоку некоторый шарм.

    Вывод ссылок на авторские архивы

    Этот раздел полезен только в том случае, если вы работаете с блогом с многочисленными авторами. Пропустите его, если у вас один автор.

    Эта функциональность может быть реализована при помощи простого блока кода, который нужно поместить в наш файл content-tmpl_archives.php (под предыдущим блоком):

    Our Authors

    Мы перейдем к стилям через пару минут. В данный момент обратите внимание на что, что все делается с помощью вызова функции wp_list_authors().

    Вывод ссылок на архивы по месяцам

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

    Вот, как это будет выглядеть в файле content-tmpl_archives.php:

    By Month

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

    Полный шаблон архивной страницы

    Давайте взглянем на полный файл content-tmpl_archives.php, который является нашим основным файлом для вывода произвольного архива:

    >

    ID, "archived-posts-no", true)); if($how_many_last_posts > 200 || $how_many_last_posts < 2) $how_many_last_posts = 15; $my_query = new WP_Query("post_type=post&nopaging=1"); if($my_query->have_posts()) { echo "

    Last ".$how_many_last_posts." Posts

    "; echo "
      "; $counter = 1; while($my_query->have_posts() && $counter <= $how_many_last_posts) { $my_query->the_post(); ?>
    1. " rel="bookmark" title="Permanent Link to ">
    "; wp_reset_postdata(); } ?>

    Our Authors

    By Month

    Таблица стилей

    Наконец, давайте посмотрим на таблицу стилей. Вот как выглядит файл archives-page-style.css:

    Archives-widget-left { float: left; width: 50%; } .archives-widget-right { float: left; padding-left: 4%; width: 46%; } .archives-latest-section { } .archives-latest-section ol { font-style: italic; font-size: 20px; padding: 10px 0; } .archives-latest-section ol li { padding-left: 8px; } .archives-authors-section { } .archives-authors-section ul { list-style: none; text-align: center; border-top: 1px dotted #888; border-bottom: 1px dotted #888; padding: 10px 0; font-size: 20px; margin: 0 0 20px 0; } .archives-authors-section ul li { display: inline; padding: 0 10px; } .archives-authors-section ul li a { text-decoration:none; } .archives-by-month-section { ext-align: center; word-spacing: 5px; } .archives-by-month-section p { border-top: 1px dotted #888; border-bottom: 1px dotted #888; padding: 15px 0; } .archives-by-month-section p a { text-decoration:none; } @media only screen and (max-width: 600px) { .archives-widget-left { width: 100%; } .archives-widget-right { width: 100%; } }

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

    Давайте посмотрим, как это будет выглядеть на практике. Вот сайт, который имеет массу контента в архиве:

    Как интегрировать этот шаблон в любую тему

    Произвольная страница архивов, которую мы создали здесь, представлена для темы Zerif Lite, которая имеется в официальном каталоге WordPress. Однако, как я уже говорил, она может использоваться вместе с любой темой. Вот как это сделать:

    1. Берем файлы archives-page-style.css и archives-page-functions.php, которые мы создали в руководстве, после чего помещаем их в главный каталог темы.
    2. Редактируем functions.php темы и добавляем следующую строку в самый конец: require get_template_directory() . ‘/archives-page-functions.php’;
    3. Берем файл page.php темы, делаем его копию, переименовываем ее, меняем вызов функции get_template_part() на get_template_part(‘content’, ‘tmpl_archives’);, после чего добавляем описательный комментарий в самое начало: /* Template Name: Archive Page Custom */.
    4. Берем файл content-page.php вашей темы, делаем его копию, переименовываем его в content-tmpl_archives.php, и добавляем в него все произвольные блоки, которые мы создали в руководстве, сразу под вызовом функции the_content();.
    5. Тестируем и наслаждаемся.

    Вот как это будет выглядеть в стандартной теме Twenty Fifteen:

    Как создать интересную и красивую страницу просмотра архива рубрики? Этот вопрос может заинтересовать многих, так как по умолчанию архивы в WordPress выводятся в одинаковом виде, который определяет применяемая тема. Как изменить страницу архивов и ее сделать привлекательной и разной для разных рубрик сайта? Вот вопрос, который меня заинтересовал, и ответ на него я, кажется, нашел.

    Как вы знаете, есть страницы просто календарных архивов по месяцам, а есть страницы архивов рубрик. Разница в том, что в первом случае вам показываются просто все записи за месяц, а в архивах рубрики вы увидите записи только к определенной рубрике. Но Выглядят такие страницы обезличенно и одинаково. Как их разнообразить? Есть несложный выход. Но сначала немного о конструкции вашего WordPress.

    В любой теме WordPress существует файл с названием archive.php. По крайней мере, почти в любой. Этот файл построен таким образом, чтобы можно было выводить все варианты вашего общего архива статей: по названию категории, по дате публикации, по месяцу или году публикации, по автору (если их несколько). Также может быть организован как отдельная единица файл category.php. В таком случае он будет выводить записи из архива по конкретной категории (рубрике).

    Теперь можно рассмотреть вопрос о том, как сделать, чтобы для одной категории сайт отображался один вариант страницы архивов, а для другой категории он несколько отличался, например, коротким анонсом конкретной категории? Вы знаете, что при создании новой рубрики в панели администратора сайта есть поле под названием «Описание». Вот как выглядит страница для создания новых рубрик:

    Почти все темы WordPress реализуют отображение на странице рубрики ее описания, если его добавить в это поле. Это действие и визуально разнообразит страницу, и улучшает seo-показатели этой страницы. Этим можно воспользоваться, и немного переделать нашу страницу вывода архивов рубрик. Но бывает и так, что вывод описания не поддерживается. Если вы обнаружили, что ваша тема WordPress не поддерживает вывод Описания рубрики, смело делайте следующий шаг:

    В файл archive.php (или category.php) прописываете следующий код:

    Эта строчка может выглядеть немного по-другому, например, вот так:

    Такая строчка не отображает описание категории, поэтому ее нужно поменять на ту, которая приведена выше. То есть, в первом примере функция обозначает приблизительно следующее: Если у есть заполненное Описание рубрики, то его необходимо отображать. Каждой рубрике на сайте присваивается свой идентификатор, как, впрочем, и каждой записи. И совершенно не нужно устанавливать какой-то там плагин, чтобы узнать этот ID – он ведь лежит на поверхности. Если вы просто наведете курсов на название рубрики в панели администратора в разделе «Рубрики», то внизу в браузере увидите, что отображается адрес, по которому расположена эта рубрика, и ее идентификатор. Вот, например:

    На скришоте видно, что для рубрики «Новости» ее идентификатор ID равен 1. Глупо было бы после этого использовать специальный плагин, который указывает идентификатор – плагин Reveal IDs. Он нам просто не нужен.

    Как сделать отображение рубрик – наконец-то мы подошли и к этому вопросу. В окне ввода Описания, о котором мы говорили выше, можно использовать не просто текст, а HTML код – так ваше описание будет и роботами восприниматься лучше, и выглядеть будет приятнее и понятнее, если, например, кое-какие важные слова выделить тегами или . Но это – стандартный прием. Нам же нужно сделать так, чтобы все рубрики отображались по-разному. Для этого можно добавить изображения для каждой рубрики. Вот здесь уже не обойтись без плагина под названием CategoryTinymce. Ка его скачать и установить – вы уже знаете. Об этом я пишу почти в каждой статье с описанием какого-либо плагина. Например, вы можете почитать об этом в статье « ».

    После установки плагина CategoryTinymce окно редактирования рубрик и их описания станет вот таким:

    Теперь вы можете не только добавлять описание для каждой рубрики, но и сопровождать ее своим изображением, используя стандартный визуальный редактор WordPress. И последнее – как сделать свою страницу с описанием и изображением для каждой рубрики? Вы знаете, как узнавать идентификатор рубрики. Это-то нам и поможет. Считаем, что поля «Описание рубрики» и изображение заполнены. Теперь скопируйте файл category.php и переименуйте его в файл category-ID.php, где ID - идентификатор той рубрики, для которой вы делали описание.

    Если нет файла archive.php (о чем я предупреждал выше), то скопируйте файл archive.php, и сохраните его под именем той рубрики, которая вам нужна. То есть, используйте в его имени идентификатор рубрики. Вот и все – теперь для каждой из ваших рубрик, для которых вы создали такие файлы с именем идентификатора, будет отображаться и описание, и изображение для рубрики. Сделайте свой сайт красивее!

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

    Сразу покажу, что получим в результате.

    Вид архивов wordpress: архив рубрик до измения
    Архив рубрик с убранными миниатюрами и ссылкой подробнее.

    Важно! Так как данная задача решается изменением кода шаблона, то перед работами делаем (базу данных+файлы сайта). В дополнении, делаем две копии рабочего шаблона, одну для правки, вторую для восстановления неправильной правки.

    Меняем внешний вид архивов WordPress

    Чтобы изменить внешний вид архивов WordPress, нужно найти, вернее, определить, какой файл в вашем рабочем шаблоне выводит архивы. В большинстве шаблонов все архивы выводятся единым файлом, называется он (archive.php).

    Повторяюсь, для безопасности потерять сайт, не используем редактор в административной панели сайта, а правим заранее сделанные резервные копии файлов шаблона.

    В текстовом редакторе (типа Notepad++), открываем файл archive.php и начинаем правку. В файле archive.php (в конце файла) ищем функцию, выводящую блог архива:

    Имя это имя файла, который используется для вывода блога архивов.

    Первая идея выполнения задачи проста : нам нужно поменять код файла выводящего архивы (content.php), а именно, убрать в нем несколько функций, и тем самым сменить внешний вид всех архивов сайта (рубрик, авторов, дат и т.д.).

    Но возникает вопрос, если мы поменяем код файла шаблона, он вернется в прежнее состояние после первого обновления шаблона, нам это не нужно. Поэтому, мы не будем редактировать файл content.php, а копируем его и создаем свой файл, под другим названием, например content-cat.php и редактируем его .

    Ищем в файле функцию, выводящую миниатюры. Функция вывода миниатюр будет вверху. Убираем вывод миниатюры.

    или и убираем строку с ‘Read More’, ‘название шаблона’.

    Созданный и отредактированный файл content-cat.php сохраняем и заливаем в каталог сайта в папку рабочего шаблона. Этот файл появится в административной панели сайта на вкладке Внешний вид→Редактор.

    Переходим ко второму шагу. В файле, который выводит архивы (archive.php), меняем название файла content на content-cat .

    Сохраняемся и смотрим результат. Если, что те не так, система покажет ошибку, файл ошибки и строку ошибки. Для исправления ошибки, сохраненные резервные файлы шаблона возвращаем на место и повторяем все заново.

    Совет. Если хотите почитать больше, о тегах шаблонов и стандартных функциях WordPress, обратите внимание на этот сайт: https://wp-kama.ru . Это не реклама и даже не ссылка, этот сайт понятнее, чем официальный сайт WordPress, в разделе тегов шаблонов и функций.

    В развитие темы

    По-моему, тема анонсов на сайтах WordPress требует продолжения. В ближайших постах, проговорю темы: и .

    WordPress Codex

    Скрытый текст

    Функция the_post_thumbnail

    Функция

    the_post_thumbnail

    Назначение

    Функция the_post_thumbnail выводит html код картинки-миниатюры поста пустое значение, если картинка отсутствует.

    Применение

    Этот тег шаблона, функция the_post_thumbnail, должен использоваться внутри

    Использование

    the_post_thumbnail(string|array $size = "post-thumbnail", string|array $attr = "")

    Источник

    Файл: wp-includes / post-thumbnail-template.php

    Function the_post_thumbnail($size = "post-thumbnail", $attr = "") { echo get_the_post_thumbnail(null, $size, $attr); }

    Параметры

    $size (строка/массив)

    Размер миниатюры, которую нужно получить. Может быть строкой с условными размерами: thumbnail, medium, large, full или массив из двух элементов (ширина и высота картинки): array(60, 60).

    По умолчанию : ‘post-thumbnail’, то есть размер который устанавливается для текущей темы функцией set_post_thumbnail_size()

    $attr (строка/массив)

    Массив атрибутов, которые нужно добавить получаемому html тегу img (alt - альтернативное название).

    По умолчанию :

    Пример

    " title= "_("permalink"), the_title_attribute("echo=0")); ?>"> get("layout", "imgwidth"), $SMTheme->get("layout", "imgheight")), array("class" => $SMTheme->get("layout","imgpos") . " featured_image")); if (!is_single()){ ?>


Рекомендуем почитать

Наверх