<?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/"
	>

<channel>
	<title>Thrive Digital</title>
	<atom:link href="https://www.thriveuk.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.thriveuk.com/</link>
	<description>Web Design &#38; Digital Marketing</description>
	<lastBuildDate>Fri, 07 Jun 2024 12:47:43 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.5.8</generator>
	<item>
		<title>Moving to HTTPS with SSL</title>
		<link>https://www.thriveuk.com/moving-to-ssl-and-https/</link>
		
		<dc:creator><![CDATA[Andy Lang]]></dc:creator>
		<pubDate>Fri, 07 Sep 2018 07:45:06 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<guid isPermaLink="false">https://www.thriveuk.com/?p=36955</guid>

					<description><![CDATA[<p>Every day we share our personal information with different websites whether it’s making a purchase, completing a form or simply logging in. In order to protect the data which is transferred, a secure connection needs to be created. Once the preserve of e-commerce stores, now everyone needs to move to HTTPS so here's why.</p>
<p>The post <a href="https://www.thriveuk.com/moving-to-ssl-and-https/">Moving to HTTPS with SSL</a> appeared first on <a href="https://www.thriveuk.com">Thrive Digital</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Introduction to HTTPS</h2>
<p>Every day we share our personal information with different websites whether it’s making a purchase or simply logging in. In order to protect the data which is transferred, a secure connection needs to be created. Sites like BBC, Amazon, Ebay, Facebook and John Lewis all use a secure connection to protect your data. Generally you probably won’t notice it.</p>
<p>However, this is achieved using SSL (Secure Socket Layer) and HTTPS (or Secure HTTP). HTTPS is an encryption method that secures the connection between a user’s browser and your web server. This makes it harder for hackers to eavesdrop on the connection and steal personal information.</p>
<p>For example can you see the HTTPS element in the following web addresses:</p>
<p><a href="https://www.facebook.com/" target="_blank" rel="noopener">https://www.facebook.com/</a></p>
<p><a href="https://www.johnlewis.com/" target="_blank" rel="noopener">https://www.johnlewis.com/</a></p>
<p>Also you can see this and the green padlock icon which indicates that HTTPS is active in the attached image from the BBC.</p>
<p>&nbsp;</p>
<p><img fetchpriority="high" decoding="async" class="aligncenter size-full wp-image-36962" src="https://www.thriveuk.com/wp/wp-content/uploads/image001-11.jpg" alt="Example of SSL and HTTPS" width="640" height="473" srcset="https://www.thriveuk.com/wp/wp-content/uploads/image001-11.jpg 640w, https://www.thriveuk.com/wp/wp-content/uploads/image001-11-300x222.jpg 300w, https://www.thriveuk.com/wp/wp-content/uploads/image001-11-600x443.jpg 600w" sizes="(max-width: 640px) 100vw, 640px" /></p>
<p>&nbsp;</p>
<p>Typically, if you’re not running an e-commerce store where you’re collecting payment info directly on a page, you won’t have come across HTTPS in the context of your own website since most small business websites are generally informative and don’t require the users to enter particularly sensitive information, so most website owners have not bothered about HTTPS in the past.</p>
<p>About 2 years ago Google announced they would favour HTTPS secured sites over standard HTTP versions in search results. At the time it was considered to be relatively little value in terms of additional favourable weighting, with many people suggesting the HTTPS bonus in search results was as little as 1% versus regular HTTP only sites, so consequently only larger more affluent businesses adopted the standard.</p>
<p>Moreover, as installing HTTPS is extra work &#8211; and therefore a hard cost to you with little tangible benefits in the past, we’ve had no cause to recommended it to date.</p>
<p>However due to impending changes in web-based security standards driven by companies like Google we need to alter that advice now.</p>
<p>&nbsp;</p>
<h3>Why do we need SSL and HTTPS now?</h3>
<p>As of version 70 of Chrome users (which includes all Android phones) will receive a ‘NOT SECURE’ message when visiting any page that contains enquiry forms on your website, whether it’s for completing a business enquiry or simple site searches. Eventually over time, this message will appear on every page.</p>
<p>We also understand other browsers like Firefox (who already tag insecure login forms with a warning) will follow suit in the very near future. Google have stated now that this is the first step in their long-term plan to mark all pages served through HTTP as ‘NOT SECURE’.</p>
<p><img decoding="async" class="aligncenter size-full wp-image-36973" src="https://www.thriveuk.com/wp/wp-content/uploads/new-treatment-of-non-HTTPS-pages-with-input-from-user.gif" alt="gif showing new treatment of non-HTTPS pages with input from user" width="544" height="338" /></p>
<p>&nbsp;</p>
<p>The result of this means that eventually every page on a standard website will be marked as ‘NOT SECURE’ if we do not implement HTTPS. This warning it seems will ultimately appear in search results on Google (as per the warnings about ‘non mobile-friendly’ sites) and therefore visitors will be given a warning about your site before they visit it.</p>
<p>As you can imagine, those warnings will be extremely off-putting for potential customers and the majority will naturally select to visit only websites and pages that do not display security warnings. As a consequence we see no alternative but to build all new websites from October onwards with HTTPS as standard, and to offer a service to retro-fit HTTPS into existing sites like yours.</p>
<p>You can read more about Google’s advice on securing your site with HTTPS here: <a href="https://support.google.com/webmasters/answer/6073543" target="_blank" rel="noopener">https://support.google.com/webmasters/answer/6073543</a></p>
<p>Additionally the perceived rank position bonus in organic Google search results is considered to now become more significant from late 2017 into 2018, with various industry commentators saying it could be as much as 5% or even 10% uplift. Google have stated that this benefit will grow inline with adoption increases.</p>
<p>Currently it’s estimated that less than 15% of small business are running on HTTPS. The good news I suppose amongst this then is that this is an opportunity to get ahead of your competition who will be slow to react to this industry pressure due to lack of awareness, cost and hassle.</p>
<p>&nbsp;</p>
<h3>So what’s involved and what’s the cost of moving to HTTPS?</h3>
<p>Firstly you&#8217;d need to acquire an SSL certificate for each domain or website. Premium certificates can be bought on your behalf from certified issuing authorities and they authenticate your site as owned by you and therefore mark it as ’trustworthy’. Alternatively there are free certificates available now from projects like <a href="https://letsencrypt.org/" target="_blank" rel="noopener">https://letsencrypt.org/</a> which are more than adequate for informational and marketing sites.</p>
<p>Once the SSL certificate is installed and configured correctly your site, it will display a small green padlock in the top address bar confirming this is the case as per the picture above. You can visit facebook.com to see this &#8211; or indeed on this site where I’ve already installed HTTPS.</p>
<p>Your site will then need to be configured to run using the new HTTPS standard. Every page will need to be checked manually &#8211; and where necessary &#8211; particular elements including every link, all images and source code will need to be changed to utilise the HTTPS format.</p>
<p>Then, once the technical changes are complete, we will need to treat the change from HTTP to HTTPS as a whole ‘site move’ for SEO purposes, which can affect your search engine ranking adversely if done badly. This includes writing redirects for every page, post and image &#8211; so that inbound links and search engine ranks are not lost.</p>
<p>This is because every url will now be different, for example: http://www.google.co.uk &gt; becomes &gt; https://www.google.co.uk</p>
<p>You can read about what’s involved in a ‘site move&#8217; here: <a href="https://support.google.com/webmasters/answer/6033049" target="_blank" rel="noopener">https://support.google.com/webmasters/answer/6033049</a></p>
<p>As every website is different, the technical challenges and time to complete the process are hard to quantify up front, and for larger sites this can be particularly complicated. The process can take anywhere from a few hours to a couple of days to complete and test depending on the site structure, content, page count and other factors like the specific software running on it.</p>
<p>This configuration and installation service is generally a one-off cost.</p>
<p>&nbsp;</p>
<h3>Benefits of moving to HTTPS</h3>
<p>At this stage there are now 4 advantages in moving to HTTPS:</p>
<p>1. Avoid the new security warnings appearing for visitors on your website pages from October.<br />
2. Avoid search engine results warnings.<br />
3. To get a rank boost from Google in natural search results (35% of all page 1 results are now HTTPS, and the search bonus could rise to ~10%)<br />
4. Gain an immediate advantage over majority of competitors who will respond slowly</p>
<p>&nbsp;</p>
<h3>How to move to HTTPS</h3>
<p>The process is transparent and requires no action on your part.</p>
<p>In view of the benefits versus the inevitable pitfalls, we recommend you consider this an important priority when budgeting for the year ahead, and absolutely essential for the medium to long term.</p>
<p>Once again, if you have any questions or would like links to further reading on the subject, please <a href="https://www.thriveuk.com/contact-us/">get in touch</a>.</p>
<p>The post <a href="https://www.thriveuk.com/moving-to-ssl-and-https/">Moving to HTTPS with SSL</a> appeared first on <a href="https://www.thriveuk.com">Thrive Digital</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Quick Tips: How to use jQuery to search on a page for text and highlight it</title>
		<link>https://www.thriveuk.com/quick-tips-how-to-search-on-a-page-for-text-and-highlight-it/</link>
					<comments>https://www.thriveuk.com/quick-tips-how-to-search-on-a-page-for-text-and-highlight-it/#respond</comments>
		
		<dc:creator><![CDATA[Andy Lang]]></dc:creator>
		<pubDate>Sat, 03 Feb 2018 12:12:53 +0000</pubDate>
				<category><![CDATA[Quick Tips]]></category>
		<guid isPermaLink="false">https://www.thriveuk.com/?p=36628</guid>

					<description><![CDATA[<p>I was asked recently if there was a way to include a search on a WordPress page (which was essentially a very, very long list of links) so that it was easier for a user to find suitable content quickly. See how I managed this using native jQuery to search and highlight relevant results clearly on the page as the user types.</p>
<p>The post <a href="https://www.thriveuk.com/quick-tips-how-to-search-on-a-page-for-text-and-highlight-it/">Quick Tips: How to use jQuery to search on a page for text and highlight it</a> appeared first on <a href="https://www.thriveuk.com">Thrive Digital</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="wpb-content-wrapper"><div class="vc_row wpb_row vc_row-fluid dt-default" style="margin-top: 0px;margin-bottom: 0px"><div class="wpb_column vc_column_container vc_col-sm-12"><div class="vc_column-inner"><div class="wpb_wrapper"><div class="vc_row wpb_row vc_inner vc_row-fluid vc_column-gap-20"><div class="wpb_column vc_column_container vc_col-sm-8"><div class="vc_column-inner"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h2>Method using a simple jQuery solution</h2>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<p>Not posted one of these for a while, but I was asked recently if there was a way to include a search on a WordPress page which was essentially a very long list of links to 3rd party data.</p>
<p>The functionality needed to allow the following:</p>
<ol>
<li>only searches for text matches on the page it&#8217;s embedded</li>
<li>case insensitive</li>
<li>inexpensive i.e. fast to implement / low dev&#8217; time</li>
</ol>
<p>Now the native WordPress search is good, but relatively basic, and by default it will return results from all pages / posts so this was no good here.</p>
<p>So, like most people, I had a quick look for an out-of-the-box solution, but nothing stood out. Most solutions were extensions of the WordPress search or alternatives. Generally they were far too complicated and code heavy for what was a very simple requirement. Instead I thought it&#8217;s got to be quicker and easier to code using jQuery which is already a WordPress component.</p>
<p>Here&#8217;s how I did it:</p>

		</div>
	</div>
</div></div></div><div class="wpb_column vc_column_container vc_col-sm-4"><div class="vc_column-inner"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h3>Example: Enter a Search Term below</h3>

		</div>
	</div>

	<div class="wpb_raw_code wpb_raw_html wpb_content_element" >
		<div class="wpb_wrapper">
			<input class="on-page-search"></input>
		</div>
	</div>

	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h4>Sample Search Links &amp; Results</h4>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<p><a class="demo-links" href="#">BBC sports page links</a><br />
<a class="demo-links" href="#">link to the ITV homepage</a><br />
<a class="demo-links" href="#">read about Channel 4 films</a><br />
<a class="demo-links" href="#">Google is the number one search engine</a><br />
<a class="demo-links" href="#">Yahoo &#8211; who?</a><br />
<a class="demo-links" href="#">Bing &#8211; rhymes with ding</a></p>

		</div>
	</div>

	<div class="wpb_raw_code wpb_raw_js" >
		<div class="wpb_wrapper">
			<script type='text/javascript'>
jQuery(document).ready(function($) {
$(".on-page-search").on("keyup", function () {
var v = $(this).val();
$(".results").removeClass("results");
$("a.demo-links").each(function () {
if (v != "" && $(this).text().search(new RegExp(v,'gi')) != -1) {
$(this).addClass("results");
}
});
});
}); </script>
		</div>
	</div>
</div></div></div></div><div class="vc_empty_space"   style="height: 32px"><span class="vc_empty_space_inner"></span></div><div class="vc_row wpb_row vc_inner vc_row-fluid"><div class="wpb_column vc_column_container vc_col-sm-6 vc_col-lg-6 vc_col-xs-12"><div class="vc_column-inner"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h3>The JavaScript</h3>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element  code-block" >
		<div class="wpb_wrapper">
			<p><code>&lt;script type='text/javascript'&gt;<br />
jQuery(document).ready(function($) {<br />
$(".on-page-search").on("keyup", function () {<br />
var v = $(this).val();<br />
$(".results").removeClass("results");<br />
$("a.demo-links").each(function () {<br />
if (v != "" &amp;&amp; $(this).text().search(new RegExp(v,'gi')) != -1) {<br />
$(this).addClass("results");<br />
}<br />
});<br />
});<br />
}); &lt;/script&gt;</code></p>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h3>The HTML</h3>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element  code-block" >
		<div class="wpb_wrapper">
			<p><code>&lt;input class="on-page-search"&gt;&lt;/input&gt;</code></p>

		</div>
	</div>
</div></div></div><div class="wpb_column vc_column_container vc_col-sm-6 vc_col-lg-6 vc_col-xs-12"><div class="vc_column-inner"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h3>The CSS</h3>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element  code-block" >
		<div class="wpb_wrapper">
			<p><code>/* Style the input */<br />
.on-page-search {<br />
width: 100%;<br />
font-size: 14px;<br />
line-height: 26px;<br />
color: #787d85;<br />
background-color: #fcfcfc;<br />
border: 1px solid #e0e1e1;<br />
padding: 5px 15px;<br />
}</code></p>
<p><code>/* Style the list */<br />
.demo-links {<br />
border-bottom: none;<br />
padding: 5px 5px;<br />
line-height: 36px;<br />
}</code></p>
<p><code>/* Style the results */<br />
.results {<br />
background: #de1919;<br />
color: white;<br />
}<br />
.results:hover {<br />
background: #333;<br />
color: white;<br />
}</code></p>

		</div>
	</div>
</div></div></div></div></div></div></div></div><div class="vc_row wpb_row vc_row-fluid dt-default" style="margin-top: 30px;margin-bottom: 5px"><div class="wpb_column vc_column_container vc_col-sm-12"><div class="vc_column-inner"><div class="wpb_wrapper"><div class="vc_separator wpb_content_element vc_separator_align_center vc_sep_width_100 vc_sep_pos_align_center vc_separator_no_text vc_sep_color_grey wpb_content_element  wpb_content_element" ><span class="vc_sep_holder vc_sep_holder_l"><span class="vc_sep_line"></span></span><span class="vc_sep_holder vc_sep_holder_r"><span class="vc_sep_line"></span></span>
</div>
	<div class="wpb_raw_code wpb_raw_js" >
		<div class="wpb_wrapper">
			<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-5023582064713506"
     data-ad-slot="1289773781"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
		</div>
	</div>
<div class="vc_empty_space"   style="height: 32px"><span class="vc_empty_space_inner"></span></div><div class="vc_separator wpb_content_element vc_separator_align_center vc_sep_width_100 vc_sep_pos_align_center vc_separator_no_text vc_sep_color_grey wpb_content_element  wpb_content_element" ><span class="vc_sep_holder vc_sep_holder_l"><span class="vc_sep_line"></span></span><span class="vc_sep_holder vc_sep_holder_r"><span class="vc_sep_line"></span></span>
</div>
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h3>Usage notes</h3>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<p>This is pretty straightforward really. What we&#8217;re doing is:</p>
<ol>
<li>Adding an html input and styling it</li>
<li>Creating a set of searchable results, in this case I gave the links the class <code>.demo-links</code></li>
<li>Creating a jQuery script to check each time after a key is released if there is a match using the <code>"keyup"</code> function</li>
<li>Using the query to add a class, in this case <code>.results</code> to the matched term using the <code>"addClass"</code> function</li>
<li>Styling the results to stand out clearly</li>
<li>Restricting the search to target only those links required (instead of the whole page) by targeting <code>a.demo-links</code></li>
</ol>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h3>Extending this</h3>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<p>Things you could do differently or to extend this:</p>
<p>I&#8217;m targeting links, but you could highlight say whole paragraphs, just the matching text or any other element, by changing this line:</p>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element  code-block" >
		<div class="wpb_wrapper">
			<p><code>$("a.demo-links").each(function () {</code></p>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<p>You could add animations / transformations to really make the results pop &#8211; the sky&#8217;s the limit really.</p>
<p>Also you could also consider hiding non-matched results by extending the jQuery. I&#8217;ve added another example of this here: <a href="https://jsfiddle.net/u85gf30q/" target="_blank" rel="noopener noreferrer">https://jsfiddle.net/u85gf30q/</a></p>
<p>Please note you&#8217;ll need to wrap that in script tags and add the jQuery(document) ready.function as per the following code to get it to work in WordPress.</p>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element  code-block" >
		<div class="wpb_wrapper">
			<p><code>&lt;script type='text/javascript'&gt;</code><br />
<code>jQuery(document).ready(function($) {<br />
$(".on-page-search").on("keyup", function () {<br />
var v = $(this).val();<br />
$(".results").removeClass("results");<br />
$(".noresults").removeClass("noresults");<br />
$("a.demo-links").each(function ()<br />
{ if (v != "" &amp;&amp; $(this).text().search(new RegExp(v,'gi')) != -1) {<br />
$(this).addClass("results"); } else if (v != "" &amp;&amp; $(this).text().search(v) != 1) {<br />
$(this).addClass("noresults");<br />
}<br />
});<br />
});<br />
}); &lt;/script&gt;</code></p>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<p>Also add this to your CSS:</p>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element  code-block" >
		<div class="wpb_wrapper">
			<p><code>.noresults {<br />
color:#f3f4f5;<br />
}</code></p>

		</div>
	</div>
<div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div>
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h3>Conclusion</h3>

		</div>
	</div>
<div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div>
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<p>Overall this took me about 30-40 minutes (this write-up took far longer) and ticked the functionality boxes as required. I think it could be pretty useful for FAQ sections or other list or data applications where it&#8217;s hard for the user to find something.</p>
<p>If you found this in any way useful, please take a moment to read and click on one of the sponsored messages <img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p>Comments, improvements or questions are welcome.</p>

		</div>
	</div>
<div class="vc_empty_space"   style="height: 16px"><span class="vc_empty_space_inner"></span></div><div class="vc_separator wpb_content_element vc_separator_align_center vc_sep_width_100 vc_sep_pos_align_center vc_separator_no_text vc_sep_color_grey wpb_content_element  wpb_content_element" ><span class="vc_sep_holder vc_sep_holder_l"><span class="vc_sep_line"></span></span><span class="vc_sep_holder vc_sep_holder_r"><span class="vc_sep_line"></span></span>
</div>
	<div class="wpb_raw_code wpb_raw_js" >
		<div class="wpb_wrapper">
			<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-5023582064713506"
     data-ad-slot="1289773781"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
		</div>
	</div>
<div class="vc_empty_space"   style="height: 32px"><span class="vc_empty_space_inner"></span></div><div class="vc_separator wpb_content_element vc_separator_align_center vc_sep_width_100 vc_sep_pos_align_center vc_separator_no_text vc_sep_color_grey wpb_content_element  wpb_content_element" ><span class="vc_sep_holder vc_sep_holder_l"><span class="vc_sep_line"></span></span><span class="vc_sep_holder vc_sep_holder_r"><span class="vc_sep_line"></span></span>
</div></div></div></div></div>
</div><p>The post <a href="https://www.thriveuk.com/quick-tips-how-to-search-on-a-page-for-text-and-highlight-it/">Quick Tips: How to use jQuery to search on a page for text and highlight it</a> appeared first on <a href="https://www.thriveuk.com">Thrive Digital</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.thriveuk.com/quick-tips-how-to-search-on-a-page-for-text-and-highlight-it/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Quick Tips: How to quickly change the Contact Form 7 Ajax loading gif &#8211; Updated for CF7 v5</title>
		<link>https://www.thriveuk.com/quick-tips-change-default-contact-form-7-ajax-spinner/</link>
					<comments>https://www.thriveuk.com/quick-tips-change-default-contact-form-7-ajax-spinner/#comments</comments>
		
		<dc:creator><![CDATA[Andy Lang]]></dc:creator>
		<pubDate>Thu, 13 Apr 2017 09:06:09 +0000</pubDate>
				<category><![CDATA[Quick Tips]]></category>
		<guid isPermaLink="false">http://www.thriveuk.com/?p=36171</guid>

					<description><![CDATA[<p>Contact Form 7 is a wonderful WordPress plugin that’s incredibly flexible, but I’ve never been a big fan of the default arrow-headed ajax loading gif that appears whilst the form’s processing after submission. As of version 4.6 of Contact Form 7 you can now change the loading gif super easily using just CSS. See an example form and the CSS necessary to make this work.</p>
<p>The post <a href="https://www.thriveuk.com/quick-tips-change-default-contact-form-7-ajax-spinner/">Quick Tips: How to quickly change the Contact Form 7 Ajax loading gif &#8211; Updated for CF7 v5</a> appeared first on <a href="https://www.thriveuk.com">Thrive Digital</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="wpb-content-wrapper"><div class="vc_row wpb_row vc_row-fluid dt-default" style="margin-top: 0px;margin-bottom: 0px"><div class="wpb_column vc_column_container vc_col-sm-12"><div class="vc_column-inner"><div class="wpb_wrapper"><div class="vc_row wpb_row vc_inner vc_row-fluid"><div class="wpb_column vc_column_container vc_col-sm-6"><div class="vc_column-inner"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h2>Method for CF7 v5.x</h2>
<p>As of version 5.x of Contact Form 7 the first CSS method I posted below no longer works. However, you can still change the loading gif super easily using just CSS. You can either replace the CSS generated visual with your own code, or use a gif.</p>
<p>You may also want to change the other css elements like height and width depending on the size of your new animation. Try submitting the forms below and you&#8217;ll see that the new loading images have replaced the old default gif.</p>
<p>PS. You don&#8217;t need to enter your name to see this working, just hit the &#8216;send message&#8217; button. It saves me cleaning up my inbox too!</p>
<p>If you found this in any way useful, please take a moment to read and click on one of the sponsored messages <img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>

		</div>
	</div>
</div></div></div><div class="wpb_column vc_column_container vc_col-sm-2"><div class="vc_column-inner"><div class="wpb_wrapper">
	<div class="wpb_raw_code wpb_raw_html wpb_content_element" >
		<div class="wpb_wrapper">
			<h4 style="text-align:center;">Before</h4>
<span class="wpcf7-spinner-copy"></span>
		</div>
	</div>
</div></div></div><div class="wpb_column vc_column_container vc_col-sm-2"><div class="vc_column-inner"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h4 style="text-align: center;">After with GIF</h4>
<p><img decoding="async" class="aligncenter" src="https://www.thriveuk.com/wp/wp-content/themes/dt-the7-child/images/ajax-loader.gif" alt="" width="24" height="24" /></p>

		</div>
	</div>
</div></div></div><div class="wpb_column vc_column_container vc_col-sm-2"><div class="vc_column-inner"><div class="wpb_wrapper">
	<div class="wpb_raw_code wpb_raw_html wpb_content_element" >
		<div class="wpb_wrapper">
			<h4 style="text-align:center;">After with CSS</h4>
<span class="wpcf7-spinner-copy2"></span>
		</div>
	</div>
</div></div></div><div class="wpb_column vc_column_container vc_col-sm-6"><div class="vc_column-inner"><div class="wpb_wrapper"><div class="vc_empty_space"   style="height: 32px"><span class="vc_empty_space_inner"></span></div>
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<p>The CSS option here uses a CSS animation from <a href="https://cssloaders.github.io/" target="_blank" rel="noopener">https://cssloaders.github.io/</a>.</p>
<p>Note: As I have more than one form on the page I gave the form below a class called &#8220;.new-spinner&#8221; which is referred to in the CSS.</p>
<p>To do this, see: <a href="https://contactform7.com/faq/can-i-add-id-and-class-attributes-to-a-form-element" target="_blank" rel="noopener">https://contactform7.com/faq/can-i-add-id-and-class-attributes-to-a-form-element</a></p>
<p>You can just strip the 2 references to the &#8216;.new-spinner&#8217; class out of the code below to save you doing this.</p>

		</div>
	</div>
</div></div></div></div><div class="vc_empty_space"   style="height: 32px"><span class="vc_empty_space_inner"></span></div><div id="my-cf7-form" class="vc_row wpb_row vc_inner vc_row-fluid vc_column-gap-20 vc_row-o-equal-height vc_row-flex"><div class="wpb_column vc_column_container vc_col-sm-6 vc_col-has-fill"><div class="vc_column-inner vc_custom_1538662892408"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h4>Example CF7 form with new loading gif</h4>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<p>This uses the original gif as a background image. It&#8217;s looking a bit tired now I think.</p>

		</div>
	</div>
<div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div>
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			[contact-form-7]

		</div>
	</div>
<div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div>
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h4>The CSS</h4>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element  code-block" >
		<div class="wpb_wrapper">
			<p><code>/* First we hide the default CF7 loader */<br />
.wpcf7-spinner::before {<br />
display:none;<br />
}</code></p>
<p><code>/* Add custom CF7 loader */<br />
.wpcf7-spinner {<br />
background-image: url('images/ajax-loader.gif');<br />
width: 24px;<br />
height: 24px;<br />
margin-left: 10px;<br />
background-color: inherit;<br />
}</code></p>

		</div>
	</div>
<div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div></div></div></div><div class="wpb_column vc_column_container vc_col-sm-6 vc_col-has-fill"><div class="vc_column-inner vc_custom_1714213224867"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h4>Example CF7 form with new CSS loading animation</h4>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<p>This looks great right?</p>

		</div>
	</div>
<div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div>
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			[contact-form-7]

		</div>
	</div>
<div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div>
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h4>The CSS</h4>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element  code-block" >
		<div class="wpb_wrapper">
			<p><code>/* First we hide the default CF7 loader */<br />
.wpcf7-spinner::before {<br />
display:none;<br />
}</code></p>
<p><code>/* Add a new custom CF7 loader */<br />
.new-spinner .wpcf7-spinner {<br />
width: 24px;<br />
height: 24px;<br />
border-radius: 50%;<br />
display: inline-block;<br />
border-top: 2px solid #262b2e;<br />
border-right: 2px solid transparent;<br />
box-sizing: border-box;<br />
animation: rotation 1s linear infinite;<br />
background-color: inherit;<br />
}<br />
/* Style the new loader element */<br />
.new-spinner .wpcf7-spinner::after {<br />
content: '';<br />
box-sizing: border-box;<br />
position: absolute;<br />
left: 0;<br />
top: 0;<br />
width: 24px;<br />
height: 24px;<br />
border-radius: 50%;<br />
border-bottom: 2px solid #FF3D00;<br />
border-left: 2px solid transparent;<br />
}<br />
@keyframes rotation {<br />
0% {<br />
transform: rotate(0deg);<br />
}<br />
100% {<br />
transform: rotate(360deg);<br />
}<br />
}</code></p>

		</div>
	</div>
</div></div></div></div><div class="vc_empty_space"   style="height: 32px"><span class="vc_empty_space_inner"></span></div><div class="vc_separator wpb_content_element vc_separator_align_center vc_sep_width_100 vc_sep_pos_align_center vc_separator_no_text vc_sep_color_grey wpb_content_element  wpb_content_element" ><span class="vc_sep_holder vc_sep_holder_l"><span class="vc_sep_line"></span></span><span class="vc_sep_holder vc_sep_holder_r"><span class="vc_sep_line"></span></span>
</div>
	<div class="wpb_raw_code wpb_raw_js" >
		<div class="wpb_wrapper">
			<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-5023582064713506"
     data-ad-slot="1289773781"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
		</div>
	</div>
<div class="vc_empty_space"   style="height: 32px"><span class="vc_empty_space_inner"></span></div><div class="vc_separator wpb_content_element vc_separator_align_center vc_sep_width_100 vc_sep_pos_align_center vc_separator_no_text vc_sep_color_grey wpb_content_element  wpb_content_element" ><span class="vc_sep_holder vc_sep_holder_l"><span class="vc_sep_line"></span></span><span class="vc_sep_holder vc_sep_holder_r"><span class="vc_sep_line"></span></span>
</div></div></div></div></div><div class="vc_row wpb_row vc_row-fluid dt-default" style="margin-top: 0px;margin-bottom: 0px"><div class="wpb_column vc_column_container vc_col-sm-12"><div class="vc_column-inner"><div class="wpb_wrapper"><div class="vc_row wpb_row vc_inner vc_row-fluid"><div class="wpb_column vc_column_container vc_col-sm-8"><div class="vc_column-inner"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h2>Method for CF7 version 4.6 on</h2>
<p>This is now deprecated. See above.</p>
<p>I&#8217;ve been meaning to post this for a while but have just been incredibly busy.</p>
<p>As of version 4.6 of Contact Form 7 the functions.php method I posted originally (see below) no longer works, as a few of you have pointed out in the comments. Thanks for the feedback guys!</p>
<p>The good news is that you can now change the loading gif super easily using just CSS.</p>
<p>You&#8217;ll still need to go find or make a new loading gif, as per the usage notes in the deprecated code instructions below, but just add this following CSS (or adaption of it after correcting the filepath to fit your theme) to your theme&#8217;s style.css file. You may also want to change the other css elements like height and width depending on the size of your new gif.</p>
<p>Anyhow, here&#8217;s how I&#8217;ve done it here, and on other projects. Have fun:</p>

		</div>
	</div>
</div></div></div><div class="wpb_column vc_column_container vc_col-sm-2"><div class="vc_column-inner"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h4 style="text-align: center;">Before</h4>
<p><img loading="lazy" decoding="async" class="aligncenter" src="https://www.thriveuk.com/wp/wp-content/uploads/cf7-ajax-loader.gif" alt="" width="16" height="16" /></p>

		</div>
	</div>
</div></div></div><div class="wpb_column vc_column_container vc_col-sm-2"><div class="vc_column-inner"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h4 style="text-align: center;">After</h4>
<p><img decoding="async" class="aligncenter" src="https://www.thriveuk.com/wp/wp-content/themes/dt-the7-child/images/ajax-loader.gif" alt="" width="24" height="24" /></p>

		</div>
	</div>
</div></div></div></div>
	<div class="wpb_text_column wpb_content_element  code-block" >
		<div class="wpb_wrapper">
			<p><code>/* Custom CF7 Loader */<br />
div.wpcf7 .ajax-loader {<br />
background-image: url('images/ajax-loader.gif');<br />
width: 24px;<br />
height: 24px;<br />
margin-left: 10px;<br />
}</code></p>

		</div>
	</div>
<div class="vc_empty_space"   style="height: 32px"><span class="vc_empty_space_inner"></span></div><div class="vc_row wpb_row vc_inner vc_row-fluid"><div class="wpb_column vc_column_container vc_col-sm-6 vc_col-has-fill"><div class="vc_column-inner vc_custom_1538662892408"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h4>Example CF7 form with new ajax loader gif</h4>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<p>Try submitting the form below and you&#8217;ll see that the new loading image has replaced the old default gif.</p>
<p>PS. You don&#8217;t need to enter your name to see this working, just hit the &#8216;send message&#8217; button. It saves me cleaning up my inbox too!</p>
<p>If you found this in any way useful, please take a moment to read and click on one of the sponsored messages <img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>

		</div>
	</div>
<div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div>
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			[contact-form-7]

		</div>
	</div>
</div></div></div><div class="wpb_column vc_column_container vc_col-sm-6"><div class="vc_column-inner"><div class="wpb_wrapper"></div></div></div></div><div class="vc_empty_space"   style="height: 32px"><span class="vc_empty_space_inner"></span></div><div class="vc_separator wpb_content_element vc_separator_align_center vc_sep_width_100 vc_sep_pos_align_center vc_separator_no_text vc_sep_color_grey wpb_content_element  wpb_content_element" ><span class="vc_sep_holder vc_sep_holder_l"><span class="vc_sep_line"></span></span><span class="vc_sep_holder vc_sep_holder_r"><span class="vc_sep_line"></span></span>
</div>
	<div class="wpb_raw_code wpb_raw_js" >
		<div class="wpb_wrapper">
			<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-5023582064713506"
     data-ad-slot="1289773781"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
		</div>
	</div>
<div class="vc_empty_space"   style="height: 32px"><span class="vc_empty_space_inner"></span></div><div class="vc_separator wpb_content_element vc_separator_align_center vc_sep_width_100 vc_sep_pos_align_center vc_separator_no_text vc_sep_color_grey wpb_content_element  wpb_content_element" ><span class="vc_sep_holder vc_sep_holder_l"><span class="vc_sep_line"></span></span><span class="vc_sep_holder vc_sep_holder_r"><span class="vc_sep_line"></span></span>
</div></div></div></div></div><div class="vc_row wpb_row vc_row-fluid dt-default" style="margin-top: 30px;margin-bottom: 5px"><div class="wpb_column vc_column_container vc_col-sm-12"><div class="vc_column-inner"><div class="wpb_wrapper"><div class="vc_row wpb_row vc_inner vc_row-fluid"><div class="wpb_column vc_column_container vc_col-sm-8"><div class="vc_column-inner"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h2>Method for CF7 version 4.5 and earlier</h2>
<p><span style="text-decoration: underline;">This method is now deprecated so please use the instructions above for the latest version of Contact Form 7.</span></p>
<p>Contact Form 7 is a wonderful WordPress plugin that&#8217;s incredibly flexible, but I&#8217;ve never been a big fan of the default arrow-headed ajax loading gif that appears whilst the form&#8217;s processing after submission.</p>
<p>Editing 3rd party plugin files directly is a terrible idea for a number of reasons, not least because the next time the plugin&#8217;s updated you&#8217;ll lose your changes.</p>
<p>However the good news is that it&#8217;s really easy to find an alternative image, and to change it by adding a few simple lines of code in your theme&#8217;s functions.php file.</p>
<p>What we&#8217;re doing from a technical point of view is adding a <a href="https://codex.wordpress.org/Plugin_API" target="_blank" rel="noopener noreferrer">filter function</a> to replace the code created by the CF7 plugin, so that it uses our new image instead of the default one supplied.</p>
<p>The code&#8217;s below, but please read the notes below first.</p>

		</div>
	</div>
</div></div></div><div class="wpb_column vc_column_container vc_col-sm-2 vc_col-has-fill"><div class="vc_column-inner vc_custom_1460278156045"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h4 style="text-align: center;">Before</h4>
<p><img loading="lazy" decoding="async" class="aligncenter" src="https://www.thriveuk.com/wp/wp-content/uploads/cf7-ajax-loader.gif" alt="" width="16" height="16" /></p>

		</div>
	</div>
</div></div></div><div class="wpb_column vc_column_container vc_col-sm-2 vc_col-has-fill"><div class="vc_column-inner vc_custom_1460278169521"><div class="wpb_wrapper">
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h4 style="text-align: center;">After</h4>
<p><img decoding="async" class="aligncenter" src="https://www.thriveuk.com/wp/wp-content/themes/dt-the7-child/images/ajax-loader.gif" alt="" width="24" height="24" /></p>

		</div>
	</div>
</div></div></div></div><div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div>
	<div class="wpb_text_column wpb_content_element  code-block" >
		<div class="wpb_wrapper">
			<p><code>// Custom CF7 loading image<br />
add_filter('wpcf7_ajax_loader', 'my_wpcf7_ajax_loader');<br />
function my_wpcf7_ajax_loader () {<br />
return  get_bloginfo('stylesheet_directory') . '/images/ajax-loader.gif';<br />
}</code></p>

		</div>
	</div>
<div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div>
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h4>Usage notes</h4>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<p>The first thing you&#8217;ll need to do is find a suitable or more appealing alternative to the default gif. You can make one yourself of course, but for a quicker option head over to <a href="http://www.ajaxload.info/" target="_blank" rel="noopener noreferrer">www.ajaxload.info</a> and select one from a pretty decent range and download it. I&#8217;d recommend using a transparent background.</p>
<p>Once you&#8217;ve done that, you&#8217;ll need to upload the file you downloaded to your theme and then simply add the code above to your functions.php file to reference the correct location of the new gif file.</p>
<p>If you look at the code above you&#8217;ll see in the 4th line that I&#8217;ve stored the new gif image in a directory within my theme called images.</p>

		</div>
	</div>
<div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div>
	<div class="wpb_text_column wpb_content_element  code-block" >
		<div class="wpb_wrapper">
			<p><code>return  get_bloginfo('stylesheet_directory') . '/images/ajax-loader.gif';<br />
</code></p>

		</div>
	</div>
<div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div>
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<p>Also, as I&#8217;m using a <a href="https://codex.wordpress.org/Child_Themes" target="_blank" rel="noopener noreferrer">child theme</a>, and I can&#8217;t think of a decent reason why you wouldn&#8217;t, in that line I&#8217;ve used the get_bloginfo function to target the &#8216;stylesheet_directory&#8217;.</p>
<p>However, if you&#8217;re editing the theme or parent&#8217;s functions.php file directly and not using a child then you&#8217;d need to target the &#8216;template_directory&#8217; and use the following code in your 4th line instead:</p>

		</div>
	</div>
<div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div>
	<div class="wpb_text_column wpb_content_element  code-block" >
		<div class="wpb_wrapper">
			<p><code>return  get_bloginfo('template_directory') . '/images/ajax-loader.gif';<br />
</code></p>

		</div>
	</div>
<div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div><div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div><div class="vc_empty_space"   style="height: 14px"><span class="vc_empty_space_inner"></span></div>
	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<h4>Conclusion</h4>

		</div>
	</div>

	<div class="wpb_text_column wpb_content_element " >
		<div class="wpb_wrapper">
			<p>All-in-all that was pretty simple really and it neatly demonstrates the ease with which you can hook into the WordPress API using filters or actions.</p>
<p>Comments or questions are welcome.</p>

		</div>
	</div>
<div class="vc_empty_space"   style="height: 16px"><span class="vc_empty_space_inner"></span></div><div class="vc_separator wpb_content_element vc_separator_align_center vc_sep_width_100 vc_sep_pos_align_center vc_separator_no_text vc_sep_color_grey wpb_content_element  wpb_content_element" ><span class="vc_sep_holder vc_sep_holder_l"><span class="vc_sep_line"></span></span><span class="vc_sep_holder vc_sep_holder_r"><span class="vc_sep_line"></span></span>
</div>
	<div class="wpb_raw_code wpb_raw_js" >
		<div class="wpb_wrapper">
			<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="ca-pub-5023582064713506"
     data-ad-slot="1289773781"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
		</div>
	</div>
<div class="vc_empty_space"   style="height: 32px"><span class="vc_empty_space_inner"></span></div><div class="vc_separator wpb_content_element vc_separator_align_center vc_sep_width_100 vc_sep_pos_align_center vc_separator_no_text vc_sep_color_grey wpb_content_element  wpb_content_element" ><span class="vc_sep_holder vc_sep_holder_l"><span class="vc_sep_line"></span></span><span class="vc_sep_holder vc_sep_holder_r"><span class="vc_sep_line"></span></span>
</div></div></div></div></div>
</div><p>The post <a href="https://www.thriveuk.com/quick-tips-change-default-contact-form-7-ajax-spinner/">Quick Tips: How to quickly change the Contact Form 7 Ajax loading gif &#8211; Updated for CF7 v5</a> appeared first on <a href="https://www.thriveuk.com">Thrive Digital</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.thriveuk.com/quick-tips-change-default-contact-form-7-ajax-spinner/feed/</wfw:commentRss>
			<slash:comments>15</slash:comments>
		
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/

Page Caching using Disk: Enhanced 
Minified using Disk
Database Caching 37/55 queries in 0.018 seconds using Disk

Served from: www.thriveuk.com @ 2026-05-13 11:03:19 by W3 Total Cache
-->