Формирование ajax урла Есть решение

Пытаюсь сформировать урл для аякс запроса из фронтенда к контроллеру своего плагина. В папке config своего плагина создал файл routing.php следующего содержания:

<?php

return array(
    'myplugin/getPrice/' => 'frontend/getPrice'
);

Создал соответствующий модуль / контроллер :
myplugin/lib/actions/frontend/shopMypluginPluginFrontendGetPrice.controller.php

Со следующим содержанием:

<?php

class shopMypluginPluginFrontendGetPriceController extends waJsonController
{
public function execute()
{
$product_id = waRequest::post("product_id", 0, 'int');
$this->response = $product_id;
}

}

Пытаюсь получить урл в файле плагина /lib/shopMyplugin.plugin.php:

    public function frontendHead()
    {
        $url = wa()->getRouteUrl('shop/frontend/getPrice');
        // url = /my/
    }

В итоге url = /my/. Почему ? Что делаю не так ?

3 ответа

  • 1
    Леман Евгений 14 марта 2018 17:51 # Решение
    'frontend'    => true,

    В plugin.php?

  • 1
    Байда 14 марта 2018 18:29 #

    спс

  • 1
    Nichikov Eugen 14 марта 2018 19:43 #

    Дополню, что чтобы не было конфликтов с системными роутами или другими плагинами, урл нужно формировать так

    $url = wa()->getRouteUrl('shop/frontend/getPrice', array('plugin' => 'myplugin'));

Эта тема в архиве. Добавление комментариев к ней отключено.