首页 文章

覆盖Genesis单页模板?

提问于
浏览
2

我不得不使用创世子主题与网站合作,并希望覆盖默认的单帖布局 . 我已经创建了一个新的single.php文件,我已经将它上传到了孩子主题,但是创世纪似乎没有任何一个!?

我试图通过子主题functions.php取消设置默认的single.php文件,但这再次没有任何效果 .

任何人都可以告诉我如何废弃默认页面模板并将其替换为我自己的模板?

2 回答

  • 0

    Genesis是一个很好的框架,但文档的某些部分可能有点缺乏 . 如果要自定义单个帖子模板,可以执行以下操作

    在子主题文件夹中创建一个名为single.php的文件确保此文件中的最后一行是以下内容:

    成因();

    使用Genesis主题钩子和过滤器来操作标记 . 视觉主题钩子指南是一个很好的资源 . 见:https://genesistutorials.com/visual-hook-guide/

    因此,如果您想修改条目内容,可以执行以下操作:

    remove_action('genesis_entry_content', 'genesis_do_post_content');
    add_action( 'genesis_entry_content', 'custom_entry_content' ); // Add custom loop
    
    function custom_entry_content() {
        //Custom Entry Content
    }
    

    这仅仅是修改代码的起点,但有许多有用的钩子和过滤器 . Genesis中的所有标记修改都是通过钩子和过滤器来处理的,所以如果你试图改变post meta,那么就会有一个过滤器 .

  • 1

    如果您使用自己的主题覆盖子主题中的single.php文件,请确保使用行 genesis(); 结束新的single.php文件 . 如果不这样,您将在查看单个帖子时获得空白页面 .

相关问题