Падает плагин после использования пока не очистишь кэш Есть решение

Добрый день, я написал плагин, он представляет из себя кнопку, которая открывает другой сайт.

Вызываю плагин следующим образом: {shopButtonPlugin::showButton()}

Но после смены настроек плагина или при повторном нажатии, если очистить кэш браузера плагин падает:

Fatal error: Uncaught Error: Class 'shopButtonPlugin' not found in D:\Programs\xampp\htdocs\shopTest\wa-cache\7ad846\apps\site\templates\compiled\site_ru_RU\62\76\28\627628c6db0104405b3f86fd36f88566c85ab322.string.php:30 Stack trace: #0 D:\Programs\xampp\htdocs\shopTest\wa-system\vendors\smarty3\sysplugins\smarty_internal_templatebase.php(186): content_5f7ad84a950c72_86928246(Object(Smarty_Internal_Template)) #1 D:\Programs\xampp\htdocs\shopTest\wa-system\view\waSmarty3View.class.php(144): Smarty_Internal_TemplateBase->fetch('string:<h2>\xD0\x94\xD0\xBE...', NULL) #2 D:\Programs\xampp\htdocs\shopTest\wa-system\page\actions\waPage.action.php(95): waSmarty3View->fetch('string:<h2>\xD0\x94\xD0\xBE...') #3 D:\Programs\xampp\htdocs\shopTest\wa-apps\site\lib\actions\frontend\siteFrontend.action.php(21): waPageAction->renderPage(Array) #4 D:\Programs\xampp\htdocs\shopTest\wa-system\controller\waViewAction.class.php(161): siteFrontendAction->execute() #5 D:\Programs\xampp\htdocs\shopTest\wa-system\page\actions\waPage.acti in D:\Programs\xampp\htdocs\shopTest\wa-cache\7ad846\apps\site\templates\compiled\site_ru_RU\62\76\28\627628c6db0104405b3f86fd36f88566c85ab322.string.php on line 30

Если очистить кэш в инсталлере, плагин снова корректно работает.

Как это исправить? Я должен прописать в коде после нажатия на кнопку чистить кэш или я что-то упустил?

1 ответ

  • 1
    Syrnik.com 5 октября 2020 21:45 # Решение

    Вы пытаетесь вызвать плагин для приложения shop из шаблона приложения site.

    Надо как-то так делать

    {if $wa->shop}
    {shopButtonPlugin::showButton()}
    {/if}

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите