Плавно підійшли ми до файлу основних налаштувань шаблона 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' => __( 'Нижнє меню'),
) );

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