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

Добавляем разделитель записей между двумя или более записями

Добавьте этот сниппет сразу перед окончанием цикла для автоматической вставки разделителя записей “div”, который можно стилизировать с помощью класса “post-item-divider”.

<?php
if (($wp_query->current_post + 1) < ($wp_query->post_count)) {
   echo '<div class="post-item-divider">Разделитель записей</div>';
}
?>

Шорткод для HTML5 video в записях

Добавление этого сниппета в файл functions.php вашей темы WordPress создаст новый шорткод HTML5 video. Разместите шорткод в ваших записях для вывода ваших видео.

function html5_video($atts, $content = null) {
        extract(shortcode_atts(array(
                "src" => '',
                "width" => '',
                "height" => ''
        ), $atts));
        return '<video src="'.$src.'" width="'.$width.'" height="'.$height.'" controls autobuffer>';
}
add_shortcode('video5', 'html5_video');

Шорткод для использования:

[video5 src="http://your-site/videos/your-video.mp4" width="720" height="480"]

Размечаем цикл соответственно микроразметке и стандартам HTML5

Почему бы не заменить ваш существующий цикл вашей темы на размеченный соответственно микроразметке и стандартам HTML5.


<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
                <article class="post hentry hnews"><!-- START OF POST -->
<h1 class="entry-title url"><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></h1>
<span class="meta"><time class="updated" datetime="<?php
$postDate = get_the_date('c');
$postDate2 = get_the_date('d.m.Y');
echo $postDate ?>" pubdate>
<?php echo $postDate2; ?></time> | <span class="byline vcard"><span class="fn author"><?php the_author();?></span> | <?php the_category(''); ?></span> | <span class="org"><?php bloginfo('name'); ?></span></span>
     <div class="postContent entry-content">
     <?php the_content(); ?>
     <p class="postmetadata">Опубликовано в рубрике <?php the_category(', '); ?> | Теги: <?php the_tags(); ?></p>
     </div>
                </article><!-- END OF POST -->
<?php endwhile; endif;?>

Выводим все записи в выпадающем меню

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

<form action="<? bloginfo('url'); ?>" method="get">
<select name="page_id" id="page_id">
<?php
global $post;
$args = array( 'numberposts' => -1);
$posts = get_posts($args);
foreach( $posts as $post ) : setup_postdata($post); ?>
        <option value="<? echo $post->ID; ?>"><?php the_title(); ?></option>
<?php endforeach; ?>
</select>
<input type="submit" name="submit" value="view" />
</form>

Реализовываем истечение срока действия куки для защищенных записей после сессии

Добавление этого сниппета в файл functions.php вашей темы WordPress со временем 0 в setcookie() вынудит куки истечь сразу после сессии. За сниппет благодарности уходят Drew Jaynes.


add_action( 'wp', 'post_pw_sess_expire' );
    function post_pw_sess_expire() {
    if ( isset( $_COOKIE['wp-postpass_' . COOKIEHASH] ) )
    // Установка значения 0 для setcookie() вынудит куки истечь сразу после сессии.
    setcookie('wp-postpass_' . COOKIEHASH, '', 0, COOKIEPATH);
}

По всем вопросам и отзывам просьба писать в комментарии ниже.

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

VN:F [1.9.22_1171]
Rating: 1.0/5 (1 vote cast)

Об авторе ADv

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