Полезные функции для создания собственного шаблона в WordPress
Без ложной скромности хочу поделиться с Вами интересной наработкой, которую я планирую постоянно пополнять. Она заключается в том, что за все время, что я создаю шаблоны, я использую одни и теже функции, которые существенным образом облегчают жизнь всем, кто создает сам шаблоны для системы управления сайтами — WordPress.
Без ложной скромности надеюсь, что данная статья будет Вашей настольной книгой, так как постоянно будет пополняться новыми и новыми функциями. Давайте приступим. Да! Важно отметить такой момент, в скором времени я хочу создать видео гайд по данным функциям, я покажу Вам на настоящем рабочем проекте как легко и просто натянуть верстку нашего сайта на вордпресс, потратив при этом минимум времени и используя только те функции, что я привел здесь. Начнем!
<?php echo get_template_directory_uri() ?> — доступ к папке шаблона. Очень нужная функция, прямо must have. Данная функция позволяет подключить все стили и скрипты к нашему шаблону, которые находятся в папке с ним, без применения длинного адреса. Всегда используйте ее, если нужно получить доступ к папке шаблона.
/*
Theme Name: Cruelten
Theme URI: https://cruelten.ru
Description: Cruelten.
Author: Cruelten
Author URI: https://cruelten.ru
Version: 1.1
*/
Данный код подключает Ваш шаблон. Он размещается в файле стилей в самом верху. Идем в style.css и прописываем данный код в верху Вашего файла.
<?php
/*Template Name: Расписание*/
?>
Данный код вставляем в различные файлы Вашего шаблона. Вместо слово «Расписание» Вы можете писать любые названия. Данные страницы могут использоваться непосредственно в редактировании Ваших страниц. Вы можете выбрать наименование этого шаблона в редакторе Вашей странице.
<?php echo wp_get_document_title(); ?> — вывод заголовка страницы. Используем везде. В single.php, page.php, index.php и иных страницах. А проще просто внедряем в <header> в раздел <title></title>.
<?php wp_head(); ?> — ставим перед </head>. Обязательно вставляем в любой наш шаблон, это обязательное условие WordPress.
<?php wp_footer(); ?> — ставим перед </body>. Обязательно вставляем в любой наш шаблон, это обязательное условие WordPress.
<?php get_header() ?> — внедряем header.php Обязательная вещь. Общий header.php должен быть на всех Ваших страницах сайта.
<?php get_footer() ?> — внедряем footer.php Обязательная вещь. Общий footer.php должен быть на всех Ваших страницах сайта.
<?php get_sidebar() ?> — внедряем sidebar.php Необязательный элемент. Но если Ваш сайт имеет некое меню слева или справа, то обязательно используйте.
<?php get_template_part( ‘nav’ ); ?> — внедрение в шаблон файла в директории шаблона с именем nav.php. Очень важная функция. Вместо nav в функции может быть любое имя, например mymenu. В этом случае файл, который Вы будете подключать из директории шаблона будет иметь имя mymenu.php. Данная функция — аналог include из PHP.
front-page.php — наименование файла в директории темы — отсюда берется главная страница. Очень важный файл. Если Вы хотите использовать какой-то особенный шаблон для главной страницы — просто создайте в своей папке шаблона с этим именем. Теперь WordPress будет понимать откуда брать информацию на главную страницу.
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<a href=»<?php the_permalink(); ?>»>
<?php if (has_post_thumbnail()) {the_post_thumbnail();} ?>
</a>
<?php the_title(); ?>
<?php echo get_the_date(); ?>
<?php the_content(); ?>
<?php endwhile; endif; ?>
Важнейший код. Он добавляет информацию из базы данных по страницам, при этом его можно использовать в index.php. Так как данный код выводит все записи. То есть код универсальный. Я его использую во всех страницах, где нужно выводить записи, в том числе и одиночные.
<link rel=»icon» type=»image/png» href=»/favicon.png» /> — полезный код. Иногда нужно подключать именно png фавикон. Размер фавикона теперь не имеет значения. Но я придерживаюсь 52/52 пикселя.
<?php if ( get_post_meta($post->ID, ‘mytitle’, true) ) : ?>
<?php echo get_post_meta($post->ID, ‘mytitle’, true) ?>
<?php endif; ?>
Иногда у Вас на страницах надо использовать различные методанные. Так вот их использовать в Вашем шаблоне можно очень эффективно. Вместо mytitle может быть все, что угодно.
Redirect 301 /old-page.html http://new-domain.ru/new-page.html — иногда я использую с ненужных страниц 301 редирект. Вот так он используется в файле .htaccess
@media only screen and (max-width: 760px){} — очень важный код. Используется в CSS. Используем для того, чтобы создавать версии для различных разрешений экрана.
<?php $cat = get_the_category(); echo $cat[0]->cat_name; ?> — вывод наименование рубрики. Используется в файле category.php.
add_theme_support( ‘post-thumbnails’ ); — данный код вставляем в файл finctions.php. Данный код добавляет возможность прикрепления миниатюр в Ваших записях.
function do_excerpt($string, $word_limit) {
$words = explode(‘ ‘, $string, ($word_limit + 1));
if (count($words) > $word_limit)
array_pop($words);
echo implode(‘ ‘, $words).’ …’;
}
Данный код вставляем в файл finctions.php. Он позволяет добавлять анонсы к Вашим записям с определенным количеством слов. Непосредственно в сам шаблон вставляем код — <?php do_excerpt(get_the_excerpt(), 16); ?> где 16 — количество слов, которое нужно выводить.
<?php
global $post; // не обязательно
$args = array(‘category’ => 1); // 5 записей из рубрики 1
$myposts = get_posts( $args );
foreach( $myposts as $post ){ setup_postdata($post); ?>
<a href=»<?php the_permalink(); ?>»>
<?php if (has_post_thumbnail()) {the_post_thumbnail();} ?>
</a>
<?php the_title(); ?>
<?php echo get_the_date(); ?>
<?php the_content(); ?>
<? } wp_reset_postdata(); // сбрасываем переменную $post ?>
Очень важный код. Выводим в нужном месте 5 записей из рубрики под id=1.
Жду Ваших комментариев. Подписывайтесь на мои новости на Facebook, справа увидите мою группу. Всем спасибо, до новых встреч.
Свяжитесь с нами уже сейчас
- +7 (906) 272-38-19
Telegram / WhatsApp - info@cruelten.ru
- Cruelten
- Cruelten
Вы привыкли видеть здесь форму обратной связи. Ведь так? Ее делают почти все. Но исследуя поведение людей, мы пришли к выводу, что форма совершенно не нужна. В любом случае все сводится к обсуждению Вашего проекта в WhatsApp или Telegram. А зачем нам тратить Ваше время на заполнение различных форм? Поэтому, пишите в Telegram или в WhatsApp.