Добавляем произвольные параметры в функцию body_class()
При создании сайта на WordPress может оказаться реально полезной возможность добавить один (или больше) произвольных параметров к функции body_class(). Вот функция, которую мы используем довольно часто при разработке сайтов для клиентов.
Просто скопируйте и вставьте код в файл functions.php вашей темы или в плагин для сайта WordPress:
1 | function custom_body_class( $classes ){ |
5 | $myvar = "anotherparam" ; |
9 | array_push ( $classes , $myvar ); |
13 | add_filter( 'body_class' , 'custom_body_class' ); |
Конечно же, код можно и нужно адаптировать под свои нужды. К примеру, реально универсальное решение для мультиязычных сайтов: произвольный параметр можно использовать для вывода текущего языка в классе body.
Как быстро заменить слова в ваших записях блога
Моделируем ситуацию: ваш блог назывался «мойблог», и вы переименовали его в «мойсуперблог». Не нужно редактировать n-ное количество записей для замены каждого встречаемого там «мойблог»! Вот полезный сниппет, который выполнит всю работу за вас за минуту.
Просто добавьте слова для замены в массив в строке 4. После того, как сделаете, вставьте код в файл function.php вашей темы, сохраните и все готово!
1 | function replace_text_wps( $text ){ |
4 | 'wordpress' => '<a href="#">wordpress</a>' , |
5 | 'excerpt' => '<a href="#">excerpt</a>' , |
6 | 'function' => '<a href="#">function</a>' |
8 | $text = str_replace ( array_keys ( $replace ), $replace , $text ); |
12 | add_filter( 'the_content' , 'replace_text_wps' ); |
13 | add_filter( 'the_excerpt' , 'replace_text_wps' ); |
Как заставить RSS Widget обновляться более часто
В WordPress есть встроенный виджет, который позволяет вам отобразить любой фид любого сайта на вашем блоге. И не смотря на то, что виджет замечательный, иногда необходимо, чтобы он обновлял новости чаще, чем по-умолчанию. Вот простое решение, которое изменит частоту обновления.
Для применения функции просто вставьте следующий код в ваш файл functions.php или в плагин для сайта WordPress:
1 | add_filter( 'wp_feed_cache_transient_lifetime' , create_function( '$a' , 'return 600;' ) ); |
Грабим и выводим каналы RSS
Вы наверняка в курсе, что в WordPress есть встроенная RSS читалка. Давайте используем ее для получения данных внешней ленты и вывода их на блоге.
Просто вставляем следующий код в то место, где хотим вывести ленту. Не забываем указать ссылку на фид в строке 4.
1 | <?php if (function_exists( 'fetch_feed' )) { |
3 | include_once (ABSPATH.WPINC. '/feed.php' ); |
6 | $limit = $feed ->get_item_quantity(7); |
7 | $items = $feed ->get_items(0, $limit ); |
10 | if ( $limit == 0) echo '<div>Лента либо пуста, либо недоступна в данный момент.</div>' ; |
11 | else foreach ( $items as $item ) : ?> |
14 | <a href= "<?php echo $item->get_permalink(); ?>" |
15 | title= "<?php echo $item->get_date('j F Y @ g:i a'); ?>" > |
16 | <?php echo $item ->get_title(); ?> |
20 | <?php echo substr ( $item ->get_description(), 0, 200); ?> |
Встраиваем страницу в другую страницу
Вы используете различные шаблоны страниц в вашей теме WordPress? Если так, вот интересный хак, который позволит вам встроить одну страницу внутрь другой.
Вставьте следующий код ниже в цикл loop. Убедитесь в том, что вы изменили ID страницы в строке 1!
1 | <?php $recent = new WP_Query( "page_id=**ID**" ); while ( $recent ->have_posts()) : $recent ->the_post();?> |
2 | <h3><?php the_title(); ?></h3> |
3 | <?php the_content(); ?> |
VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)