Несколько функций WordPress, которые я часто использую и вам советую

Несколько функций WordPress Эта заметка — своего рода закладка, чтобы постоянно не копаться в интернете в поисках стандартных функций, которые я часто юзаю.

Думаю эта «сборка» будет полезна многим, у кого есть блоги и сайты на движке wordpress.

Также постараюсь дать ответы на то, где и как я использую коды, о которых пойдет речь.

Вывод только на главной WordPress

Чтобы вывести что-либо на главной странице, но при этом не трогать другие страницы блога, есть такое условие:

<?php if( is_front_page() ){ ?>

Этот текст на главной странице.

<?php } else { ?>

Этот текст на всех страницах, кроме главной. (можно оставить пустым)

<?php } ?>

Вместо функции is_front_page() можно использовать is_home(), но у меня она не всегда срабатывала. Поэтому использую первый вариант.

Обычно втыкать такой код нужно в файл index.php. Это зависит от шаблона.

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

Вывод только в определенных постах WordPress

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

Тогда выручает такой код:

<?php if( is_single(123) ){  ?> 

Этот текст показывать, когда открыт пост №123

<?php } else { ?>

Этот текст показывать на остальных страницах сайта (можно оставить пустым)
<?php } ?>

Я обычно использую такой код в файле sidebar.php чтобы как-то по особенному монетизировать отдельные статьи и, соответственно, вставляю вместо текста рекламу. Подробнее об этом я написал в отдельной статье. Там же есть пример этой функции при использовании для нескольких постов.

Узнать номер поста можно зайдя в его редактирование — в строке браузера.

Выводить на всех страницах постов (исключая главную, категории, статических страницы и тд.) можно с помощью того же кода, без ввода номера статьи:

<?php if( is_single() ){  ?> 

Здесь нужный текст

<?php } ?>

Вывод только в определенной категории WordPress

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

Код для этого такой:

<?php if( is_category('9') ){ ?>

Этот текст (или ссылки) показывать в категории №9.

<?php } ?>

Обычно втыкать код нужно в файл archive.php.

Если в посте нужно что-то показать только в том случае, если пост принадлежит определенной категори(и\ям), то поможет такая штука:

<?php if ( in_category( array( 14, 15 ) )) { ?>
// Здесь то, что нужно показать, если пост принадлежит категориям 14, 15
<?php } ?>

Хлебные крошки для WordPress и другие вкусняшки

Мне не нравятся стандартные хлебные крошки WordPress. Я заменяю их на другие, а именно вот с этой страницы http://wp-kama.ru/id_541/samyie-hlebnyie-kroshki-breabcrumbs-dlya-wordpress.html

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

Там же у автора есть еще много полезностей:

  • Красивый вывод всех постов по месяцам написания;
  • Вывода записей по количеству просмотров;
  • Вывод блока ссылок на предыдущие записи, или только на предыдущие из категории;

Вот ссылка на страницу его авторских функций http://wp-kama.ru/cat/wordpress/functions

Будет обновляться и дополняться…

Поблагодарите автора репостом:
Предыдущие статьи:

4 комментария к записи “Несколько функций WordPress, которые я часто использую и вам советую”

  • Анатолий
    http://15wmz.com

    Какой код надо добавить, чтобы показывался текст из описание рубрик на странице архивов?

    • ARKSEO
      <?php echo category_description(); ?>

      Если хотим блок красиво оформить, то можно завернуть в div с определенным классом (например, .desc-meta), и потом ему добавить стили:

      <?php
      	$category_desc = category_description();
      	if ( !empty( $category_desc ) )
      	echo '<div class="desc-meta">' . $category_desc . '</div>';
      ?>

      * этот код надо добавлять в файл category.php темы, если его нету, то в archive.php.

  • Алексей

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

    Как сделать, чтобы:
    для всех записей рубрики ID=1 выводился «такой то текст»;
    для всех записей рубрики ID=2 выводился «Другой текст»;
    для всех записей рубрики ID=3 выводился «еще какой то текст»;
    и т.д.

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

    Подскажите, пожалуйста!

    • ARKSEO
      <?php if( in_category( array( '78', '79') )){ ?>
      
      Здесь текст для записей из категорий 78 и 79
      	
      <?php } ?>

      * 78,79 меняем на ID своих рубрик. Можно оставить только одну категорию, например array( ’78’), тогда текст будет выводиться только для записей из категории ’78’.

Прокомментировать

Наверх ▲