根据编写here的文档,我在lib目录中添加了一个文件,其中包含:
<?php
namespace Theme\URIs;
/**
* Returns theme images directory uri
*/
function get_images_directory_uri() {
return get_template_directory_uri() . '/assets/images';
}
然后我尝试使用以下模板文件调用:
<?php print Theme\URIs\get_images_directory_uri(); ?>
然后调用此方法,返回Fatal error: Call to undefined function Theme\URIs\get_images_directory_uri()
。
答案 0 :(得分:0)
解决方法是将文件添加到$sage_includes
中的functions.php
数组中,所以它看起来像这样:
$sage_includes = [
'lib/assets.php', // Scripts and stylesheets
'lib/extras.php', // Custom functions
'lib/setup.php', // Theme setup
'lib/titles.php', // Page titles
'lib/wrapper.php', // Theme wrapper class
'lib/uris.php' // Project URIs
];
这会导入要在主题中使用的文件。
本文档没有解释这一点。 (我假设它只是导入了libs目录中的所有文件......)
答案 1 :(得分:0)
不是问题(我还不能发表评论),但除非您更改了目录结构,否则您的函数应该返回:
get_template_directory_uri() . '/dist/images';
随着/assets/images
中的图片优化,然后复制到/dist/images
。