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

Выводим в админке посты только текущего автора

Когда у вас на сайте множество авторов, может быть очень полезным разрешать каждому из них видеть только их собственные записи в разделе «Все записи» в административной панели WordPress.

Вставьте следующий код в файл functions.php вашей темы. После сохранения авторы будут видеть лишь свои посты.

function devise_parse_query_useronly( $wp_query ) {
    if ( strpos( $_SERVER[ 'REQUEST_URI' ], '/wp-admin/edit.php' ) !== false ) {
        if ( !current_user_can( 'level_10' ) ) {
            global $current_user;
            $wp_query->set( 'author', $current_user->id );
        }
    }
}

add_filter('parse_query', 'devise_parse_query_useronly' );

Автоматически помечаем комментарии как спам со слишком длинной ссылкой

Спам — определенно проблема для всех блоггеров и возможно и вы получаете десятки комментариев в час. Вот оно — решение, которое автоматически помечает как спам все комментарии со ссылкой, длиной более 50 символов.

Открываем файл functions.php и вставляем код ниже. Указанная цифра в 50 символов в ссылке может быть изменена вами в строке 4:

  function devise_url_spamcheck( $approved , $commentdata ) {
    return ( strlen( $commentdata['comment_author_url'] ) > 50 ) ? 'spam' : $approved;
  }

  add_filter( 'pre_comment_approved', 'devise_url_spamcheck', 99, 2 );

Автоматически обрезаем загруженные изображения вместо их масштабирования

Вы хотели бы обрезать ваши миниатюры вместо их масштабирования? Если так, есть очень удобный сниппет для этого.

Просто добавьте следующий код (куда бы вы думали?:)) — в файл functions.php!

// Стандартный размер миниатюр
if(false === get_option("thumbnail_crop")) {
     add_option("thumbnail_crop", "1"); }
     else {
          update_option("thumbnail_crop", "1");
     }

// Средний размер миниатюр
if(false === get_option("medium_crop")) {
     add_option("medium_crop", "1"); }
     else {
          update_option("medium_crop", "1");
     }

// Большой размер миниатюр
if(false === get_option("large_crop")) {
     add_option("large_crop", "1"); }
     else {
          update_option("large_crop", "1");
      }

Функция WordPress для вывода общего количества лайков социальных сетей (FaceBook, Twitter, G+)

Sharedcount.com — очень полезный сайт, который позволяет получить общее количество лайков, «поделиться», твитов и т.д. для определенной страницы сайта. Следующий код поможет вам вывести это количество на вашем блоге.

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

function social_shares() {
    $url = get_permalink( $post_id ); 
    $json = file_get_contents("http://api.sharedcount.com/?url=" .
rawurlencode($url));
    $counts = json_decode($json, true);
    $totalcounts= $counts["Twitter"] + 
$counts["Facebook"]["total_count"] +
$counts["GooglePlusOne"];
    echo "<div>$totalcounts Share</div>";
}
VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)

Об авторе ADv

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