Меню категорій

Створення шаблона WordPress. Файл налаштувань functions.php

Плавно підійшли ми до файлу основних налаштувань шаблона WordPress. З одного боку, його може й не бути взагалі, з іншого – це святая святих по можливостях, які можна відкрити для налаштування Вашого сайту саме під Вас.

Спершу ми розглянемо найосновніші функції, про які я згадував при описі попередніх файлів шаблона.

Для початку ввімкнемо адекватне читання HTML5 усіма браузерами (якщо Ви були уважні раніше, то бачили, що я використовував нові теги HTML5, такі як header, article і т. п.):

function enqueue_scripts () {
	wp_register_script('html5-shim', 'http://html5shim.googlecode.com/svn/trunk/html5.js');
	wp_enqueue_script('html5-shim');
}
add_action('wp_enqueue_scripts', 'enqueue_scripts');

Тепер треба правильно підключити файл стилів:

function theme_name_scripts() {
	wp_enqueue_style( 'style-name', get_stylesheet_uri() );
}
add_action( 'wp_enqueue_scripts', 'theme_name_scripts' );

Вперше я згадав про файл налаштувань functions.php, коли описував, як вивести головне зображення для статті. Увімкнено підтримку головного зображення шаблоном:

add_theme_support( 'post-thumbnails' );

Як відомо, формат матеріалів у WordPress може бути різним: звичайний, примітка, зображення, відео, цитата, посилання, галерея, статус, аудіо або чат. Щоб у Вас при створенні статті відображався вибір цих форматів, їх потрібно попередньо оголосити у файлі functions.php:

add_theme_support( 'post-formats', array(
		'aside', 'image', 'video', 'quote', 'link', 'gallery', 'status', 'audio', 'chat'
	) );

Звичайно, всі формати можете не додавати, а вибрати тільки ті, які Вам будуть потрібні.

Досить зручний спосіб читати анонси, навіть не заходячи на сайт – RSS-стрічка. Щоб вона адекватно працювала, прописуємо оце:

add_theme_support( 'automatic-feed-links' );

А щоб в анонсах публікувалося й головне зображення (так набагато гарніше), додаємо ще й отакий запис:

function img_rss($content) { 
global $post; 
if ( has_post_thumbnail( $post->ID ) ) { 
$content = '' . get_the_post_thumbnail( $post->ID, 'thumbnail', array( 'style' => 'float:left; margin:0 10px 10px 0;' ) ) . '' . $content; 
}
return $content; 
} 
add_filter('the_excerpt_rss', 'img_rss'); 
add_filter('the_content_feed', 'img_rss');

В певний час ми говорили також про вивід меню. В нас був запис у файлі header.php:

<?php wp_nav_menu( array( 'theme_location' => 'main-menu', 'menu_class' => 'top-menu' ) ); ?>

Зверніть увагу на запис ‘theme_location’ => ‘main-menu’: Саме main-menu служить назвою нашого меню, і його також треба оголосити у файлі functions.php:

register_nav_menus( array(
   'main-menu' => __( 'Головне меню'),
    ) );

Таких меню можна створювати скільки завгодно, просто додаючи рядки. Нам поки що вистачить одного. Для прикладу, якщо бажаєте більше меню, прописуйте отак:

register_nav_menus( array(
   'main-menu' => __( 'Головне меню'),
   'side-menu' => __( 'Бічне меню'),
   'bottom-menu' => __( 'Нижнє меню'),
    ) );

На цьому поки що все, додаткові цікаві доповнення буду описувати згодом.

Прокоментувати