不带插件的首页AMP版本

时间:2017-08-10 作者:Ishtiaq Ahmed

下面的代码适用于所有页面和帖子,但不适用于首页,任何人都可以帮助我。

e、 g HTML版本www.example.com 和AMP版本www.example.com/amp

如何在首页包含amp模板?

<?php
    define( \'AMP_QUERY_VAR\', apply_filters( \'amp_query_var\', \'amp\' ) );

    add_rewrite_endpoint( AMP_QUERY_VAR, EP_PERMALINK );

    add_filter( \'template_include\', \'amp_page_template\', 99 );

    function amp_page_template( $template ) {

        if( get_query_var( AMP_QUERY_VAR, false ) !== false ) {


            if ( is_single() ) {

                $template = get_template_directory() .  \'/amp-single.php\';

            } 

        }

        return $template;
    } ?>

1 个回复
SO网友:Chris Cox

is_single() 对于页面,将返回false,因此上面编写的代码应该只适用于单个帖子。

您需要在amp_page_template() 函数用于要替换为AMP版本的每个模板。根据您在“设置”>“阅读”>“首页显示”中的设置,is_front_page() 可能就是你要找的,或者你可以试试is_home().

结束

相关推荐

Templates for Mobile Site

是否有任何内置方法可以根据浏览器大小显示不同的模板(即移动设备检测)?我做了一些研究,我能找到的只是大量插件,它们的功能远远超出了我的需要。我基本上只需要一种方法,将移动目录添加到我的主题中,并为移动用户显示该主题。