Онлайн заработок, создание и монетизация сайтов, веб-разработка, SEO и SMO продвижение, фриланс, партнерки, полезные сервисы вебмастерам, блоггинг.

Создание отдельного шаблона страниц в WordPress

Создание отдельного шаблона страниц в WordPressВ прошлой заметке о баннерной рекламе в блогах я рассказывал, что показываю возможные способоы расположения баннеров с помощью отдельного шаблона. Дабы не оставалось «темных пятен» и неясных моментов расскажу сегодня как же реализовать и внедрить для своего блога на WordPress отдельных шаблон. Это не так сложно, как может показаться на первый взгляд, хотя с другой стороны — мы рассмотрим весьма легкий пример.

Если шаблон вашего блога располагается в папке wp-content/themes/имя_шаблона/, то вы запросто сможете модифицировать его через админку в WordPress. Для этого заходим в меню Presentation Theme Editor:

Presentation - Theme Editor

Здесь видим список всех доступных файлов шаблона справа и собственно код выбранного файла. В правом нижнем углу должна быть кнопка Update Files.

Редактирование файлов шаблона в WordPress

Если кнопки нет, это значит тот или иной файл закрыт от записи. Нужно зайти на ФТП, найти его и поставить галочки в свойствах файла для колонки Writable напротив первых двух пунктов. После этого появится возможность сохранить все изменения, внесенные в код через админку.

Тема/шаблон блога как правило состоит из нескольких отдельных php файлов, каждый из которых отвечает за отображения определенной части этого самого шаблона. Например, header.php выводит HTML код внутри тэгов <HEAD></HEAD>, а также шапку сайта, sidebar.php — вспомогательные колонки справа, footer.php — низ шаблона и т.д. Главный код находится в index.php. Здесь идет вызов всех вспомогательных файлов шаблона и формируется окончательный внешний вид сайта.

Поэтому первым делом для создания дополнительного шаблона нам нужна копия основного файла index.php — сохраняем его под любым другим названием (new_index.php). В самом верху можно добавить строки, определяющие название шаблона в админке:

<?php
/*
Template Name: Adv
*/
?>

Подключение дополнительных файлов в основной производится с помощью соответствующего кода: <?php get_header(); ?>, <?php get_sidebar(); ?>, <?php get_footer(); ?>. Делаем копию того файла, для которого мы хотим изменить внешний вид, например для шапки сайта — header.php и т.д. Сохраняем под любым новыми именем (new_header.php).

Теперь, внимательно! Чтобы подключить измененный вспомогательный файл (new_header.php) в новый основной файл шаблона (new_index.php) мы вместо строки:
<?php get_header(); ?>
пишем:
<?php include(«new_header.php»); ?>.

Уловили фишку? По сути — создаем свой собственный основной файл шаблона, который будет состоять из видоизмененных вспомогательных файлов.

После завершения всех работ по модификации кода шаблона, записываем новые файлы в ту же папку с шаблоном wp-content/themes/имя_шаблона/. Теперь при создании страницы будет возможность выбрать свой шаблон для нее. Это производится в блоке Page Template, что находится в правой колонке в форме созданий страницы для блога. Имя в этом выпадающем списке отображается то, которое мы задавали в основном файле шаблона в строке с «Template Name».

Выбор шаблона для страницы в WordPress

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

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

17.03.08

Категории: WordPress.

Теги: , , , ,

29 Comments
  1. валерий

    спасибо большое! за подробное обьяснение

  2. Nixx

    Создание отдельного шаблона страниц в WordPress

    Скажите, а для записей можно сделать, что-то подобное.

    Например:
    Если single.php новость из категории id-1 — то отобразится при просмотре блоки A,B,C
    Если все остальные категории (id-3, id-20 и т.д.) то отобразатся блоки D,E

    A title
    B caledar
    C except
    D content
    E comments

  3. Tod

    Nixx, попробуй глянуть здесь — http://codex.wordpress.org/Template_Tags/in_category (должно помочь)

  4. Nixx

    Благодарен. Сейчас попробую разобраться.

  5. Олег

    А как сделать, чтобы движёк wordpress обрабатывал не только стандартные адреса, типа post_id, но и другие, которые я сам сделаю. Например, я хочу сделать каталог, а как объяснить движку способ обработки адреса /straniza_cataloga_id. Я говорю не про ЧПУ, а про дополнительные файлы в папке шаблона wordpress

  6. Tod

    Олег, тут нужно почитать о создании модулей для wordpress, как я понимаю. Есть какие-то свои хитрости, чтобы это все работало. К сожалению, в этом направлении я ничего не читал.

  7. Олег

    Спасибо. Буду копать в эту сторону

  8. gosha

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

  9. anton

    В этом коде присутствует ошибка . Котнкретно — кавычки. Они должны быть одинарные.

  10. 3d-user

    А я редактирую в блокноте, а потом измененные файлы заливаю на сервер.

  11. Федор

    Попробывал чесно работает, но мне жалко времени на это!

  12. Artem

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

  13. Эрик

    Добрый день. У меня киношный сайт и на нем присутствует много описаний фильмов, которые типичные и одинаковые по структуре. вот как можно сделать шаблон для таких записей? (не страниц)
    перешел по ссылке выше (для создания шаблонов записей) там все по английски, а нет ли русского аналога? или перевода….
    заранее спасибо

  14. Эрик

    Спасибо за вашу работу!!! =)

  15. EvgeniyVorobiev

    Спасибо! Очень пригодилось!
    Как раз сделал сервис у себя на блоге. Так сказать бесплатный фотошоп. =)

  16. Евгений Фоменко

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

  17. Согдиана

    Здравствуйте,
    Я хотела узнать, после того как добавите в папку новый шаблон страницы, например, шаблон portfolio.php и products.php, то тогда блок Page Template появится в админке на странице создания страниц?

  18. Tod

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

  19. vasiliy

    index. php? вообще то за вывод страниц отвечает page.php его — то и нужно менять.

  20. Tod

    vasiliy, статья старая, возможно тогда page.php не было… на иллюстрации, в частности, я его не вижу, а что и как было в 2008 не вспомню)

  21. Андрей

    Здравствуйте, подскажите, пожалуйста, как добавить готовое наполнение для вновь созданного шаблона страницы (в wordpress). Это файлы index html, swf, папки js, res. Контент был создан в программе Kvisoft FlipBook Maker. Спасибо.

  22. Tod

    Андрей, если честно, не совсем понял о каком наполнении идет речь. Для текстов, изображений и даже html в системе есть текстовый редактор, с помощью которого создаются посты и страницы. Если вам нужно вставить какой-то сложный код php, например, то можно попробовать создать отдельный шаблон страницы и добавить код в него. Но вообще мне кажется вам нужно поискать варианты интеграции Kvisoft FlipBook Maker с wordpress через плагины, просто так код скорее всего не вставить.

  23. Андрей

    Наполнением называю готовую страницу (слайдшоу с эффектом перелистывания страниц), созданную в программе Kvisoft…, т.е. на компе я кликаю на интернетную ссылку(файл index html) и у меня открывается страница, а как содержимое этой страницы перенести в wordpress, не знаю. Спасибо.

  24. Анна

    подскажите пожалуйста, как сделать другой шаблон для записи в блоге (не страницы), необходимы записи full width

  25. Tod

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

  26. Kolass

    Открыл header.php а там: header(); ?>
    Куда смотреть дальше?

  27. Tod

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

  28. Сергей

    Классный шаблон получится!

Добавить комментарий

Ваш e-mail не публикуется. Обязательные поля помечены *
Если вы комментируете впервые, то текст будет отправлен на модерацию.