Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.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
Php Shopware 5.2.11在我的插件中包含JavaScript_Php_Smarty_Shopware - Fatal编程技术网

Php Shopware 5.2.11在我的插件中包含JavaScript

Php Shopware 5.2.11在我的插件中包含JavaScript,php,smarty,shopware,Php,Smarty,Shopware,我想在我的插件中添加一个JavaScript文件。我遵循这一点,并能够成功地得到我的安装(流浪)当天的口号 另外,我想加载一个JavaScript文件。我更改了index.tpl的名称,并添加了以下行: {* Include own Javascript Code *} {block name="frontend_index_header_javascript_jquery_lib"} {debug} {$smarty.block.parent}

我想在我的插件中添加一个JavaScript文件。我遵循这一点,并能够成功地得到我的安装(流浪)当天的口号

另外,我想加载一个JavaScript文件。我更改了index.tpl的名称,并添加了以下行:

   {* Include own Javascript Code *}
    {block name="frontend_index_header_javascript_jquery_lib"}
      {debug}
      {$smarty.block.parent}
      {if $myVariable}<script type="text/javascript" src="{link   file='frontend/_public/src/js/myFile.js'}"></script>{/if}
    {/block}
我正在使用shopware 5.2.11。我不想添加内联脚本。我做错了什么?

(代表OP发布)

解决方案中,我在Bootstrap.php安装方法中添加了以下内容:

$this->subscribeEvent('Theme_Compiler_Collect_Plugin_Javascript', 'addJsFiles');
这个功能是:

 public function addJsFiles(Enlight_Event_EventArgs $args){
    $jsFiles = array(__DIR__ . '/Views/_public/src/js/myFile.js');

    return new Doctrine\Common\Collections\ArrayCollection($jsFiles);
}

嘿,伙计们。我自己设法解决了这个问题。我会将标题标记为已解决!解决方案:请参见上面的“编辑问题”,不要在问题中添加答案。不要在问题标题中加上“已解决”。写一个真实的答案并接受它。谢谢你的帮助。我很忙,但现在回来了。我将来会这样做。很抱歉:(如果您使用Grunt,请不要忘记将您的js文件添加到/web/cache/config_'+shopId+'.json'
 public function addJsFiles(Enlight_Event_EventArgs $args){
    $jsFiles = array(__DIR__ . '/Views/_public/src/js/myFile.js');

    return new Doctrine\Common\Collections\ArrayCollection($jsFiles);
}