我需要一个listings_recently.php文件的子副本来对其进行更改。我需要将此文件包含在我的子主题中:/themes/listingeasy/core/widgets/listings_recently.php
据我所知, 我需要告诉主题来寻找该文件。这是在我的孩子的主题functions.php中完成的, 对吗?
这就是我的functions.php:
get_template_part('get_stylesheet_directory() . "/core/widgets/listings"', 'recently');
get_template_part('get_stylesheet_directory() . "/core/widgets/listings_recently.php"');
两行均不工作。
我该如何进行?这是文件夹架构:
themes
listingeasy
single.php
core
widgets
listing_recently.php
listingeasy-child
functions.php
single.php (I made changes here and its working)
core
widgets
listing_recently.php (Changes here aren't working)
#1 我创建了二十一丁主题的子主题来重现你的方案。子主题的文件夹结构是这样的。
文章图片
functions.php
<
?php
add_action( 'wp_enqueue_scripts', 'enqueue_child_theme_styles', PHP_INT_MAX);
function enqueue_child_theme_styles() {
wp_enqueue_style( 'parent-style', get_template_directory_uri().'/style.css' );
}get_template_part( 'core/widgets/listings_recently' );
listings_recently.php
<
h1>
Sagar Tamang<
/h1>
;
<
?php
你需要使用get_template_part(‘ core / widgets / listings_recently’ ); 包含带下划线的文件。如果你在functions.php中使用了get_template_part()函数, 则输出似乎在HTML标记上方。
文章图片
#2 我不知道你的主题。但是, 当你要编辑listings_recently.php中的功能时, 可以尝试将这些功能复制到你的子主题functions.php中并在此处进行编辑。在大多数情况下, 它都有效。
问候汤姆
编辑:尝试require(); 在你的儿童主题functions.php中:
require('core/widgets/listings_recently.php');
编辑2(请参阅注释, 主题本身具有自己的get_template_directory())
get_template_directory()
返回父模板目录的路径。采用
get_stylesheet_directory()
返回你的子主题目录的路径
#3 我相信我现在明白了你在这里想要做什么。看来你正在尝试将文件的副本添加到子主题中, 以便可以编辑该文件, 并使这些更改覆盖父主题, 而不更改父主题的文件。这不是对任意php文件的本机支持的操作, 仅对主题模板文件有效。
你需要将其移动到主主题目录(与single.php所在的目录相同), 并为其指定适当的主题层次结构文件名。这就是为什么你对single.php文件所做的更改起作用的原因, 而对于此特定文件却无效。 Single.php是已知的模板, 你的文件只是你添加的php文件。
另外, 你可以更改你的listings_recently.php文件, 并在父主题中替换当前版本。如果你担心丢失旧版本, 请将其保存到桌面或使用GitHub之类的版本控制系统。这可能是最好的方法。
【核心文件夹中带有下划线的get_template_part()】第三种选择是对子主题的functions.php文件进行硬编码更改。
推荐阅读
- 在主题CSS WordPress之前应用插件CSS
- 如果该函数包含在WordPress/PHP的模板部分中,则get_template_part()不会使样式排队
- 容器类型的进阶使用(字符串)
- 26.-日常管理第三部分,系统日志网络命令相关。
- Redis技术探索帮你从底层彻底吃透AOF技术原理(基础篇)
- 白又白用Python制作了一个奇奇怪怪的月饼送给大家
- 分布式技术专题带你彻底认识Paxos算法Zab协议和Raft协议的原理和本质
- linux之ssh-keygen命令
- Hadoop之常用概念