Индивидуальный шаблон страницы

Создаем страницу _http://moi.site/test, имеющую индивидуальный шаблон.

1. В папке Темы делаем копию файла index.php (page.php, 404.php) и называем эту копию test.php

2. В самом начале test.php добавляем

<?php
/*
Template Name: Test template
*/
?>

3. Если не нужен вывод контента стат.страницы, то удаляем из полученного шаблона вывод основного цикла Loop. Обычно Loop начинается

<?php while (have_posts()) : the_post(); ?>

и заканчивается

<?php endwhile; endif; ?>

и вставляем на освободившееся место то, что нам нужно.

4. В админке создаем страницу "Тестовая страница", выбрав в качестве шаблона "Test template". (Если всё сделано правильно, в правой колонке появится выбор шаблона.) Слаг (ярлык, короткую сслыку) страницы делаем "test".

Заработало? Теперь можно раскрашивать. 🙂

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

Что этот маневр нам дает?

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

Во-вторых, мы можем вывести в обычном дизайне оригинальный контент, который невозможно загнать в рамки обычной страницы. Это может быть скрипт какой-то, в том числе и партнерской, программы, это может быть wrapper какой-то чужой страницы, это может быть [почти] что угодно, что мы в состоянии написать на html/php.

Если на такой странице будете ставить формочку, имейте в виду, что имена параметров не должны совпадать с используемыми движком WP (p, s и т.д.).

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

UPDATE Начиная с версии 2.9 есть возможность задать шаблон для страницы, дав ему правильное имя: page-{slug}.php или page-{id}.php, где {slug} и {id} соответственно слаг и id страницы.
_________
Копипейст фром

ура! давно пора! но всем было лень =)

Все сделал как написано, все заработало, вот толко php код не выполняется. Можно ли таким способом его выполнить на странице, или это делается по средством плагинов?

Где не выполняется? Прямо в текст суете? Или в файл-шаблон своей страницы?

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

В шаблоне страницы не выполняется 🙁
Поставил плагин Exec-PHP с ним тоже не работает.

<?php
/*
Template Name: Test template
*/
?>
<?php get_header(); ?>
  <div id="content">
  
  <?php if (function_exists('wp_snap')) { echo wp_snap(ALL); } ?>
    
  <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
      
    <div class="post" id="post-<?php the_ID(); ?>">
        <h2><?php the_title(); ?></h2>
                
    <div class="entry">
        <?php the_content('<p>Читать полностью &raquo;</p>'); ?>
        <?php link_pages('<p><strong>Страницы:</strong> ', '</p>', 'number'); ?>
        <?php edit_post_link('Править', '<p>', '</p>'); ?>
        </div><!--/entry -->
    
    <?php comments_template(); ?>
    
    </div><!--/post -->
    
        <?php endwhile; endif; ?>

  </div><!--/content -->
  
    <div id="footer">

      <span class="mangoorange">дизайн <a href="http://www.ndesign-studio.com">N.Design Studio</a>, адаптация <a href="http://www.mangoorange.com/">MangoOrange&trade;</a>, <a href="http://blogstyle.ru/"
title="Русские темы для WordPress бесплатно!">русские темы WordPress</a>.</span>
        </div>
        
</div><!--/left-col -->

<?php 
$current_page = $post->ID; // Hack to prevent the no sidebar error
include_once("sidebar-right.php"); 
?>

  
<?php get_footer(); ?>

Заменял этим кодом

<?PHP print ("Hello, world! ") ; ?>

код

<?php if (have_posts()) : while (have_posts()) : the_post(); ?> ...  <?php endwhile; endif; ?>

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

Значит что-то не так делаете. Еще раз внимательно прочтите и аккуратно сделайте.

Все решил проблему, шаблон удалил и загрузил заново.

здравствуйте уважаемые., если я правильно понял, это именно то что мне нужно!
я хочу сделать сайт, дизайн у меня есть (набран в тхт – html). Если я не ступил, то, поставив WordPress mu и исправив всё по указанной схеме, я смогу сделать сайт со своим оформлением, а не со стандартным ? если я не правильно понял, раскажите плиз что к чему, я новичёк в этом..

Ступил 😀 "Указанная схема" предназначена для того, чтобы одна страница отличалась от остальных. А то что нужно Вам называется "как самому сделать Тему для WordPress".

Решено. (Спасибо, оказывается stylesheet перекладывать нельзя 🙂

У меня куда-то пропал выпадающий список с выбором шаблонов! (*Мамапамагите*)
Были, были, возвращаюсь редактировать страницу, а там этого dropdown-а нет! То же самое, если создавать новую страницу, нельзя выбрать шаблон. Отключал все плагины — не помогает. Его просто нет.

Создана страница так как написано выше , все работает, но
На главной странице есть калонка ширина ее 432
Создана новая страница где эту колонку сделал не 432 а 830 и убрал sidebar
В Explorer , Avant Browser , mozilla , отоброжается все правильно ширина становица 830
Но в Opere sidebar убирается , но ширина калонки не изменяется а остается 432.

Чем это вызвано и как это исправить?

При редактировании постоянно пользовался PSPad так что глюков не должно быть.

Решено. (Спасибо, оказывается stylesheet перекладывать нельзя :-)

У меня куда-то пропал выпадающий список с выбором шаблонов! (*Мамапамагите*)
Были, были, возвращаюсь редактировать страницу, а там этого dropdown-а нет! То же самое, если создавать новую страницу, нельзя выбрать шаблон. Отключал все плагины -- не помогает. Его просто нет.

А можно поподробнее о решении, т.к. проблема та же, а что делать, непонятно.

Классное видео, медитативное. И releted к нему тоже очень даже. Зер гут!

Иногда после работы хочется отдохнуть… 🙂

…но чаще – вместо 😀

this.offtop.off

давно использую этот прием повсеместно, плюс у меня к каждой страничке в header.php грузится свой CSS стиль 🙂

Все понятно, все сделал как написано и все работает. Но дело в том, что я хочу сделать таким образом не одну страницу, а несколько. Т.е. одну из них сделать одним шаблоном, другую – другим. Как это сделать?

Задал вопрос, но сам уже интуитивно понял, что видимо нужно создать еще один файл и прописать его название вместо Template Name: Test template что нибудь другое и проделать все те же действия, что описаны выше

Парни, а как сделать так чтобы шаблон появился но в списке страниц не появлялся?
Чтобы можно было его вызвать только по определенной ссылке.

Парни, а как сделать так чтобы шаблон появился но в списке страниц не появлялся?
Чтобы можно было его вызвать только по определенной ссылке.

не путайте php шаблон в папке Темы и создание Статических страниц в вордпрессе.

Я не путаю, я спрашиваю как сделать.

Путаете. Иначе не спрашивали бы этого:

Парни, а как сделать так чтобы шаблон появился но в списке страниц не появлялся?
Чтобы можно было его вызвать только по определенной ссылке.

сам нашел, сорри

Создал шаблон страницы, все получилось, все выводиться.
Но появилась необходимость вывести на данной странице: воспроизведение аудио (стоит плагин:Audio player), пытался вывести стандартно через команду и через прямую ссылку не получаеться, и вывести количество скачек одного файла (стоит плагин:Download Counter), пытался вывести через команду <!–downloads(id файла)–>, ничего неполучилось.
Помогите :).

Парни, а как сделать так чтобы шаблон появился но в списке страниц не появлялся?
Чтобы можно было его вызвать только по определенной ссылке.

Создай страницу или пост и задай ему видимость – личное – это в том же блоке где кнопка "опубликовать". Когда страница "лчная" она будет видна только тому кто ее публиковал.

помогите пожалуйсто разобраться!
wp 2.9.2
делаю все как вы описали, шаблон страницы в редкторе справа не появляется!

помогите пожалуйсто разобраться!
wp 2.9.2
делаю все как вы описали, шаблон страницы в редкторе справа не появляется!

Попробуйте активировать другую Тему, потом вернуться обратно. Говорят, помогает. Лично я не пробовал, потому что никогда не было такой проблемы.

Спасибо! активировал другую тему и снова свою и все заработало!

Так и запишем: помогает 🙂

еще один вопрос по индивидуальным шаблонам:
подскажите, как сделать так, что-бы на дочерних страничках использовался индивидуальный шаблон родительской странички?

подскажите, как сделать так, что-бы на дочерних страничках использовался индивидуальный шаблон родительской странички?

Самое простое решение – при создании страницы указать тот же шаблон, что и у мамы 🙂 Готовых программных решений не знаю, но не исключено, что в дебрях Интернета можно найти плагин. Или написать, если очень лень два раза ткнуть мышой в дропдаун 😉

спасибо за наводку : ) нашел нечто подобное
http://wordpress.org/extend/plugins/page-template-extended
если кому нужно: шаблон родительской страницы нужно обязательно назвать page-xxx.php (ххх – идентификатор страницы)

Здравствуйте.
Такая проблема.
Хочу сделать отдельный шаблон для страницы. Есть squezze page (html и css), который нужно "внедрить" в шаблон вордпресс. Пустой шаблон создаk, а вот как теперь внедрить в него стили сквиз пейджа?
Подскажите, пожалуйста, как такое можно сделать?
(документацию читал, так нет описания, как подвязать к шалону стили и готовую html страницу)

Anonymous
Отправить
Ответ на: