首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在wordpress插件中找到要使用的文件地址的正确方法是什么

问在wordpress插件中找到要使用的文件地址的正确方法是什么
EN

Stack Overflow用户
提问于 2018-12-31 19:44:34
回答 2查看 65关注 0票数 0

我安装了一个使用javascript文件的WordPress插件,它有自定义过滤器。下面是它使用的代码:

代码语言:javascript
复制
wp_register_script( 'pw-cities', apply_filters( 'woo_my_cities', PW()->plugin_url( 'assets/js/my_cities.min.js' ) ), false, PW_VERSION, true );

我想要创建一个插件,使用这个自定义钩子,并给出另一个javascript文件的地址给它。我在插件主php文件中使用这段代码。

代码语言:javascript
复制
    function myCityFilter($path){
        $path= dirname(__FILE__) . "/assets/js/myCityList.js";
        return $path;
    }
    add_filter('woo_my_cities', 'myCityFilter');

它似乎不能正常工作,因为主插件提示缺少javascript文件。但是当我改变路径https://localhost/wp-content/plugins/myCityFilter/assets/js/myCityLits.js时,它就能工作了。如果是在主机服务器上,那么地址必须从https://example.com开始。我如何使用php自动生成这样的东西?以/var/www/html开头的地址也会产生错误

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-12-31 20:31:38

对dirname(__FILE__)的调用是将完整的文件系统路径返回到JavaScript文件。相反,您需要的是相对于应用程序的文档根的JavaScript文件的路径。

WordPress有一个内置的plugins_url()方法,您可以使用它来获取所需的路径。应该是这样的:

代码语言:javascript
复制
$path = plugins_url('/assets/js/myCityList.js', __FILE__);
票数 1
EN

Stack Overflow用户

发布于 2019-01-01 00:35:04

您可以对代码使用plugin_dir_url()函数,如下所示

代码语言:javascript
复制
function myCityFilter($path){
        $path= plugin_dir_url(__FILE__) . "assets/js/myCityList.js";
        return $path;
    }
    add_filter('woo_my_cities', 'myCityFilter');
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53990931

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档