¿Cómo llamar a la ruta del complemento en JS?

2

Estoy usando el wp-store-locator y quiero agregar la ruta del directorio del complemento a mi JS.

html = "<li data-store-id='" + id + "'><div><p>" + storeImg + "<strong>" + store + "</strong><span class='wpsl-street'>" + address + "</span>" + address2 + city + " " + state + " " + zip + "</p>" + moreInfo + "<span><a href='plugin-urlpath/store-listings.php' class='more-details'>More details</a></span></div></li>";

return html;

¿Cómo puedo hacer eso? La ruta del complemento se encuentra al final de html .

EDITADO :

Esto es lo que he hecho:

wp_enqueue_script( 'wpsl-gmap', ( "//maps.google.com/maps/api/js?sensor=false&libraries=places&language=" . $this->settings['api_language'] ), false, '', true ); 
wp_localize_script('wpsl-gmap', 'wpsl-gmap', array('pluginsUrl' => plugins_url(,__FILE__)));

Luego agregó esta línea a wpsl-gmap.js

var href = wpsl-gmap.pluginsUrl + '/path/to/resource';
html = "<li data-store-id='" + id + "'><div><p>" + storeImg + "<strong>" + store + "</strong><span class='wpsl-street'>" + address + "</span>" + address2 + city + " " + state + " " + zip + "</p>" + moreInfo + "<span><a href='" + href + "' class='more-details'>More details</a></span></div></li>";

No da errores. Pero tampoco me muestra la ubicación de la tienda.

NOTA Se estaba mostrando correctamente antes de hacer esto.

    
pregunta Twix 16.10.2014 - 10:15

1 respuesta

6

Use wp_localize_script() para pasar cualquier tipo de datos a sus scripts cargados, en este caso necesitamos="http://codex.wordpress.org/Function_Reference/plugins_url"> plugins_url() :

wp_enqueue_script('my-script', get_stylesheet_directory_uri() . '/js/my-script.js');
wp_localize_script('my-script', 'myScript', array(
    'pluginsUrl' => plugins_url(),
));

Ahora tendrá acceso a myScript.pluginsUrl en su archivo de script:

var href = myScript.pluginsUrl + '/path/to/resource';
    
respondido por el Ahmad M 16.10.2014 - 17:44

Lea otras preguntas en las etiquetas