Разные шрифты к разным категориям

Вопрос — как можно сделать так, чтобы в зависимости от категории — у каждого поста был свой шрифт?
И можно ли, сделать чтобы был шрифт какой то свой а не те, которые идут стандартом?

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

  1. tiaurus

    Вопрос — как можно сделать так, чтобы в зависимости от категории — у каждого поста был свой шрифт?

    Предположим, что текст поста выводится в контейнере DIV класса post-content. Тогда можно определить для этого класса семейство шрифтов, которое будет меняться в зависимости от того, к какой категории относится пост. Для этого в single.php до открытия DIV класса post-content нужно добавить:

    <?php if ( in_category('status') or in_category('links') ) : ?>
        <style>
            .post-content {font-family: 'Arial', sans-serif, Helvetica !important; font-size:16px !important;}
        </style>
    <?php elseif ( in_category('actions') or in_category('software') ) : ?>
        <style>
            .post-content {font-family: 'Georgia', serif !important; font-size:14px !important;}
        </style>
    <?php enif; ?>

    Как работает этот код:
    — если пост принадлежит категории с ярлыком status или категории с ярлыком links, то текст в нем выводится шрифтом Arial размером 16px
    — если же пост принадлежит категории с ярлыком actions или категории с ярлыком software, то текст в нем выводится шрифтом Georgia размером 14px

    Ответить
    1. dbaik

      а не проще ли привязаться к стилю на body?

      Ответить
      1. tiaurus

        Чтобы понять, проще или нет, приведите, пожалуйста, пример того, что вы предлагаете.

        Ответить
        1. dbaik

          виноват, думал что пост тоже тянет класс категории на боди, как на странице архивов.

          Ответить
          1. tiaurus

            Можно подправить шаблон single.php, добавив в него:

            <div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
            тут содержимое поста
            </div>
            

            В этом случае содержимое поста заключается в DIV с классом, соотвтетствующем ярлыку категории. Шрифт для этого класса можно прописать в style.css.

            Ответить
  2. tiaurus

    И можно ли, сделать чтобы был шрифт какой то свой а не те, которые идут стандартом?

    Самый простой способ — это использовать Google Web Fonts.

    Кстати, не понятно, о каком стандарте идет речь? Шрифты для каждого элемента описаны в файле style.css — вы их можете изменить.

    Ответить
    1. Beetroot автор

      есть шрифты, которые в гугл отсутствуют)

      Ответить
      1. dbaik

        @font-face

        Ответить
        1. tiaurus

          Наверное вот так ответ будет более полным:

          @font-face {
              font-family:"Segoe UI";
              src: url(http://yousite.ru/fonts/SegoeUI.ttf);
          } 
          Ответить