WordPress二十二主题中是否保留了Front-page.php模板?

时间:2013-03-08 作者:rantsh

我正在写我的第一个“十二个孩子”主题,遇到了(我认为)一个奇怪的怪癖。

我修改了头版。php中有一个使用sliderjs的滑块,后来我决定不想将其用作首页模板,所以我更愿意将其称为其他页面的其他内容。

令我惊讶的是,我重新命名头版的那一刻。php到文本旋转木马。php并将docblock中的模板名称更改为其他名称。页面将从全宽显示我的内容和下面的小部件更改为类似于我的博客的两列版本,但将小部件分配到首页。

所以,这是头版。php十二年保留模板?是否可以将其外观复制到不同的模板中?

以下是我的代码供参考:

<?php
/**
 * Template Name: Text Carousel Page Template
 *
 * Description: A page template that provides a key component of WordPress as a CMS
 * by meeting the need for a carefully crafted introductory page. The front page template
 * in Twenty Twelve consists of a page content area for adding text, images, video --
 * anything you\'d like -- followed by front-page-only widgets in one or two columns.
 *
 * @package WordPress
 * @subpackage Twenty_Twelve
 * @since Twenty Twelve 1.0
 */

get_header(\'nonav\'); ?>

<div id="primary" class="site-content">
    <div id="content" role="main">
        <div id="example">
            <div id="slides">
                <div class="slides_container">
        <?php 
        $args = array(
                        \'posts_per_page\'  => 5,
                        \'orderby\'         => \'post_date\',
                        \'order\'           => \'DESC\',
                        \'post_type\'       => \'post\',
                        \'post_status\'     => \'publish\',
                        \'suppress_filters\' => true );

                    $myposts = get_posts( $args );
                    foreach( $myposts as $post ) :  setup_postdata($post); ?>
                        <div class="slide">
                          <h2><?php the_title(); ?></h2>
                          <p><?php echo get_the_excerpt(); ?></p>
                          <p><a href="<?php the_permalink(); ?>" class="link">Leer articulo</a></p>
                        </div>
                    <?php endforeach; ?>
                </div><!-- .slides_container -->
            </div><!-- #slides -->
        </div><!-- #example -->

    </div><!-- #content -->
</div><!-- #primary -->
<?php get_sidebar( \'front\' ); ?>
<?php get_footer(); ?>
如果文件名为“Twenty12/page templates/front page”,则效果很好。php与Template Name: Template Name: Front Page Template, 但它有两列,分别是2122页/页面模板/文本旋转木马。php与Template Name: Text Carousel Page Template

我在stackoverflow上发布了这个问题,但似乎没有取得太大的成功,所以我决定在这里开立一个账户,并将其转移到其他地方。

3 个回复
最合适的回答,由SO网友:Nina 整理而成

我遇到了完全相同的问题,最终解决了。你必须进入functions.php 第390行-

if ( is_page_template( \'page-templates/front-page.php\' ) ) {
复制并粘贴这段代码,并将其重命名为您为模板选择的文件名。

然后您必须更改引用的所有CSS.template-front-page 到任何你称之为模板的地方。(我简化了操作,只是将其添加到文件名中-例如,您可以将其称为模板首页旋转木马)

这里和那里稍作调整,两个完全相同的模板-不,您可以根据需要更改内容。

SO网友:Jacob Rambo

Wordpress在<body> 页面的标记。如果您知道如何使用CSS,您可以将模板的样式设置为与front-page.php 通过使用此类。这门课看起来像.page-template-text-carousel-page-template-php.

添加一些样式将布局更改为您喜欢的任何样式都不会花费很长时间。

SO网友:s_ha_dum

front-page.php 是WordPress中的保留模板,而不仅仅是12个。模板系统是由WordPress核心实现和实施的,而不是任何特定的主题。

http://codex.wordpress.org/Theme_Development#Template_Files_List

结束

相关推荐