如何创建第二个index.php?

时间:2011-08-27 作者:Domante Stirbyte

我需要一份index.php, 但略有修改。我添加了一个“投票”插件。因此,我希望用户选择如何显示帖子-按新帖子或按流行帖子。我知道要给second添加什么index.php, 但是如何创建第二个index.php, 这就是问题所在。

4 个回复
最合适的回答,由SO网友:Devin Humbert 整理而成

详细阐述Rachel Baker的回答:

复制索引。php文件,并将其命名为popular。php。在最顶部粘贴以下内容:

<?php
/*
Template Name: Posts by Popular
*/
?>
现在,进入WordPress管理员,创建一个新页面,名为“By Popular”。在右侧,选择“Posts by Popular”模板,其中显示“template”(screenshot). 发布页面,当您查看该页面时,应该会看到您的新页面。

在导航菜单或任何地方创建指向此页面的链接,然后您的用户将能够访问新页面。

SO网友:Rachel Baker

您可以使用修改过的模板文件创建一个新页面,如果用户选择“按流行”显示帖子,则可以将用户发送到该页面

SO网友:Sisir

当我做这种修改时,我总是使用child theme 因为这是最简单的方法。如果我弄乱了子主题,我可以随时从主主题复制文件。

如果你从未尝试过儿童主题。这可能是你的最佳时机只需让子主题复制索引即可。php文件形成原始主题,并将其放置到子主题目录中进行编辑。

SO网友:Sinus the Tentacular

如果OP询问创建二级索引。php使用不同的主题,那么就不那么简单了:WP会在加载时加载特定于主题的常量,不会以其他方式加载。临时强制使用不同主题的唯一方法是创建一个插件,该插件将覆盖“样式表”和可选的“模板”选项,如下所示:

if ($GLOBALS[\'USE_SECONDARY_THEME\']) {
    add_filter(\'stylesheet\',function() { return \'mytheme-secondary\'; });
    add_filter(\'template\',function() { return \'mytheme\'; }); // if the secondary theme is a child of mytheme
}
然后,在索引二级中。php,do

$USE_SECONDARY_THEME=true;
就在平常之前

require_once( $_SERVER[\'DOCUMENT_ROOT\'] . \'/blog/wp-load.php\' );
应该在WordPress索引文件中。

结束

相关推荐

Adding goodies to themes

如何在主题更新时向Arjuna-X等主题添加内容而不丢失?儿童主题是一种很好的方式,还是有其他选择?如果新版本的主题对我添加的功能具有本机支持,该怎么办?