Профессиональное обучение
блоггингу от А до Я

Как создать отдельный (другой) шаблон страницы и записи в wordpress блоге и зачем это надо?

Как создать шаблон записи блога

Ребята, всем привет. С вами Александр Борисов. Так как сейчас в мире интернет-бизнеса идет ожесточенная борьба за место под солнцем, я очень много времени уделяю стратегиям развития, укреплению оборонительных позиций и еще кое чему секретному, то пишу не так часто.

Ни чего, сейчас все свои планы осуществлю, и потом буду писать много ну и поговорим мы с вами про мною вышесказанное. Я думаю, что уже многие чувствуют, что происходит в сети, поэтому сейчас выживут только сильнейшие. Ой не завидую я новичкам... Ок, короче не пропустите мои статьи на эту тему.

В сегодняшней статье я хотел бы рассказать вам об одной фишке, которая для многих из вас не будет чем-то новым, но вот новичкам очень даже пригодиться. Ну если честно, я сам далеко не новичок, но об этой штуке узнал совсем не давно, когда, как говорится, приперло.

В общем, сегодня я расскажу вам о том, как сделать отдельный шаблон для ваших страниц блога или записей (статей). Если кто-то не понимает о чем это я, то покажу на конкретном примере. Вот сейчас вы читаете эту статью, а вы не заметили, что в начале статьи вы не увидели двух баннеров размера 468×60?

Не увидели баннера 468×60, который расположен в конце статьи. Не увидели виджет комментариев cackle, рекламы Google Adsense... Заметили? А посмотрите на другие статьи моего блога. Там все это есть. Например в этой же.

Как у меня это получилось так сделать? Как вы знаете, за вывод всех статей нашего блога, отвечает файл single.php который лежит в папке с темой wp-contetn/themes. Так вот, чтобы написать новую статью и убрать в ней, что-то, что вам не нужно или наоборот добавить, нужно просто сделать так, чтобы именно эта статья выводилась при помощи другого файла.

Не стандартного single.php, а например single-2436.php или post.php, которые лежат в той же папке с темой вашего блога. Эти файлы должны содержать абсолютно то же самое, что и файл single.php, только естественно вы там что-то убираете или добавляете, как вам надо.

Ну вот у меня например в файле single.php в начале стоят коды, которые отображают во всех записях блога два баннера 468×60. Чтобы сделать так, чтобы в новой статье этих баннеров не было, мне просто надо в новом файле single-2436.php или post.php (смотря какой способ из 2-х мною предложенных вы выберите дальше) убрать эти коды.

Я думаю вы меня понимаете. Собственно вопрос у вас, а зачем вообще создавать другие шаблоны страниц и записей в wordpress? Ну если хорошенько вы подумаете, то поймете зачем. Я сейчас приведу вам лишь один пример.

Пишет мне рекламодатель и говорит:

«Александр привет, у вас на блоге есть классная статья на тему создания 3D обложек для информационных продуктов, на которую с поисковых систем приходят по 100 посетителей в сутки.

Так вот мы хотели бы поинтересоваться, можно ли у вас в этой статье разместить свой рекламный баннер 468×60 в начале и в конце статьи? Готовы платить 1500 рублей в месяц и рекламировать наш онлайн сервис по изготовлению обложек».

Ну в принципе я то согласен разместить их баннер, но как это сделать, если у меня все одинаково во всех записях блога. Одинаковый шаблон для всех статей. Поняли о чем я? Я думаю, что я вам даже уже интересную идею закинул в ваш моцк. =)

Решение оказалось простое. Нужно создать отдельный шаблон записи и все. Давайте сейчас я расскажу вам как эти шаблоны создаются двумя способами, а вы уже выберите для себя подходящий. Сразу скажу, что я выбрал второй вариант. Создание шаблона без плагина. Не люблю я их.

№1 — шаблон single.php плагином Custom Post Template

Шаг №1 — Скачиваем плагин на оф.сайте wordpress (плагин старый и уже давно не обновлялся)

Шаг №2 — Устанавливаем плагин.

Шаг №3 — В папке wp-content/themes/ваша тема создаем копию файла single.php и даем ему название тот же post.php

Шаг №4 — В этом файле делаем все, что нам нужно (в моем случае я убрал коды баннеров, виджет и рекламу).

Шаг №5 — В этом файле post.php в самом начале вставляем вот такой код:

1
2
3
4
5
<?php
/*
Template Name Posts: post
*/
?>

Вот так это будет выглядеть примерно:

код single.php

Готово! Теперь когда вы пишите новую статью и вам нужно, чтобы она выводилась именно с этим шаблоном, то просто в самой статье справа выбираете тот шаблон, что создали:

Файл single.php

Нужен еще один шаблон записи wordpress, нет проблем. Создаете другой файл, например post2.php так же там меняете код (в начале вставляете код, только уже с post2) как вам надо и при публикации статьи выбираете в Post Template уже post2.php. Элементарно! Редактируя шаблон можно менять все что угодно! Занимайтесь... )))

№2 — шаблон single.php небольшим пуком в functions.php

Шаг №1 — Помещаем в самое начало файла functions.php вот этот код:

1
2
3
4
5
6
7
8
9
10
11
12
13
/*Определение ID записи*/
 
function single($template) {
global $wp_query, $post;
if(file_exists(TEMPLATEPATH . '/single-' . $post->ID . '.php')) {
return TEMPLATEPATH . '/single-' . $post->ID . '.php';
}
if(file_exists(TEMPLATEPATH . '/single.php')) {
return TEMPLATEPATH . '/single.php';
}
return $template;
}
add_filter('single_template', 'single');

Шаг №2 — При написании статьи в блог (еще до публикации) вычисляем ее ID. Это не сложно, в строке браузера есть ее номер:

id записи

У меня это 7525.

Шаг №3 — Создаем копию файла single.php, только уже называем ее так single-7525.php

Шаг №4 — Опять же в этом новом файле что-то добавляем или убираем как нам надо.

Шаг №5 — Публикуем статью в блог.

После публикации WordPress, за счет того пука, что мы добавили в functions.php поймет, что эту статью надо выводить не single.php, а single-7525.php. Я думаю понятно.

Что лучше плагин или пук?

Теперь не большое заключение. Что лучше плагин или пук в функтионс? Тут все зависит от ваших потребностей. Если вам нужно много шаблонов записей wordpress, то лучше наверное плагин, сами понимаете, что если использовать пук, то вам придется для каждой записи создавать новый файл  в папке с темой, а прикол когда их будет 100 или 200.

Если 2-3-5 шаблонов, то можно и пукнуть в функтионс. Ну вот в принципе и все. Я думаю, ни чего сложного. Вроде мелочь, а на самом деле очень классная фишка.

Как сделать шаблон страницы wordpress

Ну тут вообще все просто. Когда-то я про это уже мельком рассказывал в статье про форму обратной связи для блога. Схема простая, тут даже не надо ни каких пуков и ни каких плагинов.

За вывод страниц блога у нас отвечает файл page.php который так же лежит в папке с темой вашего блога.

Шаг №1 — делаем копию этого файла в папке с темой

Шаг №2 — переименовываем этот файл например в puk.php

Шаг №3 — Меняем в этом файле все как нам нужно.

Шаг №4 — Добавляем в начало файла puk.php вот такой код:

1
2
3
4
5
<?php
/*
Template Name: puk
*/
?>

Шаг №5 — Публикуем новую страницу в блог, только справа выбираем нужный нам шаблон:

page.php

Готово! Ну вот вроде бы и все на сегодня. Может быть у кого-то есть какие-то вопросы? По идее все объяснил доступно даже самому самовару. В заключение интересное объявление. Помните в курсе КСБТ 3.0 я говорил про то, что хороший ссылочный профиль — залог успешного продивжения? Так вот совет:

Размещайте ссылки только на тематических площадках-донорах через биржу Webartex!

C уважением, Александр Борисов

Этот блог читают уже более 6000 человек
- читай и ТЫ!
комментарий 71
  1. Аленксей

    Думаю, для разнообразия весьма интересно использовать несколько шаблонов страниц... это всегда интересно читателю: заходишь на очередной пост, а там приятный сюрприз в виде необычной страницы [good]

    в 14:10 | Ответить
    • Евгений

      Вот и я так думаю Алексей. Чем креативнее, тем лучше запоминается. Но можно и перемудрить в этом деле. Так что лучше соблюдать золотую середину :)

      в 20:52 | Ответить
      • Аленксей

        Согласен, крайности не допустимы: глупо делать из блога новогоднюю ёлку :)

        в 22:11 | Ответить
    • Артём

      Только нагрузка на хостинг у меня один шаблон адаптированный под мобильные устройства! :)

      в 00:03 | Ответить
  2. Максим

    Спасибо. Совсем недавно думал, как можно установить баннер на отдельную статью. Будем применять)

    в 14:10 | Ответить
  3. Алексей Григорьев

    С нетерпением жду твоих статей про конкурентные битвы на просторах интернета, или что ты там такое интересное решил нам поведать.

    в 14:14 | Ответить
    • Александр Борисов

      А битвы скоро закончатся. В ближайшие 1-2 года все решится. Кто возьмет кусок, кто будет крошки сметать со стола. [:-|]

      в 23:01 | Ответить
  4. alimugik

    Я об этом узнал еще из шаблонов от Гудвина. Очень удобно там реализовано: пост с сайдбаром или без. например на странице "о себе" сайдбар не обязателен. Да и главная статичная выводится у него примерно таким же способом

    в 14:15 | Ответить
  5. Евгений

    Саша, как всегда отличная статья. Возьму на перспективу себе, возможно скоро пригодится =).

    Да и для продвижения партнерок, можно давать ее почитать другим вебмастерам.

    Хотел еще уточнить, это у меня только такое, что не показывает полную ссылку в браузере при наведении на Webartex? :)

    в 14:29 | Ответить
    • Александр Борисов

      Ссылка закрыта от индексации.

      в 23:01 | Ответить
  6. Рамис

    Очень интересная и познавательная статья Александр. Думаю со временем можно выпустить и книжный вариант полезных советов и статей по настройке блога и дать ее своим постоянным подписчикам. Думаю будет не лишним. ;-)

    в 14:53 | Ответить
  7. Евгений

    Классная статья, взял на вооружение!)

    в 15:11 | Ответить
  8. Милена

    Спасибо за статью, Александр! Для тех, у кого раскрученный блог и много посетителей, очень полезная вещь в плане размещения рекламы в разных постах разной. Для новичков пока не придумала как можно применить. Нужно подумать.

    в 15:12 | Ответить
  9. Никита Волков

    Пока нет надобности в такой функции, но всё равно спасибо! Всё очень понятно!

    в 16:31 | Ответить
  10. Иван

    Занятно. Большой плюс за то, что рассказали, как реализовать эту идею без плагина.

    в 17:27 | Ответить
    • Евгений

      Да Иван, без плагина и вправду лучше. И дело даже не в нагрузке, а в безопасности. Хотя одно другому не мешает. У многих плагинов есть слабые места, и какой бы он не был, нагрузка на блог будет в любом случае. [:-|] :)

      в 21:00 | Ответить
  11. Алексей

    Александр, возможно вы имели в виду Хук, а не Пук?:)

    Есть такое понятие как WordPress Hooks, что означает "зацепка" или "крючок". Реализуется с помощью функций add_action (), add_filter ()

    в 17:32 | Ответить
    • Александр Борисов

      Я специально сказал пук, а то у всех хук да хук. А у меня пук :)

      в 23:02 | Ответить
  12. Vlad

    Интересная вещь, я вот раньше и не знал о создании дополнительного шаблона страницы.Как оказалось это очень полезно,но для тех у кого много предложений на покупку места статье).Очень полезно,Александр.

    в 17:53 | Ответить
  13. Никита

    5 баллов! Возьму на заметку. когда-нибудь пригодиться !

    в 18:21 | Ответить
  14. Евгений Крыжановсrий

    Это убдет интересно тем-у кого посещалка норм) А вот ее еще нужно добиться)

    в 18:28 | Ответить
  15. Василий

    Да это здорово. Но если прописать код в functions.php то после обновления wordpress придется снова прописывать код?

    в 19:33 | Ответить
    • Олег

      Не придется. Только если тему надо будет обновлять.

      в 21:52 | Ответить
    • Алекс Fomik

      Вот, вот, и мне интересен этот вопрос...

      в 22:08 | Ответить
      • Александр Борисов

        Вордпресс не обновляет файлы темы.

        в 23:02 | Ответить
        • Василий

          Спасибо, понятно. А то в статье явно не указано какой functions.php используется темы или движка.

          в 06:54 | Ответить
  16. Юлия

    Взяла на заметку. Отличное решение для привередливых клиентов, и уникальность все-таки очень важна для всех.

    в 19:45 | Ответить
  17. Евгений

    Интересный способ, я что-то такое недавно читал, но в этой статье всё прямо по полочкам разложено, за что и спасибо. Сам то я пока банеры не размещаю, но думаю, что через несколько месяцев уже начну :)

    в 20:47 | Ответить
  18. Galust

    Интересно :) А если попробовать посредством этой фишки создать страницы приземления — "прокладки" — на своем блоге, например, для разных партнерских программ ?! Плюс в том, что не придется отдельно возиться со страницами приземления ;-)

    Вроде явные противоречия не просматриваются...

    Как думаешь, Александр, получится ? Или, все-таки, фишка предназначена для другого ?!

    С искренним уважением, Галуст Хачатрян :)

    в 21:27 | Ответить
    • Александр Борисов

      Может и получится, но не думаю, что это хорошая идея.

      в 23:03 | Ответить
  19. Евгений

    Да :) четкая идейка. Спасибо Сань.

    в 21:29 | Ответить
  20. Татьяна Суркова

    Александр, вы, как всегда, в своём репертуаре, то есть выдаёте полезный материал просто и интересно, огромное спасибо. Думаю, что пока я отложу эту статью в багаж будущего, придёт время, и я ей обязательно воспользуюсь.

    в 21:31 | Ответить
  21. Андрей

    Отличная идея. Взял на заметку...в будущем пригодится. Пока банеров нет, но скоро буду размещать, да и на уникальность думаю может повлиять.

    Спасибо Саша, не перестаешь удивлять [good] Удачи тебе и процветания ;-)

    в 22:03 | Ответить
  22. Любовь Родимкина

    Век живи, век учись. Как хорошо, что я нашла ваш блог. Как я жду постов на нем!

    И как жадно поглощаю все публикуемые на нем фишки! А после изучения еще и ваших курсов, мое блогерское сознание полностью переклинило, и теперь все идут не туда, куда я. Ой, я иду не туда, куда все. И меня эта сказочная дорога, полная приключений, креатива и новизны, радует все больше и больше.

    Искренне желаю isif-life.ru стотысячной посещаемости!

    в 22:19 | Ответить
    • Александр Борисов

      [good]

      в 23:03 | Ответить
  23. Руслан Ахтамьянов

    Хммм... Два раза пост прочел, но так и не понял зачем это нужно... А ручонкми не проще его поставить? А сквозняки уже в single.php пихать...

    в 22:19 | Ответить
    • Александр Борисов

      Значит надо еще раза 2 прочитать [:-))]

      в 23:04 | Ответить
      • Руслан Ахтамьянов

        Ха! Я прозрел!!! [:-))] И понял! Один небольшой вопрос: геотаргетинг можно настроить в коде? Ну чтобы разным регионам, разные страницы показывались?

        в 17:30 | Ответить
  24. Владимир

    Эту фишку раньше видел на каком то англоязычном сайте, закинул в закладки и "благополучно" забыл. Спасибо Александр что напомнил. Кстати, таким образом можно делать страницы продажники, страницы подписки, страницу благодарности за первый комментарий, лендинги и т.д

    в 22:31 | Ответить
  25. Денис

    Я даже и не догадывался, что так тоже возможно устроить. Классная и необходимая фишечка. Александру спасибо за хорошую статью!!!

    в 22:51 | Ответить
  26. Русаков Вячеслав aka Udachnik

    Сейчас отстраиваться от конкурентов важно любыми способами. В статье один из них. Кстати весьма полезный, для привлечения внимания рекламодателей или же наоборот — читателей. Например, чтобы анонсируя свои конкурсы, инфопродукты, фишки не отвлекать читателей рекламой

    в 00:08 | Ответить
  27. Даниил Привольнов

    Александр, привет! Полезная статья, спасибо. В будущем уверен пригодится, когда появятся рекламодатели. У тебя, я заметил страсть, писать слова с "не" раздельно)) не давно, не большое :)

    в 00:55 | Ответить
  28. Артём Черкасов

    Разве puk читается как пук? =) Вроде как пак.

    в 01:24 | Ответить
  29. Александр, психолог счастья

    Александр, благодарю за алгоритм КАК создать такой шаблон, поскольку мне один программер еще года 3 назад создал такой шаблон "Продажник" — на нем в отличие от других страниц нет бокового сайдбара и ничего не отвлекает читателя, зашедшего на страницу от текста.

    Например, почти все страницы верхней вкладки у меня на блоге оформлены через этот шаблон.

    А вот как создать самому я не знал — благодаря этой статье [good] я смогу и сам что-нибудь натворить. Спасибо.

    в 03:23 | Ответить
  30. Катя

    А старую статью, которая уже опубликованная можно будет переделать под новый шаблон или только новую?

    в 10:14 | Ответить
    • Александр Борисов

      А почему нет?

      в 10:30 | Ответить
      • Юлия

        И без последствий это можно сделать?

        в 18:26 | Ответить
        • Казанцев Сергей

          Да можно и без последствий это сделать, если грамотно подойдете к написанию кода этой страницы.

          в 10:36 | Ответить
  31. Вячеслав

    Спасибо огромное. Потенциал использования такого приема просто огромен. Буду экспериментировать.

    в 11:31 | Ответить
  32. AndreyShaD

    Надо бы опробовать. Несколько шаблонов, это довольно круто.

    в 12:30 | Ответить
  33. Евгений

    Сань, а как сделать отдельную категорию, чтоб она на главной не показывалась. Ну типа как у тебя категория "Для новичков"

    в 12:48 | Ответить
  34. Никита

    Спасибо, скоро понадобится отдельный шаблон!

    в 13:23 | Ответить
  35. Марат

    Александр, а Вы уже не размещаете кроссворды в конце поста?

    в 15:12 | Ответить
  36. Александр Крутицких

    Саш, спасибо! От познания новых технических моментов получаю удовольствие, тем более, что такие фишечки бывают крайне необходимы. Прошу написать статью о том, как отдельной лентой выводить статьи из определённой рубрики (так чтобы в общей ленте этих статей не было). У тебя это реализовано в рубрике "Для Новичка". Спасибо!

    в 13:24 | Ответить
  37. Владимир Владленович

    Может я малость поотстал, но даже будучи когда то новичком, я без всяких плагинов видел окно выбора шаблона страницы при написании записи или страницы.

    А создать "новый" шаблон даже с минимальными знаниями html было просто. Открыл имеющийся шаблон, пересохранил под новым именем, исправив имя и в шаблоне, и лишние блоки удалил. Все!

    Вордпресс позволяет менять шаблоны страниц без танцев с бубном ;-)

    в 09:20 | Ответить
  38. Никита

    Спасибо за как всегда полезную статью :-| ! В скором времени думаю понадобиться

    в 16:00 | Ответить
  39. Валерий

    Александр, спасибо за интересную статью! :) Осталось применить "фишечку" на своем блоге. [good]

    в 13:25 | Ответить
  40. Александр Борисов

    Всем спасибо за комментарии!

    в 13:53 | Ответить
  41. Алекс Либрехт

    Привет Александр,

    я только вот на твой блог попал по случайности и вышел на эту запись. Фишка просто идеальная, если нужно будет разместить рекламу на странице или в блогпосте. Думаю что это мне когда нибудь пригодиться :).

    в 04:31 | Ответить
  42. Казанцев Сергей

    На базе своих шаблонов статичных страниц очень классно делать лэндинги прям на блоге или простые странички подписки, очень круто можно сделать таким методом страницу контактов и о себе.

    Так же можно на базе такого шаблона сделать "закрытый раздел", это не обязательно делать кучу страниц, можно сделать одну, но постоянно добавлять туда полезную информацию и лучше всего в видео. Страницу можно закрыть паролем, а пароль давать за подписку.

    Вот такая идейка вам в копилку бесплатно ;-)

    Но для реализации нужны маленькие знания php и хорошие по веб-дизайну.

    в 22:45 | Ответить
  43. Юля

    Этот плагин для записи просто чудо! Я о нем узнала где-то месяц назад и просто нарадоваться не могла! Он мне очень помог )) :)

    в 18:56 | Ответить
  44. Наталья

    Отлично. Никогда не думала на тему отдельного оформления старицы, а ведь правда, это может пригодиться. Надо твитнуть, чтоб не потерять статью. [:--_)]

    в 15:20 | Ответить
  45. Alexander

    Полезная статья. При размещении банеров без этих настроек не обойтись

    в 22:19 | Ответить
  46. Владимир Свищ

    Шаблоны страниц — достаточно удобная вещь. Выбрал необходимый шаблон и не надо каждый раз рыться в коде

    в 22:01 | Ответить
  47. Диана

    Я раньше думала, как ты это делаешь) Неужто на каждую статью в ручную закидываешь баннеры, рекламу и т.д.) А ты вон как умно сделал, неплохо.)

    Мне баннеры и рекламы пока рано, но в свой супер пуперский деловой блокнотик запишу название плагина и ссыль на статью. Тоже так сделаю потом. [good]

    в 14:44 | Ответить
  48. Андрей

    В общем что-то изменили, что-то не изменили. В итоге, изменения были и этого не изменить...)))

    в 17:28 | Ответить
  49. Сергей Черняев

    Александр, я у Вас то не видел другого шаблона. Честно говоря я сторонник единого стандарта. Хотя жизнь идет в перед и все меняеться

    в 12:07 | Ответить
  50. Константин

    Прикольная фишка с отдельной статьей, так действительно можно разместить рекламу только по тематике данной статьи, если она приносит от 1000 посетителей в месяц. Хорошо что ты замечаешь много разных интересных новшеств и пишешь нам об этом.

    в 21:11 | Ответить
  51. Александр Белый

    Да нужная информация уже применяю

    в 15:44 | Ответить
  52. Kosya

    Вы забыли написать как сделать так что бы в атрибутах страницы появилась вкладка для выбора шаблона.

    в 05:35 | Ответить
  53. Александр

    Незначительно изменить шаблон это все понятно. А как прикрутить шаблон сторонней темы к определенной странице ???? Все одно и тоже пишут толку

    в 20:38 | Ответить
Оставить комментарий: (ПРОЧТИ ЭТО!!!)
:) :-D ;-) :-| [star] [good] [present] [flower] [:-))] [:))] [:--_)] [:-|]