通过子主题自定义主题

时间:2019-11-23 15:28:20

标签: wordpress wordpress-theming

我最近通过“儿童主题”进入了主题编辑(我知道。所以去年夏天是对的,但是黄油要迟到从来没有)。由于我是反复试验的“程序员”,因此我不确定大部分时间我在做什么。

任何人都可以给任何线索如何通过儿童主题编辑此类设置

第一层:get_template_part('template-parts / content');

第二层:do_action('hestia_blog_post_template_part','default');

第3层:class-hestia-blog-post-layout.php [真正存在的地方]

谢谢大家

1 个答案:

答案 0 :(得分:2)

您可以通过以下方法覆盖模板:从主主题获取模板文件,然后将其放在子主题的相同位置。因此,可以说该模板从class-hestia-blog-post-layout.php被称为mainthemefolder/templates/class-hestia-blog-post-layout.php,然后将其复制到childthemefolder/templates/class-hestia-blog-post-layout.php

更新

您的主题(Hestia)似乎没有使用默认的模板使用方式。对于儿童主题应该如何工作,您绝对不是做错什么。我向孩子添加了template-parts / content.php,并更改了

hestia_blog_post_template_part

hestia_blog_post_template_part2

,在子主题的class-hestia-blog-post-layout.php中,我更改了这一行

add_action( 'hestia_blog_post_template_part', array( $this, 'render' ), 2 );

对此

add_action( 'hestia_blog_post_template_part2', array( $this, 'render' ), 2 );

但是后来还是没用。然后我注意到class-hestia-blog-post-layout.php中的类已加载到hestia/inc/core/class-hestia-autoloader中,在其中我进行了更改

'Hestia_Blog_Post_Layout' => HESTIA_PHP_INCLUDE . 'views/blog',

'Hestia_Blog_Post_Layout2' => HESTIA_PHP_INCLUDE . '../../hestia-child/inc/views/blog',

但是它仍然无法正常工作...

现在我放弃了,对不起。