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

Вывод заголовка, ограниченного по количеству символов

Для того, чтобы выводить заголовок материала на сайте, ограниченного по количеству символов, добавляем следующий код в файл functions.php:

function trim_title_chars($count, $after) {<div style="float:right;width:350px;margin:0 0 10px 15px;">
<div id="yandex_rtb_R-A-187781-2"></div>
</div>
          $title = get_the_title();
          if (mb_strlen($title) &gt; $count) $title = mb_substr($title,0,$count);
          else $after = '';
          echo $title . $after;
}

Меняем в своей теме на
где 30 — это количество символов.

Вывод заголовка, ограниченного по количеству слов

Для того, чтобы выводить заголовок материала на сайте, ограниченного по количеству слов в нем, добавляем следующий код в файл functions.php:

function trim_title_words($count, $after) {
          $title = get_the_title();
          $words = split(' ', $title);
          if (count($words) > $count) {
                    array_splice($words, $count);
                    $title = implode(' ', $words);
          }
          else $after = '';
          echo $title . $after;
}

Меняем в вашей теме на
где 5 — это количество слов

Автоматически вставляем в конец записей копирайт с бэклинком

Для того, чтобы активировать возможность автоматически вставлять в конец материалов копирайт с обратной ссылкой, добавляем следующий код в файл functions.php:

function add_post_content($content) {
if (!is_home()) {
 $content .= '<p>Источник: <a href="link">Ваш сайт</a></p>';
}
return $content;
}
add_filter('the_content', 'add_post_content');

Различное количество записей в рубриках

Для того, чтобы вывести в разных рубриках различное количество записей, добавляем в файл functions.php следующее:

add_action('pre_get_posts', 'posts_count');
function posts_count($query) {
    if (!is_admin()) {
        if ($query->is_main_query()) {
            if ($query->is_category('3')) {
                $query->set('posts_per_page', 4);
            }
            if ($query->is_category('4')) {
                $query->set('posts_per_page', 4);
            }
            if ($query->is_category('5')) {
                $query->set('posts_per_page', 4);
            }
            if ($query->is_category('6')) {
                $query->set('posts_per_page', 4);
            }
            if ($query->is_category('8')) {
                $query->set('posts_per_page', 4);
            }
        }
    }
}
VN:F [1.9.22_1171]
Rating: 5.0/5 (2 votes cast)

Об авторе ADv

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