10 полезных хаков WordPress
1. Отключение комментирования для постов старше … дней. Вставьте код в ваш functions.php-файл, заменив 30 на любое подходящее вам количество дней.
<?php
function close_comments( $posts ) {
if ( !is_single() ) { return $posts; }
if ( time() - strtotime( $posts[0]->post_date_gmt ) > ( 30 * 24 * 60 * 60 ) ) {
$posts[0]->comment_status = 'closed';
$posts[0]->ping_status = 'closed';
}
return $posts;
}
add_filter( 'the_posts', 'close_comments' );
?>
2. Настройка изменяющихся дат. В тот фрагмент кода, где у вас динамические даты, вставьте
Copyright © 200x-<?php echo date('Y'); ?> Example.com.
3. Вставьте список HTML-теги для комментариев.
You may use: <?php echo allowed_tags(); ?>.
4. Добавить админскую кнопку “Изменить” к каждому посту.
<?php edit_post_link('Edit', ''); ?>
5. Во избежание дублирования контента – отключите индексирование тех или иных постов в категории.
<?php if ( is_category('4') || in_category('4') ) {
echo '<meta name="robots" content="noindex">';
}
6. Выводит общее количество постов на блоге.
<?php $numposts = $wpdb->get_var("SELECT count(*) FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'post'");
if (0 < $numposts)
$numposts = number_format($numposts);
echo $numposts.' posts.';
?>
7. Добавить "Tweet This" к каждому посту.
<a href="http://twitter.com/home?status=I just read <?php the_permalink(); ?>" title="Send this page to Twitter!" target="_blank">Tweet This!</a>
8. Анонс: добавляет названия запланированных постов.
<?php
$my_query = new WP_Query('post_status=future&order=DESC&showposts=5');
if ($my_query->have_posts()) {
while ($my_query->have_posts()) : $my_query->the_post(); ?>
<?php the_title(); ?>
<?php endwhile;
}
?>
9. Не показывает выбранные вами категории.
<?php
if ( have_posts() ) : query_posts($query_string .'&cat=-3'); while ( have_posts() ) : the_post();
?>
10. Отделить пинги от трекбеков.
<?php if ( $comments ) : ?>
<?php foreach ($comments as $comment) : ?>
<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type == 'comment') { ?> <!-- It's a comment -->
<!-- Comment content goes here --> <?php } else { $trackback = true; }?>
<?php endforeach; ?>
<?php if ($trackback == true) { ?> <!-- It's a trackback -->
<ol id="trackbacks-ol">
<?php foreach ($comments as $comment) : ?>
<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type != 'comment') { ?>
<li>
<?php comment_author_link() ?>
</li>
<?php } ?>
<?php endforeach; ?>
</ol> <?php } ?>
<?php else : ?>
<?php endif; ?>
Popularity: 34% [?]
Еще статьи на тему