如何在Carrington博客主题中制作WordPress首页模板?

时间:2009-07-21 03:04:12

标签: php wordpress themes carrington

我尝试将frontpage.php文件添加到内容目录中,但是没有加载。现在我添加了以下代码片段,以确保我获得了“首页”的上下文:

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 个答案:

答案 0 :(得分:1)

不能确定您要执行的操作,但为了在Wordpress中使用页面模板,您必须将其放在文件的顶部:

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

之前就是

<?php get_header(); ?>

为了让Wordpress使用该模板,您必须在管理员的页面编辑区域中选择它。

因此,对于“首页”,使用名为home.php的模板 - 模板名称如上所述 - 并选择它作为在页面编辑器中使用的模板。

答案 1 :(得分:1)

你需要两个页面来实现这个目的。

  1. page_example.php(将newfile与page.php放在同一目录中)

  2. pages / page_example.php(copy and rename page_default.php)

  3. 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();

    现在像往常一样在创建页面时选择此页面。

答案 2 :(得分:0)

index.php文件用于wordpress博客的首页。编辑(或创建)index.php文件以对博客的首页进行更改。

答案 3 :(得分:0)

替换首页模板所需文件的正确名称是front-page.php而不是frontpage.php

答案 4 :(得分:0)

这实际上是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';
}

我在默认情况下方添加了它,它立即解决了Carrington调用默认内容而不是首页内容模板的问题。