Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
加载.js.php文件,因为javascript无法正常工作_Javascript_Php_Wordpress_Updates - Fatal编程技术网

加载.js.php文件,因为javascript无法正常工作

加载.js.php文件,因为javascript无法正常工作,javascript,php,wordpress,updates,Javascript,Php,Wordpress,Updates,在这种情况下,我加载一些javascript,其中也包含一些php代码。该网站不是由我设计的,所以我不知道为什么开发商会选择这种方式 我必须加载一个名为functions.js.php的文件,加载脚本如下所示: <script type='text/javascript' src='http://www.somewebsite.com/wp-content/themes/theme/js/functions.js.php?ver=1.0'></script> 这个“fu

在这种情况下,我加载一些javascript,其中也包含一些php代码。该网站不是由我设计的,所以我不知道为什么开发商会选择这种方式

我必须加载一个名为functions.js.php的文件,加载脚本如下所示:

<script type='text/javascript' src='http://www.somewebsite.com/wp-content/themes/theme/js/functions.js.php?ver=1.0'></script>
这个“functions.js.php”是一个php文件而不是js文件,这就是错误所在


你能在js文件之外提取php逻辑吗?

首先确保你的Web服务器配置为运行php文件;在Windows/Apache签出的情况下,一个非常简单的解决方案发挥了神奇的作用,但是我不知道确切的原因

我已经将functions.js.php重命名为func.php,并且还修改了functions.php脚本以加载正确命名的脚本,它工作正常

可能原因:

WP WP_register_脚本
在上一个版本中解析文件名,并实际将加载的文件解析为JS文件,而不是php例程的结果

如何复制

将php文件从“filename.php”重命名为“filename.js.php”,并使用*wp\u register\u脚本*加载该文件,这将导致相同的问题


用于此操作的Wp版本是3.8.1

您可以发布functions.js.php的代码吗?@anurupr-请查看完整代码的更新您是否尝试单独运行脚本并查看其是否正确输出js?src属性中的链接是实际链接还是虚拟链接?@anurupr我试过了,它显然下载了脚本,而不是实际运行它。由于安全问题,链接是虚拟的。这就是问题所在。php脚本没有运行并给出输出(javascript代码),这就是为什么您会得到
uncaughtsyntaxerror:uncontracted标记网站正常工作的原因。实际上,它是在服务器上,而不是在windows开发机器上。然后向我们显示结果输出,即调用时得到什么内容:它不输出任何内容。它只是下载文件,就像没有php支持一样;其他php文件是否得到正确解释?是的!除了这个特殊的脚本,我觉得一切都很好。我还检查了.htaccess的特殊规则,但什么都没有。另外,服务器错误日志是完全空的。我知道js和php之间的区别,我也想到了你的解决方案,但文件很凌乱,充满了php代码。我会尽快更新帖子看看。
Uncaught SyntaxError: Unexpected token < functions.js.php:1
        <?php if ($dynamic_header) { ?>
            $headerIsDynamic = true;
        <?php } else { ?>
            $headerIsDynamic = false;
        <?php } ?>
wp_register_script('functions', get_template_directory_uri() . '/js/functions.js.php', 'jquery', '1.0', TRUE);