覆盖子主题中的模板-tag s.php

时间:2017-03-13 作者:Roger Wayne

我想覆盖位于中的某些内容(inc/) template-tags.php 父主题上的文件。

需要更改的内容正在运行footer_content_widget_area 在里面template-tags.php 文件,并调用该函数functions.php:

add_action( \'page_widgets\', \'footer_content_widget_area\' );

2 个回复
SO网友:Dan F

在里面functions.php 子主题包括template-tags.php 从父主题:

require_once get_theme_file_path( \'../parent-theme/inc/template-tags.php\' );
在子主题中template-tags.php 删除父操作并添加替换它的子操作:

remove_action( \'tag\', \'parent-function\', 0 );
add_action( \'tag\', \'new-child-function\', 10 );

SO网友:Justin

只要子主题设置正确,就可以通过将模板文件放置在相同的位置来允许子主题替换父主题模板。

因此,根据您在问题中提到的位置,您只需放置模板标记的编辑副本。位置中的phpchild-theme/inc/

在Template\\u层次结构中解释了wordpress的方式(https://developer.wordpress.org/themes/basics/template-hierarchy/).

相关推荐

Updating modified templates

我想调整一些。php模板文件在我的WordPress主题中,我知道正确的过程是将相关文件复制到子主题文件夹中并在那里编辑文件,这样我的修改就不会在将来的主题更新中丢失。但这是否意味着我将无法从主题更新中获益,因为我将文件放在了我的子主题文件夹中?这可能不是一件好事,因为主题更新可能添加了一些有用的特性,甚至修复了我最初需要对代码进行调整的问题!这方面的常见解决方案是什么?有人推荐了一款Diff应用程序——这是人们常用的吗?