Как сделать шаблон главной страницы WordPress в теме блога Carrington? - PullRequest
1 голос
/ 21 июля 2009

Я попытался добавить файл frontpage.php в каталог содержимого, но он не загружался. Теперь я добавил следующий фрагмент, чтобы убедиться, что у меня есть контекст 'frontpage':

add_filter('cfct_context', 'scompt_front_page_context');

function scompt_front_page_context($context) {
    if( is_front_page() )
        return 'frontpage';
    return $context;
}

Это позволяет мне создать frontpage.php файл в каталоге цикла, но я все еще не могу заставить его использовать мой файл для содержимого.

Ответы [ 5 ]

1 голос
/ 11 августа 2009

вам нужно две страницы, чтобы это заработало.

  1. page_example.php (создать новый файл в том же каталоге, что и page.php)

  2. pages / page_example.php (скопировать и переименовать page_default.php)

page_example.php должен иметь только этот заголовок

<?php
/*
Template Name: Page example
*/

if (__FILE__ == $_SERVER['SCRIPT_FILENAME']) { die(); }
if (CFCT_DEBUG) { cfct_banner(__FILE__); }

cfct_page('page_example');

?>

и

pages / page_example.php - это страница, которую он вызывает, поэтому все ваши изменения должны быть здесь. т.е. удалить боковую панель, get_sidebar ();

теперь выберите эту страницу как обычно при создании страницы.

1 голос
/ 21 июля 2009

Не совсем точно, что вы пытаетесь сделать, но чтобы использовать шаблон страницы в Wordpress, вы должны иметь это в верхней части файла:

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

и это идет раньше

<?php get_header(); ?>

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

Таким образом, для «главной страницы» используйте шаблон с именем home.php - с именем шаблона, как указано выше - и выберите его в качестве шаблона для использования в редакторе страниц.

0 голосов
/ 06 августа 2013

Это на самом деле проблема в файле utility.php (в ядре carrington). Есть функция, которая сообщает, как получить / определить контент для любой конкретной ситуации. Код выглядит примерно так (около строки 500):

function swpt_choose_content_template($type = 'content') {
$files = swpt_files(swpt_PATH.$type);
$filename = swpt_choose_single_template($files);
if (!$filename && swpt_context() == 'page' && file_exists(swpt_PATH.$type.'/page.php')) {
    $filename = 'page.php';
}

if (!$filename) {
    $filename = swpt_default_file($type);
}
return apply_filters('swpt_choose_content_template', $filename, $type);

}

Вам нужно добавить еще один случай, чтобы он проверял путь шаблона содержимого главной страницы ... это был бы код (в данном примере главной страницей является "front-page.php"):

//checks to see if this is the front page content - this fixes the error of the framework choosing the default content rather than the front page content
if (!$filename && swpt_context() == 'front-page' && file_exists(swpt_PATH.$type.'/front-page.php')) {
    $filename = 'front-page.php';
}

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

0 голосов
/ 12 марта 2011

Правильное имя файла, необходимого для замены шаблона передней страницы, это front-page.php, а не frontpage.php

0 голосов
/ 21 июля 2009

Файл index.php используется на первой странице вашего блога WordPress. Отредактируйте (или создайте) файл index.php, чтобы внести изменения для главной страницы вашего блога.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...