2016-11-29 1 views
2

플러그인에 자바 스크립트 파일을 추가하고 싶습니다. 나는이 tutorial을 따르고 있었고 성공적으로 설치물 (방랑자)에서 오늘의 슬로건을 얻을 수있었습니다.Shopware 5.2.11 내 플러그인에 자바 스크립트가 포함

또한 JavaScript 파일을로드하고 싶습니다. 나는 한편, index.tpl의 변경과 다음 줄 추가 : 성공적으로로드 생성 된 HTML 스크립트 태그의 소스 코드를 살펴보면

{* 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} 

합니다. 그러나 내 JavaScript 파일은 전혀로드되지 않습니다. 어디에서 파일을 내 플러그인 폴더에 넣어야합니까? 내가 shopware 5.2.11을 사용하고

NameOfZipfile.zip 
└──Frontend 
    ├─MyPlugin 
    │ └─Views 
    │ ├─_public 
    │ │ └─src 
    │ │ └─js 
    │ │  └─myFile.js 
    │ └─frontend 
    │  └─index 
    │  └─index.tpl 
    └─Bootstrap.php 

현재 나는이 구조를 가지고있다. 인라인 스크립트를 추가하고 싶지 않습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

+0

얘들 아

솔루션, 나는 Bootstrap.php에 다음은 방법을 설치했다. 나는 혼자서 probleb를 해결할 수 있었다. 제목을 해결 된 것으로 표시합니다! 해결 방법 : 질문에서 위의 편집을 참조하십시오. –

+1

질문에 답변을 입력하지 마십시오. 질문 제목에 "해결 된"단어를 넣지 마십시오. 실제 답변을 작성하고 동의하십시오. – Quentin

+0

안녕하세요. 당신의 도움을 주셔서 감사합니다. 나는 바빴지만 지금은 돌아왔다. 나는 이것을 미래에 할 것이다. 죄송합니다. ( –

답변

2

(OP 대신 게시 됨).

$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); 
} 
+0

Grunt를 사용하는 경우 js 파일을/web/cache/config_ '+ shopId +'.json '파일에 추가하는 것을 잊지 마십시오. – b3wii

관련 문제