Полезные функции для создания собственного шаблона в WordPress - Творческая студия #Cruelten
Блог
Делимся с Вами своими знаниями и новостями
16.04.2017

Полезные функции для создания собственного шаблона в WordPress

Полезные функции для создания собственного шаблона в 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, справа увидите мою группу. Всем спасибо, до новых встреч.

Метки:

Свяжитесь с нами уже сейчас




Отправляя нам сообщение, содержащее Ваши персональные данные, Вы соглашаетесь с нашей политикой конфиденциальности.
Онлайн заявка


Отправляя нам сообщение, содержащее Ваши персональные данные, Вы соглашаетесь с нашей политикой конфиденциальности.