<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	 xmlns:media="http://search.yahoo.com/mrss/" >

<channel>
	<title>Advanced Configuration &#8211; Agile Store Locator WordPress Plugin</title>
	<atom:link href="https://agilestorelocator.com/wiki/agile-store-locator/advanced-configuration/feed/" rel="self" type="application/rss+xml" />
	<link>https://agilestorelocator.com</link>
	<description>#1 Store Locator WordPress Plugin that finds location using the Google Maps</description>
	<lastBuildDate>Fri, 05 Dec 2025 09:46:07 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>
	<item>
		<title>Agile Store Locator – Google Tag Manager Integration Guide</title>
		<link>https://agilestorelocator.com/wiki/agile-store-locator-google-tag-manager-integration-guide/</link>
					<comments>https://agilestorelocator.com/wiki/agile-store-locator-google-tag-manager-integration-guide/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Fri, 11 Jul 2025 14:29:26 +0000</pubDate>
				<guid isPermaLink="false">https://agilestorelocator.com/?post_type=docs&#038;p=4052</guid>

					<description><![CDATA[Agile Store Locator (ASL) supports integration with Google Tag Manager (GTM) for advanced event tracking of your store locator interactions. With GTM, you can send key user interactions from your store locator directly to Google Analytics 4 (GA4) or any other connected service—without modifying your core website code. What This Integration Does By following this ... <br><a href="https://agilestorelocator.com/wiki/agile-store-locator-google-tag-manager-integration-guide/" class="text-muted readmore">Read More <i data-feather="chevron-right" class="fea icon-sm"></i></a>]]></description>
										<content:encoded><![CDATA[
<p>Agile Store Locator (ASL) supports integration with Google Tag Manager (GTM) for advanced event tracking of your store locator interactions.</p>



<p>With GTM, you can send key user interactions from your store locator directly to Google Analytics 4 (GA4) or any other connected service—without modifying your core website code.</p>



<h2 class="wp-block-heading">What This Integration Does</h2>



<p>By following this guide, you’ll track the following events in GTM:</p>



<ul class="wp-block-list">
<li>Search events</li>



<li>Store selection (map/marker clicks)</li>



<li>Store selection (sidebar/list clicks)</li>



<li>Direction clicks</li>



<li>Email link clicks <em>(available since v4.11.19)</em></li>



<li>Phone link clicks <em>(available since v4.11.19)</em></li>
</ul>



<p>Each event automatically pushes relevant store details into GTM’s dataLayer, so you can analyze user interactions in Google Analytics.</p>



<h2 class="wp-block-heading">How It Works</h2>



<p>Agile Store Locator exposes a <strong>JavaScript event hook</strong> called <code class="" data-line="">asl_event_hook</code>. You can add this function to your site to automatically push event data to GTM’s <code class="" data-line="">dataLayer</code>.</p>



<p>When a visitor performs an action—like searching, selecting a store, or clicking email/phone links—your custom <code class="" data-line="">asl_event_hook</code> will send structured data to GTM.</p>



<p>You then configure GTM to trigger Google Analytics events based on these pushes.</p>



<h2 class="wp-block-heading">Step 1 – Add the Google Tag Manager Snippet</h2>



<p>First, ensure the GTM container code is installed on your site. Google Tag Manager provides you with code like:</p>



<pre class="wp-block-prismatic-blocks"><code class="language-javascript" data-line="">&lt;!-- Google Tag Manager --&gt;
&lt;script&gt;(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({&#039;gtm.start&#039;:
new Date().getTime(),event:&#039;gtm.js&#039;});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!=&#039;dataLayer&#039;?&#039;&amp;l=&#039;+l:&#039;&#039;;j.async=true;j.src=
&#039;https://www.googletagmanager.com/gtm.js?id=&#039;+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,&#039;script&#039;,&#039;dataLayer&#039;,&#039;GTM-XXXXXXX&#039;);&lt;/script&gt;
&lt;!-- End Google Tag Manager --&gt;

&lt;!-- Google Tag Manager (noscript) --&gt;
&lt;noscript&gt;&lt;iframe src=&quot;https://www.googletagmanager.com/ns.html?id=GTM-XXXXXXX&quot;
height=&quot;0&quot; width=&quot;0&quot; style=&quot;display:none;visibility:hidden&quot;&gt;&lt;/iframe&gt;&lt;/noscript&gt;
&lt;!-- End Google Tag Manager (noscript) --&gt;
</code></pre>



<p>Replace <code class="" data-line="">GTM-XXXXXXX</code> with your container ID.<br></p>



<p>Add this <strong>above the closing <code class="" data-line="">&lt;/head&gt;</code> tag</strong> and <strong>immediately after the opening <code class="" data-line="">&lt;body&gt;</code> tag</strong> of your site.</p>



<h2 class="wp-block-heading">Step 2 – Add the ASL Event Hook Script</h2>



<p>Next, add the following JavaScript to your site. You can place it in your theme’s footer, or enqueue it via your CMS or plugin.</p>



<p>This script listens for ASL events and pushes them to <code class="" data-line="">dataLayer</code> for GTM:</p>



<pre class="wp-block-prismatic-blocks"><code class="language-javascript" data-line="">&lt;script type=&quot;text/javascript&quot;&gt;
function asl_event_hook(_event) {
  if (!_event || !_event.type) return;

  // 1- SEARCH EVENT
  if (_event.type === &#039;search&#039;) {
    var active_filters = (asl_view.featureFilter.array_ || []).map(function(cat) {
      return cat.name_;
    }).join(&#039;,&#039;);

    dataLayer.push({
      &#039;event&#039;: &#039;asl_search_event&#039;,
      &#039;search_type&#039;: &#039;Address&#039;,
      &#039;search_filters&#039;: active_filters,
      &#039;address_searched&#039;: _event.data.search_text
    });
  }

  // 2- SELECT EVENT (Store list / marker click)
  else if (_event.type === &#039;select&#039;) {
    var store = _event.data || {};
    var category_names = (store.categories || []).map(function(cat) {
      return cat.name;
    }).join(&#039;,&#039;);

    dataLayer.push({
      &#039;event&#039;: &#039;asl_store_selected&#039;,
      &#039;store_id&#039;: store.id,
      &#039;store_title&#039;: store.title,
      &#039;store_street&#039;: store.street,
      &#039;store_city&#039;: store.city,
      &#039;store_state&#039;: store.state,
      &#039;store_postal_code&#039;: store.postal_code,
      &#039;store_country&#039;: store.country,
      &#039;store_lat&#039;: store.lat,
      &#039;store_lng&#039;: store.lng,
      &#039;store_phone&#039;: store.phone,
      &#039;store_email&#039;: store.email,
      &#039;store_website&#039;: store.website,
      &#039;store_categories&#039;: category_names,
      &#039;store_link&#039;: store.link
    });
  }

  // 3- LIST CLICK SELECT EVENT
  else if (_event.type === &#039;asl_store_select_click&#039;) {
    var store = _event.data || {};
    var category_names = (store.categories || []).map(function(cat) {
      return cat.name;
    }).join(&#039;,&#039;);

    dataLayer.push({
      &#039;event&#039;: &#039;asl_store_select_click&#039;,
      &#039;store_id&#039;: store.id,
      &#039;store_title&#039;: store.title,
      &#039;store_city&#039;: store.city,
      &#039;store_state&#039;: store.state,
      &#039;store_country&#039;: store.country,
      &#039;store_phone&#039;: store.phone,
      &#039;store_email&#039;: store.email,
      &#039;store_categories&#039;: category_names
    });
  }

  // 4- EMAIL CLICK EVENT (available since v4.11.19)
  else if (_event.type === &#039;asl_email_click&#039;) {
    var store = _event.data || {};

    dataLayer.push({
      &#039;event&#039;: &#039;asl_email_click&#039;,
      &#039;store_id&#039;: store.id,
      &#039;store_title&#039;: store.title,
      &#039;store_email&#039;: store.email
    });
  }

  // 5- PHONE CLICK EVENT (available since v4.11.19)
  else if (_event.type === &#039;asl_phone_click&#039;) {
    var store = _event.data || {};

    dataLayer.push({
      &#039;event&#039;: &#039;asl_phone_click&#039;,
      &#039;store_id&#039;: store.id,
      &#039;store_title&#039;: store.title,
      &#039;store_phone&#039;: store.phone
    });
  }

  // 6- DIRECTION CLICK EVENT
  else if (_event.type === &#039;direction&#039;) {
    var store = _event.data || {};

    dataLayer.push({
      &#039;event&#039;: &#039;asl_direction_click&#039;,
      &#039;store_id&#039;: store.id,
      &#039;store_title&#039;: store.title,
      &#039;store_street&#039;: store.street,
      &#039;store_city&#039;: store.city,
      &#039;store_state&#039;: store.state,
      &#039;store_postal_code&#039;: store.postal_code,
      &#039;store_country&#039;: store.country,
      &#039;store_lat&#039;: store.lat,
      &#039;store_lng&#039;: store.lng
    });
  }
}
&lt;/script&gt;
</code></pre>



<h2 class="wp-block-heading">Step 3 – Set Up Google Tag Manager</h2>



<p>Once the <code class="" data-line="">asl_event_hook</code> is on your site, Google Tag Manager will receive events in its <strong>dataLayer</strong>.</p>



<p>You can now configure GTM to send these events to Google Analytics 4.</p>



<h3 class="wp-block-heading">3.1 – Create Data Layer Variables</h3>



<p>In GTM:</p>



<ol class="wp-block-list">
<li>Go to <strong>Variables</strong></li>



<li>Click <strong>New</strong> > <strong>Data Layer Variable</strong></li>



<li>Create variables for:</li>
</ol>



<ul class="wp-block-list">
<li>store_id</li>



<li>store_title</li>



<li>store_street</li>



<li>store_city</li>



<li>store_state</li>



<li>store_postal_code</li>



<li>store_country</li>



<li>store_lat</li>



<li>store_lng</li>



<li>store_phone</li>



<li>store_email</li>



<li>store_website</li>



<li>store_categories</li>



<li>store_link</li>



<li>search_type</li>



<li>search_filters</li>



<li>address_searched</li>
</ul>



<p>These variables let GTM pull data from the dataLayer pushes.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">3.2 – Create Custom Event Triggers</h3>



<p>Next, create a <strong>Custom Event Trigger</strong> for each ASL event type:</p>



<p>Event Names to use:</p>



<ul class="wp-block-list">
<li><code class="" data-line="">asl_search_event</code></li>



<li><code class="" data-line="">asl_store_selected</code></li>



<li><code class="" data-line="">asl_store_select_click</code></li>



<li><code class="" data-line="">asl_email_click</code> <em>(available since v4.11.19)</em></li>



<li><code class="" data-line="">asl_phone_click</code> <em>(available since v4.11.19)</em></li>



<li><code class="" data-line="">asl_direction_click</code></li>
</ul>



<ol class="wp-block-list">
<li>Go to <strong>Triggers</strong></li>



<li>Click <strong>New</strong> > <strong>Trigger Type: Custom Event</strong></li>



<li>Enter the Event Name (e.g. <code class="" data-line="">asl_search_event</code>)</li>
</ol>



<p>Repeat for each event.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">3.3 – Create GA4 Event Tags</h3>



<p>For each trigger:</p>



<ol class="wp-block-list">
<li>Go to <strong>Tags</strong></li>



<li>Click <strong>New</strong> > <strong>Tag Type: Google Analytics: GA4 Event</strong></li>



<li>Select your GA4 Configuration Tag</li>



<li>Enter an <strong>Event Name</strong> (e.g. <code class="" data-line="">locator_search</code>, <code class="" data-line="">store_selected</code>, etc.)</li>



<li>Add <strong>Event Parameters</strong> from your Data Layer Variables</li>
</ol>



<p>Example for <code class="" data-line="">asl_email_click</code>:</p>



<ul class="wp-block-list">
<li>Event Name: <code class="" data-line="">store_email_click</code></li>



<li>Parameters:
<ul class="wp-block-list">
<li>store_id</li>



<li>store_title</li>



<li>store_email</li>
</ul>
</li>
</ul>



<p>Example for <code class="" data-line="">asl_search_event</code>:</p>



<ul class="wp-block-list">
<li>Event Name: <code class="" data-line="">locator_search</code></li>



<li>Parameters:
<ul class="wp-block-list">
<li>search_type</li>



<li>search_filters</li>



<li>address_searched</li>
</ul>
</li>
</ul>



<p>Link the appropriate <strong>Custom Event Trigger</strong> to each Tag.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">3.4 – Publish Your Container</h3>



<ol class="wp-block-list">
<li>Click <strong>Submit</strong> in GTM</li>



<li>Add a Version Name (e.g. “ASL Events Integration”)</li>



<li>Click <strong>Publish</strong></li>
</ol>



<p>Your site is now tracking ASL events via GTM!</p>



<h2 class="wp-block-heading">Important Disclaimer</h2>



<p>Agile Store Locator’s Google Tag Manager integration <strong>only</strong> pushes event data into the website’s <code class="" data-line="">dataLayer</code>.</p>



<p>We <strong>do not</strong> configure, debug, or manage your Google Tag Manager container, triggers, or Google Analytics setup.</p>



<p>If your GTM or Google Analytics environment does not receive or record these events as expected, it is your responsibility to:</p>



<ol class="wp-block-list">
<li>Ensure your GTM container is correctly installed on your website</li>



<li>Verify that your triggers, variables, and tags are properly configured</li>



<li>Debug GTM using built-in tools like the Preview mode</li>
</ol>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p><strong>Agile Store Locator support does not include customizing or troubleshooting Google Tag Manager or Google Analytics implementations.</strong></p>
</blockquote>



<p>Our plugin guarantees only that it will <strong>send the event data to the dataLayer</strong> in a standard format.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://agilestorelocator.com/wiki/agile-store-locator-google-tag-manager-integration-guide/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Third-Party SEO Plugin Compatibilities</title>
		<link>https://agilestorelocator.com/wiki/third-party-seo-plugin-compatibilities/</link>
					<comments>https://agilestorelocator.com/wiki/third-party-seo-plugin-compatibilities/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Fri, 21 Feb 2025 14:50:13 +0000</pubDate>
				<guid isPermaLink="false">https://agilestorelocator.com/?post_type=docs&#038;p=3911</guid>

					<description><![CDATA[The Agile Store Locator plugin integrates with several popular SEO plugins to ensure compatibility and enhance SEO functionalities. Below is the documentation for the supported SEO plugins and how to disable these compatibilities if needed. Supported SEO Plugins Disabling Compatibilities If you need to disable the compatibility with any of the supported SEO plugins, you ... <br><a href="https://agilestorelocator.com/wiki/third-party-seo-plugin-compatibilities/" class="text-muted readmore">Read More <i data-feather="chevron-right" class="fea icon-sm"></i></a>]]></description>
										<content:encoded><![CDATA[
<p>The Agile Store Locator plugin integrates with several popular SEO plugins to ensure compatibility and enhance SEO functionalities. Below is the documentation for the supported SEO plugins and how to disable these compatibilities if needed.</p>



<h3 class="wp-block-heading">Supported SEO Plugins</h3>



<ol class="wp-block-list">
<li><strong>Yoast SEO</strong></li>



<li><strong>Rank Math</strong></li>



<li><strong>SEOPress</strong></li>



<li><strong>The SEO Framework</strong></li>
</ol>



<h3 class="wp-block-heading">Disabling Compatibilities</h3>



<p>If you need to disable the compatibility with any of the supported SEO plugins, you can define specific constants in your&nbsp;<code class="" data-line="">wp-config.php</code>&nbsp;file. Here are the constants you can use:</p>



<ul class="wp-block-list">
<li><strong>Yoast SEO</strong>: Define <code class="" data-line="">ASL_DISABLE_YOAST</code> to disable compatibility.</li>



<li><strong>Rank Math</strong>: Define <code class="" data-line="">ASL_DISABLE_RANKMATH</code> to disable compatibility.</li>



<li><strong>SEOPress</strong>: Define <code class="" data-line="">ASL_DISABLE_SEOPRESS</code> to disable compatibility.</li>



<li><strong>The SEO Framework</strong>: Define <code class="" data-line="">ASL_DISABLE_SEOFRAMEWORK</code> to disable compatibility.</li>
</ul>



<h3 class="wp-block-heading">SEOPress Configuration</h3>



<p>For SEOPress compatibility, you need to define&nbsp;<code class="" data-line="">ASL_REGISTER_TYPE</code>&nbsp;in your&nbsp;<code class="" data-line="">wp-config.php</code>&nbsp;file. This ensures that the custom post type for Agile Store Locator is registered correctly with SEOPress.</p>



<pre class="wp-block-prismatic-blocks"><code class="language-php" data-line="">define(&#039;ASL_REGISTER_TYPE&#039;, true);</code></pre>



<h3 class="wp-block-heading">Summary</h3>



<p>The Agile Store Locator plugin ensures compatibility with popular SEO plugins by adding custom hooks and filters. If you need to disable these compatibilities, you can do so by defining the appropriate constants in your&nbsp;<code class="" data-line="">wp-config.php</code>&nbsp;file.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://agilestorelocator.com/wiki/third-party-seo-plugin-compatibilities/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Data WPML</title>
		<link>https://agilestorelocator.com/wiki/data-wpml/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Thu, 25 Aug 2022 12:02:38 +0000</pubDate>
				<category><![CDATA[wiki]]></category>
		<guid isPermaLink="false">https://agilestorelocator.com/?p=2740</guid>

					<description><![CDATA[Store Locator for WordPress is a fully translatable plugin for either the static content of the locator UI or the data itself that includes your stores, categories and other content such as specialties and brands, the static content such as header title can easily be translated by any WordPress translation plugin like WPML or Loco ... <br><a href="https://agilestorelocator.com/wiki/data-wpml/" class="text-muted readmore">Read More <i data-feather="chevron-right" class="fea icon-sm"></i></a>]]></description>
										<content:encoded><![CDATA[
<p>Store Locator for WordPress is a fully translatable plugin for either the static content of the locator UI or the data itself that includes your stores, categories and other content such as specialties and brands, the static content such as header title can easily be translated by any WordPress translation plugin like <a href="https://wpml.org/" rel="nofollow noopener" target="_blank">WPML</a> or <a href="https://wordpress.org/plugins/loco-translate/" rel="nofollow noopener" target="_blank">Loco Translate</a>, as described in this <a href="https://agilestorelocator.com/wiki/language-translation-store-locator/">translation guide</a>.</p>



<p></p>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="509" src="https://agilestorelocator.com/wp-content/uploads/2022/08/static-content-locator-ui-1024x509.png" alt="static content locator ui" class="wp-image-2741" title="Data WPML 1" srcset="https://agilestorelocator.com/wp-content/uploads/2022/08/static-content-locator-ui-1024x509.png 1024w, https://agilestorelocator.com/wp-content/uploads/2022/08/static-content-locator-ui-300x149.png 300w, https://agilestorelocator.com/wp-content/uploads/2022/08/static-content-locator-ui-768x382.png 768w, https://agilestorelocator.com/wp-content/uploads/2022/08/static-content-locator-ui-350x174.png 350w, https://agilestorelocator.com/wp-content/uploads/2022/08/static-content-locator-ui-76x38.png 76w, https://agilestorelocator.com/wp-content/uploads/2022/08/static-content-locator-ui.png 1148w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Static content in red, stores data in green</figcaption></figure>



<h4 class="wp-block-heading">How to translate static content via the WPML plugin?</h4>



<p>All the static keywords can be translated via WPML plugin just like any other text that is done via WPML, please visit the plugins section of that plugin to see the Agile Store Locator in the list.</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="525" src="https://agilestorelocator.com/wp-content/uploads/2022/08/wpml-1-1024x525.png" alt="wpml 1" class="wp-image-2742" title="Data WPML 2" srcset="https://agilestorelocator.com/wp-content/uploads/2022/08/wpml-1-1024x525.png 1024w, https://agilestorelocator.com/wp-content/uploads/2022/08/wpml-1-300x154.png 300w, https://agilestorelocator.com/wp-content/uploads/2022/08/wpml-1-768x394.png 768w, https://agilestorelocator.com/wp-content/uploads/2022/08/wpml-1-350x180.png 350w, https://agilestorelocator.com/wp-content/uploads/2022/08/wpml-1-76x39.png 76w, https://agilestorelocator.com/wp-content/uploads/2022/08/wpml-1.png 1029w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">WPML Plugin List</figcaption></figure>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="451" src="https://agilestorelocator.com/wp-content/uploads/2022/08/wpml-2-1024x451.png" alt="wpml 2" class="wp-image-2743" title="Data WPML 3" srcset="https://agilestorelocator.com/wp-content/uploads/2022/08/wpml-2-1024x451.png 1024w, https://agilestorelocator.com/wp-content/uploads/2022/08/wpml-2-300x132.png 300w, https://agilestorelocator.com/wp-content/uploads/2022/08/wpml-2-768x338.png 768w, https://agilestorelocator.com/wp-content/uploads/2022/08/wpml-2-350x154.png 350w, https://agilestorelocator.com/wp-content/uploads/2022/08/wpml-2-76x33.png 76w, https://agilestorelocator.com/wp-content/uploads/2022/08/wpml-2.png 1193w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Translate Static Content via WPML Plugin</figcaption></figure>



<h4 class="wp-block-heading">How to translate the Stores data?</h4>



<p>Store locator stores data is maintained in its own store&#8217;s database table, so in order to translate it we have provided a control named Data WPML, that can be enabled through the ASL Settings  &gt; General tab.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="626" height="139" src="https://agilestorelocator.com/wp-content/uploads/2022/08/data-wpml.png" alt="data wpml" class="wp-image-2744" title="Data WPML 4" srcset="https://agilestorelocator.com/wp-content/uploads/2022/08/data-wpml.png 626w, https://agilestorelocator.com/wp-content/uploads/2022/08/data-wpml-300x67.png 300w, https://agilestorelocator.com/wp-content/uploads/2022/08/data-wpml-350x78.png 350w, https://agilestorelocator.com/wp-content/uploads/2022/08/data-wpml-76x17.png 76w" sizes="auto, (max-width: 626px) 100vw, 626px" /><figcaption class="wp-element-caption">Data WPML Feature</figcaption></figure>



<p>After enabling it, you will be able to feed the store data into multiple languages that are enabled on the site, for detail please read the section &#8220;<a href="https://agilestorelocator.com/wiki/language-translation-store-locator/">How to Display the Store Data in Multiple Languages</a>&#8220;.</p>



<h3 class="wp-block-heading">The dropdown language selector is just showing one language</h3>



<p>In case your language dropdown in the manage stores is showing up only one language and you need to add more of it, please go to your WordPress admin panel, select &#8220;Settings&#8221;, then &#8220;General&#8221;, and check your &#8220;Site Language&#8221;, and add the new language, once the setting is saved, the new language will appear on the dropdown.</p>



<figure class="wp-block-embed aligncenter is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe loading="lazy" title="Stores Data Translation | Store Locator for WordPress" width="640" height="360" src="https://www.youtube.com/embed/k-EidGBZkTI?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</div><figcaption class="wp-element-caption">Data Translation</figcaption></figure>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>JSON Cache</title>
		<link>https://agilestorelocator.com/wiki/json-cache/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Wed, 24 May 2023 13:49:47 +0000</pubDate>
				<category><![CDATA[wiki]]></category>
		<guid isPermaLink="false">https://agilestorelocator.com/?p=3030</guid>

					<description><![CDATA[The JSON Cache feature in the store locator plugin offers improved performance by preserving JSON data and serving them instead of making repeated server requests. Key Points: When JSON cache is disabled, please refer to the guide article if your stores are still not visible, in order to resolve the issue.]]></description>
										<content:encoded><![CDATA[
<p>The JSON Cache feature in the store locator plugin offers improved performance by preserving JSON data and serving them instead of making repeated server requests.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="765" height="449" src="https://agilestorelocator.com/wp-content/uploads/2023/05/json-cache-feature.png" alt="json cache feature" class="wp-image-3031" title="JSON Cache 5" srcset="https://agilestorelocator.com/wp-content/uploads/2023/05/json-cache-feature.png 765w, https://agilestorelocator.com/wp-content/uploads/2023/05/json-cache-feature-300x176.png 300w, https://agilestorelocator.com/wp-content/uploads/2023/05/json-cache-feature-350x205.png 350w, https://agilestorelocator.com/wp-content/uploads/2023/05/json-cache-feature-76x45.png 76w" sizes="auto, (max-width: 765px) 100vw, 765px" /></figure>
</div>


<p><strong>Key Points:</strong></p>



<ul class="wp-block-list">
<li>Preserves JSON data in advance, eliminating the need for frequent requests to <code class="" data-line="">admin-ajax.php</code> and database queries.</li>



<li>Supports serving JSON files for each active language, ensuring accurate and localized results on multilingual websites.</li>



<li>Enhances loading speed by retrieving data from pre-saved JSON files, resulting in a faster and more responsive store locator experience.</li>



<li>Reduces server load for high-traffic sites by avoiding repeated server calls and database hits.</li>



<li>Provides the ability to restrict access to the <code class="" data-line="">wp-admin.php</code> section, as the JSON files are saved in the <code class="" data-line="">wp-uploads</code> directory.</li>
</ul>



<p>When JSON cache is disabled, please <a href="https://agilestorelocator.com/wiki/a-few-of-my-stores-are-not-appearing/">refer to the guide article</a> if your stores are still not visible, in order to resolve the issue.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Configuring the WordPress Schedule for Automatic Stores CSV Import</title>
		<link>https://agilestorelocator.com/wiki/how-to-configure-the-cronjob/</link>
		
		<dc:creator><![CDATA[Talha Nadeem]]></dc:creator>
		<pubDate>Tue, 13 Jul 2021 11:38:20 +0000</pubDate>
				<category><![CDATA[wiki]]></category>
		<guid isPermaLink="false">https://agilestorelocator.com/?p=1813</guid>

					<description><![CDATA[Agile Store Locator supports the cronjob through which you can configure to automatically import your CSV files in the WordPress.]]></description>
										<content:encoded><![CDATA[
<p>Our plugin offers a scheduling feature that allows you to automatically import store locations from CSV files. To utilize this feature, you simply need to place your CSV files in the designated directory. The plugin will then process the files based on their timestamps, importing any files that are newer than the previously imported ones.</p>



<p>The directory where you should place your CSV files for automatic import is:</p>



<pre class="wp-block-prismatic-blocks"><code class="language-git" data-line="">/wp-content/uploads/agile-store-locator/cron</code></pre>



<p>By leveraging this functionality, you can easily keep your store locator updated with the latest store location data without manual intervention. Simply upload your CSV files to the specified directory, and the plugin will take care of the rest, ensuring that your store locations are regularly synchronized with the provided CSV files.</p>



<h3 class="wp-block-heading" id="h-notifications"><strong>Notifications</strong></h3>



<p>Once this step is completed, your cron job setup is complete. Furthermore, whenever a CSV is processed it will send you an email for the import rows and the file count, for this reason, please make sure to add an email address in the admin “Notification” field and enable the checkbox “Notification” in the ASL Settings.</p>



<h3 class="wp-block-heading" id="h-troubleshooting-guide-for-wp-scheduling-and-csv-import">Troubleshooting Guide for WP Scheduling and CSV Import</h3>



<p>To troubleshoot issues related to CSV file imports using WordPress scheduling in the Agile Store Locator plugin. Below are common scenarios and steps to address them.</p>



<p><strong>1. Outdated File Uploaded:</strong></p>



<ul class="wp-block-list">
<li><strong><strong>Issue</strong>:</strong> The CSV file may not be imported if it&#8217;s outdated, as the cron job processes only newly uploaded files.</li>



<li><strong>Resolution Steps:</strong>
<ul class="wp-block-list">
<li>Ensure that you are uploading a recently updated CSV file to the designated directory.</li>



<li>Check the modification date of the CSV file to confirm if it meets the criteria for processing by the cron job.</li>
</ul>
</li>
</ul>



<p><strong>2. Incorrect CSV Format:</strong></p>



<ul class="wp-block-list">
<li><strong><strong>Issue</strong>:</strong> CSV files with incorrect formats may not be imported successfully.</li>



<li><strong>Resolution Steps:</strong>
<ul class="wp-block-list">
<li>Verify that the CSV file format matches the demo file provided within the plugin.</li>



<li>Check for any discrepancies in column headers, data types, or delimiters that might cause import failures.</li>



<li>Validate the CSV file using a spreadsheet application or a CSV validation tool to ensure it meets the required format.</li>
</ul>
</li>
</ul>



<p><strong>3. Cron Job Verification:</strong></p>



<ul class="wp-block-list">
<li><strong>Issue:</strong> The cron job may not be executing as expected.</li>



<li><strong>Resolution Steps:</strong>
<ul class="wp-block-list">
<li>Install a <a href="https://wordpress.org/plugins/advanced-cron-manager/" target="_blank" rel="noopener">Cron Manager</a> plugin to inspect the list of scheduled cron jobs.</li>



<li>Check if the &#8216;asl_import_cron&#8217; job is listed and active.</li>
</ul>
</li>
</ul>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="197" src="https://agilestorelocator.com/wp-content/uploads/2021/07/import-cron-1024x197.png" alt="import cron" class="wp-image-4145" title="Configuring the WordPress Schedule for Automatic Stores CSV Import 6" srcset="https://agilestorelocator.com/wp-content/uploads/2021/07/import-cron-1024x197.png 1024w, https://agilestorelocator.com/wp-content/uploads/2021/07/import-cron-300x58.png 300w, https://agilestorelocator.com/wp-content/uploads/2021/07/import-cron-768x148.png 768w, https://agilestorelocator.com/wp-content/uploads/2021/07/import-cron-360x69.png 360w, https://agilestorelocator.com/wp-content/uploads/2021/07/import-cron-350x67.png 350w, https://agilestorelocator.com/wp-content/uploads/2021/07/import-cron-76x15.png 76w, https://agilestorelocator.com/wp-content/uploads/2021/07/import-cron.png 1262w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<ul class="wp-block-list">
<li>Verify the scheduling frequency and parameters associated with the cron job to ensure it&#8217;s configured correctly.</li>
</ul>



<p><strong>4. Manual Execution Test:</strong></p>



<ul class="wp-block-list">
<li><strong><strong>Issue</strong>:</strong> Uncertainty about whether the import process is functioning properly.</li>



<li><strong>Resolution Steps:</strong>
<ul class="wp-block-list">
<li>Add a new CSV file to the designated directory: <code class="" data-line="">/wp-content/uploads/agile-store-locator/cron</code>.</li>



<li>Use the Cron manager plugin to manually execute the &#8216;asl_import_cron&#8217; job.</li>



<li>Monitor the import process closely to determine if the new file is imported successfully.</li>



<li>Analyze any error messages or notifications generated during the manual execution for insights into potential issues.</li>
</ul>
</li>
</ul>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="199" src="https://agilestorelocator.com/wp-content/uploads/2021/07/execute-import-cron-1024x199.png" alt="execute import cron" class="wp-image-4146" title="Configuring the WordPress Schedule for Automatic Stores CSV Import 7" srcset="https://agilestorelocator.com/wp-content/uploads/2021/07/execute-import-cron-1024x199.png 1024w, https://agilestorelocator.com/wp-content/uploads/2021/07/execute-import-cron-300x58.png 300w, https://agilestorelocator.com/wp-content/uploads/2021/07/execute-import-cron-768x149.png 768w, https://agilestorelocator.com/wp-content/uploads/2021/07/execute-import-cron-360x70.png 360w, https://agilestorelocator.com/wp-content/uploads/2021/07/execute-import-cron-350x68.png 350w, https://agilestorelocator.com/wp-content/uploads/2021/07/execute-import-cron-76x15.png 76w, https://agilestorelocator.com/wp-content/uploads/2021/07/execute-import-cron.png 1248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<h3 class="wp-block-heading" id="h-api-based-solution">API Based Solution</h3>



<p>Agile Store Locator has a separate addon that can keep your store&#8217;s data synchronized with any kind of REST API, for more details on it visit the page about <a href="https://agilestorelocator.com/wiki/introduction-to-agile-data-sync/">Agile Sync Data Addon</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Permissions</title>
		<link>https://agilestorelocator.com/wiki/permissions/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sun, 16 May 2021 10:12:54 +0000</pubDate>
				<category><![CDATA[wiki]]></category>
		<guid isPermaLink="false">https://agilestorelocator.com/?p=1804</guid>

					<description><![CDATA[The Store Locator permission works based on the permission levels of the WordPress that can be found on the WordPress permission page.]]></description>
										<content:encoded><![CDATA[
<p>The Store Locator permissions work based on the permission levels of WordPress. Furthermore, This can be found on the WordPress permission page.</p>



<p>Please add the following line in the wp-config.php page to change the permission of the Store Locator plugin:</p>



<pre class="wp-block-prismatic-blocks"><code class="language-php" data-line=""> define(&#039;ASL_PERMISSION&#039;, &#039;edit_pages&#039;); </code></pre>



<p>The list of possible permission values can be found at the following <a href="https://wordpress.org/support/article/roles-and-capabilities/" target="_blank" rel="noopener">link</a>.<code class="" data-line="">  </code></p>



<p>Please make sure to add the line before the last line, so it will be like this.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="669" height="271" src="https://agilestorelocator.com/wp-content/uploads/2023/10/edit-permissions-store-locator.png" alt="edit store locator permission" class="wp-image-3297" title="Permissions 8" srcset="https://agilestorelocator.com/wp-content/uploads/2023/10/edit-permissions-store-locator.png 669w, https://agilestorelocator.com/wp-content/uploads/2023/10/edit-permissions-store-locator-300x122.png 300w, https://agilestorelocator.com/wp-content/uploads/2023/10/edit-permissions-store-locator-350x142.png 350w, https://agilestorelocator.com/wp-content/uploads/2023/10/edit-permissions-store-locator-76x31.png 76w" sizes="auto, (max-width: 669px) 100vw, 669px" /></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Notifications</title>
		<link>https://agilestorelocator.com/wiki/notifications/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Tue, 20 Sep 2022 11:20:48 +0000</pubDate>
				<category><![CDATA[wiki]]></category>
		<guid isPermaLink="false">https://agilestorelocator.com/?p=2767</guid>

					<description><![CDATA[Store Locator for WordPress sends notifications via email on multiple occasions to users and the provided admin email in the Register &#38; Leads tab, first of all, to enable any kind of notification, add your email and turn on the notification switch. the list of events, that generates the email is as follows: When a ... <br><a href="https://agilestorelocator.com/wiki/notifications/" class="text-muted readmore">Read More <i data-feather="chevron-right" class="fea icon-sm"></i></a>]]></description>
										<content:encoded><![CDATA[
<p>Store Locator for WordPress sends notifications via email on multiple occasions to users and the provided admin email in the <strong>Register &amp; Leads</strong> tab, first of all, to enable any kind of notification, add your email and turn on the notification switch.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="333" src="https://agilestorelocator.com/wp-content/uploads/2022/09/notification-1024x333.png" alt="notification" class="wp-image-2768" title="Notifications 9" srcset="https://agilestorelocator.com/wp-content/uploads/2022/09/notification-1024x333.png 1024w, https://agilestorelocator.com/wp-content/uploads/2022/09/notification-300x97.png 300w, https://agilestorelocator.com/wp-content/uploads/2022/09/notification-768x250.png 768w, https://agilestorelocator.com/wp-content/uploads/2022/09/notification-350x114.png 350w, https://agilestorelocator.com/wp-content/uploads/2022/09/notification-76x25.png 76w, https://agilestorelocator.com/wp-content/uploads/2022/09/notification.png 1314w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption>Enable the notification ASL Settings</figcaption></figure>



<p>the list of events, that generates the email is as follows:</p>



<ul class="wp-block-list"><li>When a store is registered, an email is sent to the admin email that is provided under the notification email.</li><li>An email is sent to the user when his pending registered store is approved by the administrator.</li><li>Multi-Store Addons for WooCommerce events for the nearly out of stock and other events</li></ul>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Store Schedule</title>
		<link>https://agilestorelocator.com/wiki/store-schedule/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Wed, 21 Jun 2023 12:26:11 +0000</pubDate>
				<category><![CDATA[wiki]]></category>
		<guid isPermaLink="false">https://agilestorelocator.com/?p=3111</guid>

					<description><![CDATA[The Store Locator plugin offers a powerful scheduling feature that allows you to set opening dates and times for your stores. This documentation will guide you through the process of enabling the Store Schedule option in the plugin&#8217;s settings. Step 1: Enabling Store Schedule Step 2: Managing Store Schedules Thank you for using our Store ... <br><a href="https://agilestorelocator.com/wiki/store-schedule/" class="text-muted readmore">Read More <i data-feather="chevron-right" class="fea icon-sm"></i></a>]]></description>
										<content:encoded><![CDATA[
<p>The Store Locator plugin offers a powerful scheduling feature that allows you to set opening dates and times for your stores. This documentation will guide you through the process of enabling the Store Schedule option in the plugin&#8217;s settings.</p>



<p>Step 1: Enabling Store Schedule</p>



<ol class="wp-block-list">
<li>In the ASL Settings, go to the &#8220;General&#8221; tab.</li>



<li>Scroll down to find the &#8220;Store Schedule&#8221; option.</li>



<li>Toggle the switch to enable the Store Schedule feature.</li>
</ol>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="164" src="https://agilestorelocator.com/wp-content/uploads/2023/06/store-schedule-1024x164.png" alt="store schedule" class="wp-image-3112" title="Store Schedule 10" srcset="https://agilestorelocator.com/wp-content/uploads/2023/06/store-schedule-1024x164.png 1024w, https://agilestorelocator.com/wp-content/uploads/2023/06/store-schedule-300x48.png 300w, https://agilestorelocator.com/wp-content/uploads/2023/06/store-schedule-768x123.png 768w, https://agilestorelocator.com/wp-content/uploads/2023/06/store-schedule-350x56.png 350w, https://agilestorelocator.com/wp-content/uploads/2023/06/store-schedule-76x12.png 76w, https://agilestorelocator.com/wp-content/uploads/2023/06/store-schedule.png 1326w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>Step 2: Managing Store Schedules</p>



<ol class="wp-block-list">
<li>Go to the &#8220;Manage Stores&#8221; page in the Store Locator plugin.</li>



<li>In the store listing, you will see a schedule icon for each store.</li>



<li>Click on the schedule icon of a store you want to schedule.</li>



<li>A popup will appear where you can enter the start and end dates for the store&#8217;s schedule.</li>



<li>Optionally, you can filter the store listing based on the schedule status:
<ul class="wp-block-list">
<li>All: Shows all stores, regardless of their schedule status.</li>



<li>Scheduled: Shows stores with a defined schedule.</li>



<li>Running: Shows stores that are currently within their scheduled dates.</li>



<li>Expired: Shows stores whose schedule has already ended.</li>
</ul>
</li>
</ol>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="838" height="429" src="https://agilestorelocator.com/wp-content/uploads/2023/06/schedule-popup.png" alt="schedule popup" class="wp-image-3113" title="Store Schedule 11" srcset="https://agilestorelocator.com/wp-content/uploads/2023/06/schedule-popup.png 838w, https://agilestorelocator.com/wp-content/uploads/2023/06/schedule-popup-300x154.png 300w, https://agilestorelocator.com/wp-content/uploads/2023/06/schedule-popup-768x393.png 768w, https://agilestorelocator.com/wp-content/uploads/2023/06/schedule-popup-350x179.png 350w, https://agilestorelocator.com/wp-content/uploads/2023/06/schedule-popup-76x39.png 76w" sizes="auto, (max-width: 838px) 100vw, 838px" /></figure>
</div>

<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="272" src="https://agilestorelocator.com/wp-content/uploads/2023/06/scheduled-store-1024x272.png" alt="scheduled store" class="wp-image-3114" title="Store Schedule 12" srcset="https://agilestorelocator.com/wp-content/uploads/2023/06/scheduled-store-1024x272.png 1024w, https://agilestorelocator.com/wp-content/uploads/2023/06/scheduled-store-300x80.png 300w, https://agilestorelocator.com/wp-content/uploads/2023/06/scheduled-store-768x204.png 768w, https://agilestorelocator.com/wp-content/uploads/2023/06/scheduled-store-350x93.png 350w, https://agilestorelocator.com/wp-content/uploads/2023/06/scheduled-store-76x20.png 76w, https://agilestorelocator.com/wp-content/uploads/2023/06/scheduled-store.png 1256w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>Thank you for using our Store Locator plugin and enabling the Store Schedule feature. If you have any further questions or need assistance, please don&#8217;t hesitate to contact our support team.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Store Page Slug with Pretty URL</title>
		<link>https://agilestorelocator.com/wiki/slug-with-pretty-url/</link>
		
		<dc:creator><![CDATA[Talha Nadeem]]></dc:creator>
		<pubDate>Wed, 14 Jul 2021 13:25:15 +0000</pubDate>
				<category><![CDATA[wiki]]></category>
		<guid isPermaLink="false">https://agilestorelocator.com/?p=1821</guid>

					<description><![CDATA[The below guide provides instructions on how to display information of an individual store on a separate page with an SEO-friendly URL]]></description>
										<content:encoded><![CDATA[
<p>Since version 4.9+, Agile Store Locator supports field parameters that can be used to create the <a href="https://agilestorelocator.com/wiki/store-details-page/">store detail</a> slug, and that not only support the default field of the store locator but also the custom fields that you create through the custom field manager, to change these parameters, follow the instructions below.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="666" height="262" src="https://agilestorelocator.com/wp-content/uploads/2023/12/slug-fields.png" alt="slug fields" class="wp-image-3383" title="Store Page Slug with Pretty URL 13" srcset="https://agilestorelocator.com/wp-content/uploads/2023/12/slug-fields.png 666w, https://agilestorelocator.com/wp-content/uploads/2023/12/slug-fields-300x118.png 300w, https://agilestorelocator.com/wp-content/uploads/2023/12/slug-fields-350x138.png 350w, https://agilestorelocator.com/wp-content/uploads/2023/12/slug-fields-76x30.png 76w" sizes="auto, (max-width: 666px) 100vw, 666px" /><figcaption class="wp-element-caption">ASL Settings > Store Page tab</figcaption></figure>
</div>


<ul class="wp-block-list">
<li>Go to the ASL Settings > Detail Page tab</li>
</ul>



<ul class="wp-block-list">
<li>Set the fields in the Store Slug Fields dropdown that you want to use for the store detail slug.</li>
</ul>



<ul class="wp-block-list">
<li>Click on the Save Settings.</li>
</ul>



<p>So, once you have done those steps above, your newly created store will have the slug based on those fields, please note that those stores that are created before you have changed these settings the slug will not apply to them, but you have the option to <a href="https://agilestorelocator.com/wiki/import-export-stores-data/#:~:text=How%20to%20reimport%20the%20Stores%20Data%3F">reimport your existing data</a> by following this guide tutorial that wouldn&#8217;t take more than a couple of minutes to import it.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
