Пачка полезных сниппетов для блога. Часть 5

Функция WordPress для проверки, является ли запись пользовательским типом записи

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

Прост вставляем этот код в ваш файл functions.php:

function is_custom_post_type() {
	global $wp_query;
		
	$post_types = get_post_types(array('public'   => true,'_builtin' => false),'names','and');
	
	foreach ($post_types  as $post_type ) {
		if (get_post_type($post_type->ID) == get_post_type($wp_query->post->ID)) {
			return true;
		} else {
			return false;
		}
	}
}

После окончания процедуры функция будет работать как описано выше. Обратите внимание, что функция может быть использована вне цикла:

if (is_custom_post_type()) {
    //Текущая запись = пользовательский тип
}

Встраиваем и делимся Github gists на вашем блоге WordPress

Github Gist предназначен для обмена кусочками кода (и не только кода) между людьми, использующими этот самый Github. Сниппет полезен тем, что поможет вам встроить Github gist в ваш блог, просто указав его url (ссылку).

Вставляем код в файл functions.php. После этого просто указываем ссылку какого-либо Github gist в записи или на странице. Gist автоматически встроится в ваш блог.

/**
 * Использование:
 * Вставляем ссылку на gist в запись блога или страницу и он встроится, пример:
 * https://gist.github.com/2926827
 *
 * Если в gist множество файлов, мы можете выбрать один из них, используя ссылку следующего формата:
 * https://gist.github.com/2926827?file=embed-gist.php
 */
wp_embed_register_handler( 'gist', '/https:\/\/gist\.github\.com\/(\d+)(\?file=.*)?/i', 'wp_embed_handler_gist' );

function wp_embed_handler_gist( $matches, $attr, $url, $rawattr ) {

	$embed = sprintf(
			'<script src="https://gist.github.com/%1$s.js%2$s"></script>',
			esc_attr($matches[1]),
			esc_attr($matches[2])
			);

	return apply_filters( 'embed_gist', $embed, $matches, $attr, $url, $rawattr );
}

Создаем выпадающее меню тегов

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

Просто вставляем следующий код в то место, где нужно вывести выпадающее меню. Обратите внимание, что вы сможете использовать любую свою таксономию: просто измените код в строке 5 под ваши нужды.

<h2><?php _e('Записи по тегам'); ?></h2>
<form action="<?php bloginfo('url'); ?>/" method="get">
<div>
<?php
$select = wp_dropdown_categories('taxonomy=post_tag&show_option_none=Select tag&show_count=1&orderby=name&echo=0');
$select = preg_replace("#<select([^>]*)>#", "<select$1 onchange='return this.form.submit()'>", $select);
echo $select;
?>
<noscript><div><input type="submit" value="Просмотреть" /></div></noscript>
</div></form>
VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)

Об авторе ADv

Занимаюсь разработкой сайтов и магазинов на WordPress. Оказываю платные помощь и консультации. Skype: advokat_b
Scroll To Top