<?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>WordPress Archives - GIWS Blog</title>
	<atom:link href="https://blog.giws.us/category/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.giws.us/category/wordpress/</link>
	<description>Website Speed Optimization Tips, News Info From The Official GIWS Blog. At GIWS It&#039;s Our Speed, Your Success.</description>
	<lastBuildDate>Sun, 31 Dec 2023 13:23:43 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.5.2</generator>

<image>
	<url>https://blog.giws.us/wp-content/uploads/2023/12/favicon.png</url>
	<title>WordPress Archives - GIWS Blog</title>
	<link>https://blog.giws.us/category/wordpress/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>What Is a Headless Content Management System (CMS)?</title>
		<link>https://blog.giws.us/what-is-a-headless-content-management-system-cms/</link>
					<comments>https://blog.giws.us/what-is-a-headless-content-management-system-cms/#respond</comments>
		
		<dc:creator><![CDATA[GIWS]]></dc:creator>
		<pubDate>Wed, 30 Dec 2020 11:25:00 +0000</pubDate>
				<category><![CDATA[CMS]]></category>
		<category><![CDATA[WordPress]]></category>
		<guid isPermaLink="false">https://blog.giws.us/?p=1920</guid>

					<description><![CDATA[<p>To attract the widest possible audience, you’ll need to post across multiple online platforms. However, crafting and publishing content for different operating systems can be a time-consuming and frustrating process. What’s more, if your content isn’t accessible on any type of device, then you risk losing out on potential visitors. Fortunately, by using a headless&#160;Content...</p>
<p>The post <a href="https://blog.giws.us/what-is-a-headless-content-management-system-cms/">What Is a Headless Content Management System (CMS)?</a> appeared first on <a href="https://blog.giws.us">GIWS Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>To attract the widest possible audience, you’ll need to post across multiple online platforms. However, crafting and publishing content for different operating systems can be a time-consuming and frustrating process.</p>



<p>What’s more, if your content isn’t accessible on any type of device, then you risk losing out on potential visitors. Fortunately, by using a headless&nbsp;Content Management System&nbsp;(CMS), you can create your content once and then publish it across multiple operating systems, including Android and iOS.</p>



<p>In this post, we’ll explore what makes a CMS headless, and the reasons you may want to choose that kind of platform. Let’s get started!</p>



<h2 class="wp-block-heading" id="h-what-is-a-headless-content-management-system-cms">What Is a Headless Content Management System (CMS)?</h2>



<p>A Content Management System (CMS) has a front end (the head) and a back end (the body). To convert a traditional CMS into a headless CMS, you separate the two ends. The ‘head’ refers to where the content ends up, and the ‘body’ is where that content is stored and authored.</p>



<p>A headless CMS tends to take the form of a database back end with a web-based User Interface (UI) as the front end. You’ll use the UI to create your content, and the database to store and manage all of the supporting data.</p>



<p>A headless CMS doesn’t care how or where your content is displayed. Instead of coupling your content to a specific output, such as a web page, it provides your content as data using a RESTful Application Programming Interface (API). To access a post, you’ll send the headless CMS a network request to an API endpoint.</p>



<p>You can host a headless CMS on your own server and database. However, this requires you to perform your own scaling and operations. In most cases, it’s simpler (and cheaper) to host your headless CMS using a <a href="https://www.giws.us/web-hosting" target="_blank" rel="noreferrer noopener">web hosting provider</a>.</p>



<p>The opposite of a headless CMS is a traditional or ‘monolithic’ CMS. This is software that you either install and manage yourself, or access via a managed environment. While a headless CMS only provides the back end required to store and manage your content, a traditional CMS provides a way to display that content as well.</p>



<p>Of course, some platforms can do double duty. For example,&nbsp;WordPress&nbsp;is typically considered a traditional CMS. However, WordPress has a&nbsp;REST API built in, which makes it a popular choice for converting into a headless CMS.</p>



<h2 class="wp-block-heading" id="h-5-benefits-of-using-a-headless-cms">5 Benefits of Using a Headless CMS</h2>



<p>There are many benefits to opting for a headless rather than a monolithic CMS. Let’s look at five of the key advantages.</p>



<h3 class="wp-block-heading" id="h-1-you-can-push-content-to-multiple-platforms">1. You Can Push Content to Multiple Platforms</h3>



<p>Modern web content should be accessible across multiple platforms. A headless CMS removes the presentation layer from your content, which makes it platform-independent.</p>



<p>When you need to deliver the same content across various channels, a headless CMS can save you a significant amount of time. For example, you can make API calls to a headless CMS and push the same content to both iOS and Android. This is often much easier than developing and maintaining two separate sets of content.</p>



<h3 class="wp-block-heading" id="h-2-choose-your-preferred-technology-and-tooling">2. Choose Your Preferred Technology and Tooling</h3>



<p>A headless CMS enables you to take a developer-first approach, rather than focusing on how the back end will feed to the front end. Since headless content is served over APIs, you can build your website using the technology of your choice, including your preferred front-end tooling. You can also define how data is stored and managed in the back end.</p>



<p>Since you don’t have to learn technology that’s specific to your chosen CMS, a headless platform can save you a significant amount of time. As your project evolves, you can interchange parts of your technology stack, or move from one framework to the other without having to start from scratch. This gives you the freedom to continuously revise and improve your approach, based on the changing needs of your project.</p>



<h3 class="wp-block-heading" id="h-3-greater-freedom-to-display-your-content">3. Greater Freedom to Display Your Content</h3>



<p>Since you’re not tightly tied to any particular themes, plugins, or even a specific platform, you have more control over your content’s appearance. Even if you develop custom software such as bespoke themes and plugins, you’re often restricted by your CMS’ front end.</p>



<p>By opting for a headless CMS, you have greater freedom to store, develop, and present your content. This includes showcasing your content in ways that traditional CMSs such as WordPress aren’t designed to support, even&nbsp;<em>with</em>&nbsp;the help of themes and plugins.</p>



<h3 class="wp-block-heading" id="h-4-protect-your-content-against-attackers">4. Protect Your Content Against Attackers</h3>



<p>Headless content is separated from the presentation layer, which means that it has a smaller attack surface. In particular, a headless CMS doesn’t have a native content publishing solution, so the chances of a&nbsp;Denial-of-Service (DDoS) attack&nbsp;are reduced.</p>



<p>Since your content exists separately from your front-end delivery, it also isn’t as vulnerable to third-party application issues. This includes security vulnerabilities and bugs that are sometimes present in pre-existing technology stacks.</p>



<h3 class="wp-block-heading" id="h-5-get-a-performance-boost">5. Get a Performance Boost</h3>



<p>Traditional CMS architectures have to spend resources on content editing and rendering. By contrast, a headless CMS consists of a content database and API calls. This can significantly reduce your overhead costs and cloud storage bills.</p>



<p>When used as a headless CMS, WordPress only requires a simple MySQL and PHP stack, making it a lightweight and high-performing option. In other words, headless architecture is a great way to speed up your websites and applications.</p>



<h2 class="wp-block-heading" id="h-potential-issues-with-headless-cmss">Potential Issues With Headless CMSs</h2>



<p>For all the benefits on offer, there&nbsp;<em>are</em>&nbsp;some potential drawbacks. Headless CMSs don’t offer a ‘What You See Is What You Get’ (WYSIWYG) editor or a live preview option, which can make it difficult to predict how your content will appear when rendered.</p>



<p>Headless CMSs also typically require more maintenance, particularly in terms of updates and security. They can also require different credentialing, and may benefit from advanced libraries and front-end programming expertise. For these reasons, headless CMSs can be challenging for users who don’t have extensive content management and programming experience.</p>



<h2 class="wp-block-heading" id="h-using-wordpress-as-a-headless-cms-2-methods">Using WordPress as a Headless CMS (2 Methods)</h2>



<p>If you’ve weighed up the pros and cons and decided to give headless a try, WordPress is a great platform to get started with. Here are two ways to set up WordPress as a headless CMS.</p>



<h3 class="wp-block-heading" id="h-method-1-create-a-blank-theme">Method 1: Create a Blank Theme</h3>



<p>The front end may have little role to play in a headless CMS, but WordPress does still require a theme to run. The easiest option is to create a blank theme, using the following files:</p>



<ol>
<li><strong>index.php</strong>. This will redirect users to your website’s static home page. The file will preserve the back end, and remove the front end of your CMS.</li>



<li><strong>style.css</strong>. This should contain some basic information about your theme, including the theme’s name and the author’s name.</li>
</ol>



<p>To create your&nbsp;<em>index.php</em>&nbsp;file, you’ll use the following format:</p>



<p><code>&lt;script type="text/javascript"&gt;</code></p>



<p><code>window.location = 'http://example.com';</code></p>



<p><code>&lt;/script&gt;</code></p>



<p>To create the&nbsp;<em>style.css</em>&nbsp;file, use this format:</p>



<p><code>/*</code></p>



<p><code>Theme Name: blank</code></p>



<p><code>Author: name</code></p>



<p><code>*/</code></p>



<p>You can then place these two files in your&nbsp;<em>wp-content/themes/blank</em>&nbsp;directory, and activate the theme in the WordPress admin area.</p>



<h3 class="wp-block-heading" id="h-method-2-use-a-plugin">Method 2: Use a Plugin</h3>



<p>Alternatively, you can create a headless WordPress installation using a plugin. While this diminishes your flexibility a bit, it’s also a faster and simpler option.</p>



<p>There are a few tools you can try, but we’d recommend getting started with&nbsp;<a href="https://wordpress.org/plugins/wp-rest-headless/" target="_blank" rel="noreferrer noopener">WP Headless CMS Framework</a>:</p>



<figure class="wp-block-image size-full"><img fetchpriority="high" decoding="async" width="768" height="240" src="https://blog.giws.us/wp-content/uploads/2023/12/wp-headless-cms-framework.webp" alt="" class="wp-image-1922" srcset="https://blog.giws.us/wp-content/uploads/2023/12/wp-headless-cms-framework.webp 768w, https://blog.giws.us/wp-content/uploads/2023/12/wp-headless-cms-framework-300x94.webp 300w, https://blog.giws.us/wp-content/uploads/2023/12/wp-headless-cms-framework-360x113.webp 360w, https://blog.giws.us/wp-content/uploads/2023/12/wp-headless-cms-framework-545x170.webp 545w" sizes="(max-width: 768px) 100vw, 768px" /></figure>



<p>This solution provides multiple framework options, and is highly-configurable thanks to a collection of modules that can be activated and deactivated at will. The plugin also comes with its own comprehensive documentation, which should get you up and running quickly.</p>



<h2 class="wp-block-heading" id="h-conclusion">Conclusion</h2>



<p>In today’s multi-device world, it’s often not enough to publish your content to a single place. Creating content for multiple platforms can be a time-consuming process, but a headless CMS enables you to do this far more quickly and effectively.</p>



<p>To set up WordPress as a headless CMS, you can either:</p>



<ol>
<li>Create a blank theme.</li>



<li>Use a plugin, such as&nbsp;<a href="https://wordpress.org/plugins/wp-rest-headless/" target="_blank" rel="noreferrer noopener">WP Headless CMS Framework</a>.</li>
</ol>



<p>Going headless doesn’t eliminate the need for secure, reliable hosting! Regardless of whether you opt for a traditional or a headless CMS, make sure you choose the <a href="https://www.giws.us/web-hosting" target="_blank" rel="noreferrer noopener">right hosting provider</a>.</p>
<p>The post <a href="https://blog.giws.us/what-is-a-headless-content-management-system-cms/">What Is a Headless Content Management System (CMS)?</a> appeared first on <a href="https://blog.giws.us">GIWS Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.giws.us/what-is-a-headless-content-management-system-cms/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>4 Plugins for a More Efficient WordPress Media Library</title>
		<link>https://blog.giws.us/4-plugins-for-a-more-efficient-wordpress-media-library/</link>
					<comments>https://blog.giws.us/4-plugins-for-a-more-efficient-wordpress-media-library/#respond</comments>
		
		<dc:creator><![CDATA[GIWS]]></dc:creator>
		<pubDate>Wed, 30 Dec 2020 10:40:00 +0000</pubDate>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[WordPress]]></category>
		<guid isPermaLink="false">https://blog.giws.us/?p=1895</guid>

					<description><![CDATA[<p>For new&#160;WordPress site owners, having an organized Media Library may not be a major concern. However, as you fill your site’s pages and posts with images and media content, you may have a need for a better way to navigate your Media Library. There are a few plugins in the WordPress repository that can help...</p>
<p>The post <a href="https://blog.giws.us/4-plugins-for-a-more-efficient-wordpress-media-library/">4 Plugins for a More Efficient WordPress Media Library</a> appeared first on <a href="https://blog.giws.us">GIWS Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>For new&nbsp;WordPress site owners, having an organized Media Library may not be a major concern. However, as you fill your site’s pages and posts with images and media content, you may have a need for a better way to navigate your Media Library.</p>



<p>There are a few plugins in the WordPress repository that can help you organize and arrange multiple files into more easily accessible folders. This way, you can find your media content faster than you would with the default Media Library.</p>



<p>In this post, we’re going to show you four plugins that can help you have a more efficient WordPress media library. We’ll also talk briefly about why you need to organize your media library. Let’s dive into it!</p>



<h2 class="wp-block-heading" id="h-why-you-need-an-organized-wordpress-media-library">Why You Need an Organized WordPress Media Library</h2>



<p>The WordPress Media Library lets you add, edit, view, or delete media from your WordPress site. The media you upload when creating and editing pages and posts also appears here. Media types can vary from images, videos, audio, spreadsheets, and more. By default, the Media Library offers some pretty useful yet basic options with regards organization.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img decoding="async" width="768" height="190" src="https://blog.giws.us/wp-content/uploads/2023/12/media-library-date-768x190-1.webp" alt="" class="wp-image-1898" srcset="https://blog.giws.us/wp-content/uploads/2023/12/media-library-date-768x190-1.webp 768w, https://blog.giws.us/wp-content/uploads/2023/12/media-library-date-768x190-1-300x74.webp 300w, https://blog.giws.us/wp-content/uploads/2023/12/media-library-date-768x190-1-360x89.webp 360w, https://blog.giws.us/wp-content/uploads/2023/12/media-library-date-768x190-1-545x135.webp 545w" sizes="(max-width: 768px) 100vw, 768px" /></figure></div>


<p>For example, you can switch between a list view and a grid view. Likewise, you can choose which content to display based on the media file type or the date it was uploaded. If the Media Library offers this level of organization, it begs the question of why you’d need an additional plugin to organize your WordPress media.</p>



<p>In short, once you begin to have lots of media files in your library, you’ll likely require more organizational features than is offered by default. Here are just some of the benefits of having a more organized Media Library:</p>



<ul>
<li><strong>It’s easier to access old media files.</strong>&nbsp;If your site is years old, you’ll likely know how frustrating it can be to find old media files. In most cases, you’ll end up having to re-upload images or videos. Having the ability to create folders makes it significantly easier to navigate through your library’s content.</li>



<li><strong>You can save screen space.</strong>&nbsp;The WordPress Media Library packs all your media files into one place. However, it doesn’t really let you individually manage how your media appears on your screen. Even a month’s worth of images will see you hunting to find a particular image.</li>



<li><strong>An organized media library simply looks better.</strong>&nbsp;Your Media Library can quickly begin to look messy. Organizing the whole place will definitely be more pleasing to the eyes.</li>
</ul>



<p>Almost any site that&nbsp;consistently uploads media files&nbsp;can use a dedicated media plugin. Creative image-heavy websites such as webcomics and portfolios that require a consistent upload of high-quality media content will find it even more instrumental.</p>



<h2 class="wp-block-heading" id="h-4-plugins-for-a-more-efficient-wordpress-media-library">4 Plugins for a More Efficient WordPress Media Library</h2>



<p>Let’s take a look at some solutions for implementing a more efficient Media Library. Here are four of the best plugins we recommend:</p>



<h3 class="wp-block-heading" id="h-1-nbsp-filebird">1.&nbsp;<a href="https://wordpress.org/plugins/filebird/" target="_blank" rel="noreferrer noopener">FileBird</a></h3>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img decoding="async" width="768" height="294" src="https://blog.giws.us/wp-content/uploads/2023/12/filebird-media-library-768x294-1.webp" alt="" class="wp-image-1899" srcset="https://blog.giws.us/wp-content/uploads/2023/12/filebird-media-library-768x294-1.webp 768w, https://blog.giws.us/wp-content/uploads/2023/12/filebird-media-library-768x294-1-300x115.webp 300w, https://blog.giws.us/wp-content/uploads/2023/12/filebird-media-library-768x294-1-360x138.webp 360w, https://blog.giws.us/wp-content/uploads/2023/12/filebird-media-library-768x294-1-545x209.webp 545w" sizes="(max-width: 768px) 100vw, 768px" /></figure></div>


<p><a href="https://wordpress.org/plugins/filebird/" target="_blank" rel="noreferrer noopener">FileBird’s</a>&nbsp;approach to organizing your Media Library is centered around folder creation and file management within your dashboard. The plugin creates virtual folders that you can give descriptive names to for easy navigation.</p>



<p>One of the most outstanding features of FileBird is the ability to create unlimited folders and even subfolders in the premium version, although the free version is no slouch either. It has a simple intuitive user interface with drag-and-drop capabilities to ease the process of moving files into folders and rearranging them. You can also create, rename, or delete folders as you would on your desktop computer.</p>



<p>The plugin is also compatible with many other plugins, themes, and page builders. In general, it is a powerful library tool that seamlessly combines utility and ease of use.</p>



<h3 class="wp-block-heading" id="h-2-nbsp-media-library-assistant">2.&nbsp;<a href="https://wordpress.org/plugins/media-library-assistant/" target="_blank" rel="noreferrer noopener">Media Library Assistant</a></h3>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="768" height="209" src="https://blog.giws.us/wp-content/uploads/2023/12/media-library-assistant-768x209-1.webp" alt="" class="wp-image-1900" srcset="https://blog.giws.us/wp-content/uploads/2023/12/media-library-assistant-768x209-1.webp 768w, https://blog.giws.us/wp-content/uploads/2023/12/media-library-assistant-768x209-1-300x82.webp 300w, https://blog.giws.us/wp-content/uploads/2023/12/media-library-assistant-768x209-1-360x98.webp 360w, https://blog.giws.us/wp-content/uploads/2023/12/media-library-assistant-768x209-1-545x148.webp 545w" sizes="(max-width: 768px) 100vw, 768px" /></figure></div>


<p>Organizing your library with the&nbsp;<a href="https://wordpress.org/plugins/media-library-assistant/" target="_blank" rel="noreferrer noopener">Media Library Assistant</a>&nbsp;plugin is different to other solutions. The plugin relies on a set of shortcodes that you can use to directly add images and other media file types when editing a post or page. The shortcodes are mostly high-level and easy to remember – for example&nbsp;<em>[mla_gallery]</em>.</p>



<p><a href="https://wordpress.org/plugins/media-library-assistant/" target="_blank" rel="noreferrer noopener">Media Library Assistant</a>&nbsp;also makes locating media on your site much easier than the default. It adds two extra tabs within your Media Library screen, and allows for multiple search filters including alt text, image captions, and slugs among many others. Just like FileBird, the plugin is also compatible with many other plugins and supports various languages.</p>



<h3 class="wp-block-heading" id="h-3-nbsp-folders">3.&nbsp;<a href="https://wordpress.org/plugins/folders/" target="_blank" rel="noreferrer noopener">Folders</a></h3>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="768" height="610" src="https://blog.giws.us/wp-content/uploads/2023/12/media-library-folders-768x610-1.webp" alt="" class="wp-image-1901" srcset="https://blog.giws.us/wp-content/uploads/2023/12/media-library-folders-768x610-1.webp 768w, https://blog.giws.us/wp-content/uploads/2023/12/media-library-folders-768x610-1-300x238.webp 300w, https://blog.giws.us/wp-content/uploads/2023/12/media-library-folders-768x610-1-360x286.webp 360w, https://blog.giws.us/wp-content/uploads/2023/12/media-library-folders-768x610-1-545x433.webp 545w" sizes="(max-width: 768px) 100vw, 768px" /></figure></div>


<p>The&nbsp;<a href="https://wordpress.org/plugins/folders/" target="_blank" rel="noreferrer noopener">Folders</a>&nbsp;plugin offers much more than Media Library enhancement. It not only helps you to organize your media files, but virtually your whole site — pages and posts inclusive. So, whether it’s a site page, blog post, image, or videos, you can easily save them in the same folder or subfolder. Likewise, it is possible to copy files into multiple subfolders which can come in handy when you’re using the same files on different pages.</p>



<p>The plugin is a really powerful management tool that can afford you a similar level of organization to your experience on your desktop computer. It includes a drag-and-drop feature that makes the plugin very easy to use. There’s also a premium version costing $19 per year, which lets you access more than the standard ten folders, among many more additions.</p>



<h3 class="wp-block-heading" id="h-4-nbsp-export-media-library">4.&nbsp;<a href="https://wordpress.org/plugins/export-media-library/" target="_blank" rel="noreferrer noopener">Export Media Library</a></h3>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="768" height="219" src="https://blog.giws.us/wp-content/uploads/2023/12/export-media-library-768x219-1.webp" alt="" class="wp-image-1902" srcset="https://blog.giws.us/wp-content/uploads/2023/12/export-media-library-768x219-1.webp 768w, https://blog.giws.us/wp-content/uploads/2023/12/export-media-library-768x219-1-300x86.webp 300w, https://blog.giws.us/wp-content/uploads/2023/12/export-media-library-768x219-1-360x103.webp 360w, https://blog.giws.us/wp-content/uploads/2023/12/export-media-library-768x219-1-545x155.webp 545w" sizes="(max-width: 768px) 100vw, 768px" /></figure></div>


<p>Of all the entries on our list,&nbsp;<a href="https://wordpress.org/plugins/export-media-library/" target="_blank" rel="noreferrer noopener">Export Media Library</a>&nbsp;offers the most highly-specific functionality. In fact, the plugin comes with just one feature — exporting your WordPress media files as an archive (.zip file). However, you can choose the folder structure option that best suits you.</p>



<p>You can either export your packaged file as a single folder containing all of your media files, or create nested folders for your site’s content. The other selection is whether or not to compress your export file. By doing this, you’ll get a lighter file in size, at a cost of longer processing time to create it.</p>



<p>Overall, this plugin isn’t going to make your day-to-day Media Library management any quicker. However, it’s going to work really well in conjunction with other tools on this list, especially if you’re moving your site.</p>



<h2 class="wp-block-heading" id="h-conclusion">Conclusion</h2>



<p>The default WordPress media library is a fantastic tool when it comes to uploading content to your site. However, after a while, you may discover that you need more organization than what is provided by default.</p>



<p>Here are the four WordPress plugins we recommend for achieving a more efficient media library:</p>



<ol>
<li><strong><a href="https://wordpress.org/plugins/filebird/" target="_blank" rel="noreferrer noopener">FileBird</a>:</strong>&nbsp;A powerful tool with easy-to-use drag-and-drop capability.</li>



<li><strong><a href="https://wordpress.org/plugins/media-library-assistant/," target="_blank" rel="noreferrer noopener">Media Library Assistant</a>:</strong>&nbsp;Uses shortcodes and extensive search filters to organize your Media Library.</li>



<li><strong><a href="https://wordpress.org/plugins/folders/," target="_blank" rel="noreferrer noopener">Folders</a>:</strong>&nbsp;Organizes site-wide content into folders – pages, posts, and media alike.</li>



<li><strong><a href="https://wordpress.org/plugins/export-media-library/" target="_blank" rel="noreferrer noopener">Export Media Library</a>:</strong>&nbsp;Offers a way to export your Media Library, and split the contents into custom folders.</li>
</ol>
<p>The post <a href="https://blog.giws.us/4-plugins-for-a-more-efficient-wordpress-media-library/">4 Plugins for a More Efficient WordPress Media Library</a> appeared first on <a href="https://blog.giws.us">GIWS Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.giws.us/4-plugins-for-a-more-efficient-wordpress-media-library/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>The 5 Most Common WordPress Attacks (And How to Prevent Them)</title>
		<link>https://blog.giws.us/the-5-most-common-wordpress-attacks-and-how-to-prevent-them/</link>
					<comments>https://blog.giws.us/the-5-most-common-wordpress-attacks-and-how-to-prevent-them/#respond</comments>
		
		<dc:creator><![CDATA[GIWS]]></dc:creator>
		<pubDate>Tue, 29 Dec 2020 19:29:00 +0000</pubDate>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[WordPress]]></category>
		<guid isPermaLink="false">https://blog.giws.us/?p=1872</guid>

					<description><![CDATA[<p>Cybersecurity is a perennial hot topic, more so today than ever before. As a WordPress site owner, it is highly important to&#160;go big on security&#160;and do your best to protect your site against any form of attack now or in the future. WordPress&#160;is inherently a&#160;highly-secure platform. The security team is made up of a number...</p>
<p>The post <a href="https://blog.giws.us/the-5-most-common-wordpress-attacks-and-how-to-prevent-them/">The 5 Most Common WordPress Attacks (And How to Prevent Them)</a> appeared first on <a href="https://blog.giws.us">GIWS Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Cybersecurity is a perennial hot topic, more so today than ever before. As a WordPress site owner, it is highly important to&nbsp;go big on security&nbsp;and do your best to protect your site against any form of attack now or in the future.</p>



<p>WordPress&nbsp;is inherently a&nbsp;highly-secure platform. The security team is made up of a number of experts who work hard to deal with security concerns at every new update. However, no site is totally safe, which means there are still vulnerabilities you’re liable to experience.</p>



<p>In this article, we’ll consider five of the most common WordPress security threats and how to prevent them using the best practices. Let’s go!</p>



<h2 class="wp-block-heading" id="h-how-we-ve-chosen-the-most-common-wordpress-attacks">How We’ve Chosen the Most Common WordPress Attacks</h2>



<p>For the purpose of this article, we’ll be basing our advice on the&nbsp;Open Web Application Security Project (OWASP)&nbsp;ranking. Since 2001, OWASP has been an integral part of the promotion of security and trustworthiness online. They are a nonprofit foundation that works hard to improve software integrity on the internet.</p>



<p>The project sets a clear goal of comprehensive data collection and achieves it by leveraging the OWASP Azure&nbsp;Cloud Infrastructure&nbsp;to collect, analyze, and store data contributed. In essence, volunteers can simply contribute data by sending a CSV/Excel file by email or uploading it to a contribution folder.</p>



<p>OWASP uses this data collection and analysis system to compile a list of the&nbsp;<a href="https://owasp.org/www-project-top-ten/" target="_blank" rel="noreferrer noopener">Top Ten</a>&nbsp;security risks sites encounter regularly. With about 275 local chapters worldwide, the project has grown a reputation for helping organizations to develop and&nbsp;maintain trustworthy software applications.</p>



<h2 class="wp-block-heading" id="h-the-5-most-common-wordpress-attacks-and-how-to-prevent-them">The 5 Most Common WordPress Attacks (And How to Prevent Them)</h2>



<p>If your WordPress site’s security is a priority, this list will help you to know the attacks to look out for and how to prevent them. Let’s begin!</p>



<h3 class="wp-block-heading" id="h-1-injection-flaws">1. Injection Flaws</h3>



<p>The most prominent vulnerability you’re likely to encounter on your WordPress site is a code injection flaw. You mostly&nbsp;experience an injection&nbsp;when your site lets users enter data through a vulnerable entry point, such as a contact or login form.</p>



<p>When the data entered is not ‘validated’, you can be susceptible to this attack.&nbsp;<a href="https://owasp.org/www-project-top-ten/OWASP_Top_Ten_2017/Top_10-2017_A1-Injection" target="_blank" rel="noreferrer noopener">SQL injections</a>&nbsp;are the most common but other types such as NoSQL, OS, and LDAP injections may also be an issue.</p>



<p>Injection flaws often lead to access denial, data loss and corruption, disclosure to unauthorized parties, and even total host takeover.</p>



<p>The best&nbsp;<a href="https://www.malcare.com/blog/how-sql-injection-attack-works-on-wordpress-sites/" target="_blank" rel="noreferrer noopener">approach to prevent injection</a>&nbsp;involves separating commands from queries on your site. WordPress developers can use certain SQL controls&nbsp;<a href="https://www.w3schools.com/sql/sql_top.asp" target="_blank" rel="noreferrer noopener">such as&nbsp;<em>LIMIT</em></a>&nbsp;to prevent this. Site owners can also take advantage of&nbsp;security plugins&nbsp;(such as&nbsp;<a href="https://www.malcare.com/" target="_blank" rel="noreferrer noopener">Malcare</a>) to keep their websites protected.</p>



<h3 class="wp-block-heading" id="h-2-broken-authentication">2. Broken Authentication</h3>



<p>Broken authentication occurs when there’s a vulnerability in the implementation of identity and session controls. The strength of a site’s&nbsp;authentication control&nbsp;is highly dependent on session management.</p>



<p>If this is not implemented properly, hackers can compromise your keys, passwords, and session tokens. In most cases, you may end up suffering identity theft, social security fraud, and disclosure of highly sensitive information.</p>



<p>If you want to minimize the risk of broken authentication, you should implement&nbsp;multi-factor authentication&nbsp;on your site. What’s more, look to replace the&nbsp;default credentials&nbsp;you’re given when creating a new WordPress site. Weak password checks should also not be an option, especially for admin users.</p>



<h3 class="wp-block-heading" id="h-3-cross-site-scripting-xss-attacks">3. Cross-Site Scripting (XSS) Attacks</h3>



<p>Very similar to injection attacks,&nbsp;<a href="https://owasp.org/www-project-top-ten/OWASP_Top_Ten_2017/Top_10-2017_A7-Cross-Site_Scripting_(XSS)" target="_blank" rel="noreferrer noopener">XSS attacks</a>&nbsp;occur at entry points into site – such as user input fields. These attacks happen when automated applications detect any form of XSS on your site. It can be exploited to sneak untrusted data into a new page that lacks proper validation or an existing one through user-inputted data.</p>



<p>Cross-site scripting lets the attacker execute code remotely within the victim’s browser. This way, they can either steal their credentials or deliver malware. You can prevent an XSS attack by making use of two strategies.</p>



<p>The first strategy is to ensure that network requests generated from one page doesn’t gain access to data on another. Likewise, your website must be able to differentiate between regular input and malicious code. Frameworks such as React JS escape this attack by design.</p>



<p>Generally, preventing XSS attacks starts with&nbsp;<a href="https://www.wordfence.com/learn/how-to-prevent-cross-site-scripting-attacks/" target="_blank" rel="noreferrer noopener">good development practices</a>. For a site owner, choosing a&nbsp;strong, secure theme&nbsp;is vital.</p>



<h3 class="wp-block-heading" id="h-4-sensitive-data-exposure">4. Sensitive Data Exposure</h3>



<p>Sensitive data exposure can be considered a data breach. When&nbsp;<a href="https://owasp.org/www-project-top-ten/OWASP_Top_Ten_2017/Top_10-2017_A3-Sensitive_Data_Exposure" target="_blank" rel="noreferrer noopener">sensitive data</a>&nbsp;is being transferred or stored on your site, you must put adequate measures in place to ensure that hackers can’t lay their hands on it. Otherwise, if exposed, attackers can steal passwords, credit card details, session tokens, and much more besides.</p>



<p>Apart from putting your own sensitive data at risk, your&nbsp;site visitors can also be victims. This is why you must do your best to keep data secure on your site.</p>



<p>In a bid to escape this type of attack, it is important that you never store data in plain text or accept data sent over non-HTTPS connections. For site owners, a&nbsp;suitable SSL certificate&nbsp;can help you encrypt the most sensitive data across networks.</p>



<h3 class="wp-block-heading" id="h-5-xml-external-entities-xxe">5. XML External Entities (XXE)</h3>



<p>This type of attack arises due to old or poorly managed&nbsp;<a href="https://owasp.org/www-project-top-ten/OWASP_Top_Ten_2017/Top_10-2017_A4-XML_External_Entities_(XXE)" target="_blank" rel="noreferrer noopener">eXtensible Markup Language (XML) processors</a>. These evaluate references to external entities within XML documents. In the process, an attacker can exploit an incorrectly configured XML parser that accepts XML directly or through XML upload. In other words, they can now access any XML input that makes references to external entities.</p>



<p>XXE can be used to execute a&nbsp;Denial of Service (DOS) attack, extract your data, or even implement a remote request from your server as well. Developer expertise goes a long way in identifying and dealing with XML external entities.</p>



<p>To prevent this attack as an end user, you’ll want to keep your core WordPress installation up to date. XXE concerns are usually at a fundamental code level, and are patched during version updates of core software.</p>



<h2 class="wp-block-heading" id="h-conclusion">Conclusion</h2>



<p>While the core WordPress software is continually updated to mitigate major security threats, plugins and themes can be a major source of concern for users – especially if they’re poorly coded. In essence, the more attention you pay to your&nbsp;site’s security, the less the probability of having to deal with these issues.</p>



<p>In this post, we’ve looked at five of the most common WordPress attacks today. Let’s recap them quickly:</p>



<ol>
<li>Injection flaws</li>



<li>Broken authentication</li>



<li>Cross-site scripting (XSS) attacks</li>



<li>Sensitive data exposure (SSL Certificates&nbsp;can help avoid this)</li>



<li>XML external entities (XXE)</li>
</ol>
<p>The post <a href="https://blog.giws.us/the-5-most-common-wordpress-attacks-and-how-to-prevent-them/">The 5 Most Common WordPress Attacks (And How to Prevent Them)</a> appeared first on <a href="https://blog.giws.us">GIWS Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.giws.us/the-5-most-common-wordpress-attacks-and-how-to-prevent-them/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>9 Ways to Keep Your WordPress Website Secure</title>
		<link>https://blog.giws.us/9-ways-to-keep-your-wordpress-website-secure/</link>
					<comments>https://blog.giws.us/9-ways-to-keep-your-wordpress-website-secure/#respond</comments>
		
		<dc:creator><![CDATA[GIWS]]></dc:creator>
		<pubDate>Tue, 29 Dec 2020 15:46:00 +0000</pubDate>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[SSL]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[WordPress]]></category>
		<guid isPermaLink="false">https://blog.giws.us/?p=1790</guid>

					<description><![CDATA[<p>Over&#160;28 million live websites&#160;now use WordPress. While it’s great to be part of such a large and active community, this popularity makes the platform a prime target for malicious hackers. Fortunately, by implementing some simple security tactics and performing regular checks, you can make your site much less vulnerable to attack. This can help you...</p>
<p>The post <a href="https://blog.giws.us/9-ways-to-keep-your-wordpress-website-secure/">9 Ways to Keep Your WordPress Website Secure</a> appeared first on <a href="https://blog.giws.us">GIWS Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Over&nbsp;<a href="https://trends.builtwith.com/cms/WordPress" target="_blank" rel="noreferrer noopener">28 million live websites</a>&nbsp;now use WordPress. While it’s great to be part of such a large and active community, this popularity makes the platform a prime target for malicious hackers.</p>



<p>Fortunately, by implementing some simple security tactics and performing regular checks, you can make your site much less vulnerable to attack. This can help you avoid losing customers, traffic, revenue, or confidential information due to a preventable security breach.</p>



<p>In this post, we’ll discuss why protecting your WordPress site is more important than ever. We’ll then share nine of our top tips for boosting your site’s security. Let’s get started!</p>



<h2 class="wp-block-heading" id="h-an-introduction-to-wordpress-security">An Introduction to WordPress Security</h2>



<p>WordPress powers&nbsp;<a href="https://w3techs.com/blog/entry/40_percent_of_the_web_uses_wordpress" target="_blank" rel="noreferrer noopener">over 40 percent of the web</a>, which makes it an attractive target for hackers. If a malicious third party manages to identify a vulnerability with one WordPress website, they could potentially use that same security loophole against the millions of other websites that are built on the same platform.</p>



<p>With this mind, it’s unsurprising that attacks against WordPress are on the rise. Wordfence recorded&nbsp;<a href="https://www.wordfence.com/blog/2021/01/the-wordfence-2020-wordpress-threat-report/" target="_blank" rel="noreferrer noopener">4.3 billion attempts to exploit vulnerabilities</a>&nbsp;in 2020. When asked about web security, over 70 percent of developers, freelancers, and agencies confirmed that they are&nbsp;<a href="https://patchstack.com/wordpress-security-2020/" target="_blank" rel="noreferrer noopener">increasingly worried about their websites</a>. In fact, 25 percent of respondents confirmed they’d had to deal with a hacked website in the month prior to participating in the survey.</p>



<p>The WordPress team has a strong track record of identifying and addressing vulnerabilities in the platform. However, no software is perfect. In addition, many website owners choose to extend WordPress core with themes and plugins. These third-party products can add new designs and features to your site – but can also add new security vulnerabilities.</p>



<p>According to Patchstack’s security whitepaper, third-party plugins and themes account for 96.22 percent of detected WordPress security vulnerabilities. The total number of active and vulnerable theme and plugin installations detected throughout 2020 came in at a staggering 70 million.</p>



<p>If a hacker does manage to take control of your site, the consequences could be disastrous. The attacker might deface your site, steal your data, or redirect your loyal customers to a spam website.</p>



<p>The impact of these malicious activities can be far-reaching. They may include a loss of trust amongst your customers and missed sales, right through to potential legal action due to your failure to protect your visitors’ information.</p>



<h2 class="wp-block-heading" id="h-9-ways-to-keep-your-wordpress-website-secure-in-2021">9 Ways to Keep Your WordPress Website Secure in 2021</h2>



<p>WordPress may be a favorite target amongst hackers, but that’s no reason to switch to a different Content Management System (CMS). Let’s take a look at nine tips that you can use to harden and protect your WordPress website against common attacks.</p>



<h3 class="wp-block-heading" id="h-1-choose-a-hosting-provider-that-prioritizes-security">1. Choose a Hosting Provider That Prioritizes Security</h3>



<p>The most important way to&nbsp;keep your WordPress website safe&nbsp;is to choose a hosting provider that prioritizes security. Wherever possible, we recommend opting for a hosting solution that offers built-in security features and tools.</p>



<p>At GIWS, we take security seriously, which is why all of our hosting packages include the Cloudflare Web Application Firewall (WAF). This tool can help protect your site against brute-force attacks in which a hacker tries to submit many different passwords and usernames in the hopes of guessing the combination correctly.</p>



<p>Our hosting plans also come with the&nbsp;cPanel control panel&nbsp;and&nbsp;Softaculous installer. This popular installer provides access to a wide range of add-ons, tools, and software, including many that can help you&nbsp;protect your website.</p>



<p>Running outdated software can make your site more vulnerable to attack. If you do choose to install additional software via Softaculous, then we’ll email you every time an update becomes available. This ensures you won’t miss any critical security updates or bug fixes that can help bolster your site’s security.</p>



<p>If you do have a security concern, then it’s important to address it straight away. That’s why we also offer&nbsp;24/7 customer support&nbsp;to all of our hosting customers.</p>



<h3 class="wp-block-heading" id="h-2-install-a-secure-sockets-layer-ssl-certificate">2. Install a Secure Sockets Layer (SSL) Certificate</h3>



<p>Without a&nbsp;Secure Socket Layer (SSL) certificate, malicious third parties may be able to intercept the data your website sends and receives. This includes login credentials and payment details. If a hacker manages to access this information, it could damage your reputation and destroy users’ trust in your website. It may even land you in legal hot water due to data protection laws.</p>



<p>An SSL certificate can help ensure your private data remains private by transferring information via&nbsp;Hypertext Transfer Protocol Secure (HTTPS)&nbsp;instead of Hypertext Transfer Protocol (HTTP). As the name suggests, HTTPS is more secure than HTTP, as it enables you to encrypt any data that flows in and out of your website.</p>



<p>To help you meet this important security requirement, we provide several different types of <a href="https://www.giws.us/billing/store/ssl-certificates" target="_blank" rel="noreferrer noopener">SSL certificates</a>:</p>



<p>After procuring your SSL certificate, we’ll send you an SSL Token via email. You can install your certificate by adding it to your website.</p>



<p>If you’re a cPanel user, then you can log into your account and launch the SSL Status<em>:</em></p>



<p>We’ll then ask some simple questions about your website and your certificate. After providing these details, AutoInstall SSL will upload your certificate and your data will be encrypted.</p>



<h3 class="wp-block-heading" id="h-3-implement-a-content-delivery-network-cdn">3. Implement a Content Delivery Network (CDN)</h3>



<p>If a malicious third party manages to break into your site using a brute-force attack, they could wreak havoc. They might steal your data, deface your site, or even delete your WordPress website entirely.</p>



<p>You can help protect your site against brute-force attacks by using a long,&nbsp;complex password&nbsp;that features a mix of numbers and symbols, plus uppercase and lowercase letters. However, some hackers use automated scripts and bots to bombard your site with thousands of login credentials. Even if you follow password best practices, your site may still fall victim to a brute-force attack.</p>



<p>To protect against these automated scripts and bots, you may want to consider using a&nbsp;Content Delivery Network (CDN). Although this tool is often used to improve website performance, it can also block malicious requests from ever reaching your site.</p>



<p>This may prevent hackers from hammering your site with login credentials. At GIWS, we offer the Cloudflare CDN to all our customers:<img loading="lazy" decoding="async" width="800" height="340" class="wp-image-1795" style="width: 800px;" src="https://blog.giws.us/wp-content/uploads/2020/12/cloudflare-cdn-768x326.png-1.webp" alt="" srcset="https://blog.giws.us/wp-content/uploads/2020/12/cloudflare-cdn-768x326.png-1.webp 768w, https://blog.giws.us/wp-content/uploads/2020/12/cloudflare-cdn-768x326.png-1-300x127.webp 300w, https://blog.giws.us/wp-content/uploads/2020/12/cloudflare-cdn-768x326.png-1-360x153.webp 360w, https://blog.giws.us/wp-content/uploads/2020/12/cloudflare-cdn-768x326.png-1-545x231.webp 545w" sizes="(max-width: 800px) 100vw, 800px" /></p>



<p>In addition to offering brute-force protection, Cloudflare’s network is designed to monitor and mitigate&nbsp;Distributed Denial-of-Services (DDoS) attacks. In this scenario, a hacker floods your network with so much malicious traffic that it exceeds your website’s capacity to process requests, at which point legitimate requests may be ignored.</p>



<p>You can configure your Cloudflare CDN by logging into cPanel and navigating to&nbsp;<em>Software &gt; Cloudflare</em>. You can then follow the onscreen instructions to ensure Cloudflare is set up correctly for your particular website.</p>



<h3 class="wp-block-heading" id="h-4-use-plugins-and-themes-safely">4. Use Plugins and Themes Safely</h3>



<p>WordPress has huge directories of themes and plugins that can help you create beautiful, feature-rich websites. However, these third-party extensions can also make your site vulnerable to attack. In 2019,&nbsp;<a href="https://www.imperva.com/blog/the-state-of-vulnerabilities-in-2019/" target="_blank" rel="noreferrer noopener">97.2 percent of WordPress vulnerabilities</a>&nbsp;were related to plugins.</p>



<p>To help protect your website, you should only install plugins from reputable sources. Wherever possible, we recommend using the official WordPress Plugin Repository, as it has <a href="https://developer.wordpress.org/plugins/wordpress-org/plugin-security/" target="_blank" rel="noreferrer noopener">strict security guidelines</a>:<img loading="lazy" decoding="async" width="800" height="333" class="wp-image-1797" style="width: 800px;" src="https://blog.giws.us/wp-content/uploads/2020/12/wordpress-official-repository-768x320.png.webp" alt="" srcset="https://blog.giws.us/wp-content/uploads/2020/12/wordpress-official-repository-768x320.png.webp 768w, https://blog.giws.us/wp-content/uploads/2020/12/wordpress-official-repository-768x320.png-300x125.webp 300w, https://blog.giws.us/wp-content/uploads/2020/12/wordpress-official-repository-768x320.png-360x150.webp 360w, https://blog.giws.us/wp-content/uploads/2020/12/wordpress-official-repository-768x320.png-545x227.webp 545w" sizes="(max-width: 800px) 100vw, 800px" /></p>



<p>Alternatively, you can purchase themes and plugins from reputable third-party marketplaces such as <a href="https://codecanyon.net/" target="_blank" rel="noreferrer noopener">CodeCanyon</a>. Even if you’re using a quality source, it’s still smart to evaluate the theme or plugin, including examining when it was last updated:<img loading="lazy" decoding="async" width="800" height="475" class="wp-image-1798" style="width: 800px;" src="https://blog.giws.us/wp-content/uploads/2020/12/wordpress-plugin-updates-768x456.png.webp" alt="" srcset="https://blog.giws.us/wp-content/uploads/2020/12/wordpress-plugin-updates-768x456.png.webp 768w, https://blog.giws.us/wp-content/uploads/2020/12/wordpress-plugin-updates-768x456.png-300x178.webp 300w, https://blog.giws.us/wp-content/uploads/2020/12/wordpress-plugin-updates-768x456.png-360x214.webp 360w, https://blog.giws.us/wp-content/uploads/2020/12/wordpress-plugin-updates-768x456.png-545x324.webp 545w" sizes="(max-width: 800px) 100vw, 800px" /></p>



<p>We also recommend checking the software’s reviews, particularly the most recent ones. A spate of negative comments may indicate a security issue with the latest release.</p>



<p>Themes and plugins also add code to your site, which may contain vulnerabilities. A responsible developer will work hard to close any security loopholes discovered in their theme or plugin, and will often release an update that contains a solution for any recently-discovered vulnerabilities. For this reason, it’s important to keep your themes and plugins up-to-date.</p>



<p>According to WPBeginner, <a href="https://www.wpbeginner.com/beginners-guide/ultimate-guide-to-upgrade-wordpress-for-beginners-infograph/?display=wide" target="_blank" rel="noreferrer noopener">86 percent of sites are hacked</a> due to outdated software. To minimize your risk, it’s important to install updates as soon as they become available:<img loading="lazy" decoding="async" width="800" height="298" class="wp-image-1799" style="width: 800px;" src="https://blog.giws.us/wp-content/uploads/2020/12/wordpress-dashboard-updates-768x286.png.webp" alt="" srcset="https://blog.giws.us/wp-content/uploads/2020/12/wordpress-dashboard-updates-768x286.png.webp 768w, https://blog.giws.us/wp-content/uploads/2020/12/wordpress-dashboard-updates-768x286.png-300x112.webp 300w, https://blog.giws.us/wp-content/uploads/2020/12/wordpress-dashboard-updates-768x286.png-360x134.webp 360w, https://blog.giws.us/wp-content/uploads/2020/12/wordpress-dashboard-updates-768x286.png-545x203.webp 545w" sizes="(max-width: 800px) 100vw, 800px" /></p>



<p>At some point, you may no longer require a particular theme or plugin. If you simply deactivate the software in question, then hackers may still be able to exploit its code. For example, hackers commonly target individual PHP files within a specific plugin.</p>



<p>If you simply deactivate the theme or plugin, then those PHP files will remain accessible and will therefore still be exploitable. This means that it’s crucial to delete extensions that you no longer require.</p>



<h3 class="wp-block-heading" id="h-5-install-a-web-application-firewall-waf">5. Install a Web Application Firewall (WAF)</h3>



<p>Themes and plugins can potentially introduce vulnerabilities to your website. Ideally, when such a problem is discovered, the theme or plugin developer will rush to patch the issue and release an update.</p>



<p>However, this isn’t always the case, as some complex vulnerabilities may take time to fix. While we’d always recommend removing insecure software, this isn’t always feasible. For example, perhaps the plugin in question delivers your website’s core functionality.</p>



<p>If you do need to continue using a vulnerable plugin, then you can make it more difficult for hackers to abuse these known security loopholes. One method is to use a Web Application Firewall (WAF) to filter out malicious requests before they reach your WordPress website. This can also protect your site against&nbsp;Cross-Site Scripting (XSS) attacks.</p>



<p>There are several WAF plugins available for WordPress. However, the <a href="https://www.wordfence.com/" target="_blank" rel="noreferrer noopener">Wordfence endpoint firewall</a> is a popular option:<img loading="lazy" decoding="async" width="800" height="360" class="wp-image-1800" style="width: 800px;" src="https://blog.giws.us/wp-content/uploads/2020/12/wordfence-waf-firewall-768x346.png.webp" alt="" srcset="https://blog.giws.us/wp-content/uploads/2020/12/wordfence-waf-firewall-768x346.png.webp 768w, https://blog.giws.us/wp-content/uploads/2020/12/wordfence-waf-firewall-768x346.png-300x135.webp 300w, https://blog.giws.us/wp-content/uploads/2020/12/wordfence-waf-firewall-768x346.png-360x162.webp 360w, https://blog.giws.us/wp-content/uploads/2020/12/wordfence-waf-firewall-768x346.png-545x246.webp 545w" sizes="(max-width: 800px) 100vw, 800px" /></p>



<p>After installing and activating Wordfence, it’s a good idea to leave this plugin in Learning More for at least a week before enabling its firewall. This can help you avoid false positives, where Wordfence blocks legitimate activities.</p>



<p>While the plugin is in Learning Mode, you should perform as many different actions as possible on your WordPress website. This gives Wordfence the best possible chance of learning how to protect your site while also permitting normal activity and visitors through its firewall.</p>



<p>You can put Wordfence into Learning Mode by navigating to <em>Wordfence > Firewall</em>. Then open the <em>Web Application Firewall Status</em> dropdown and select <em>Learning Mode:</em><img loading="lazy" decoding="async" width="800" height="375" class="wp-image-1801" style="width: 800px;" src="https://blog.giws.us/wp-content/uploads/2020/12/web-application-firewall-768x360.png.webp" alt="" srcset="https://blog.giws.us/wp-content/uploads/2020/12/web-application-firewall-768x360.png.webp 768w, https://blog.giws.us/wp-content/uploads/2020/12/web-application-firewall-768x360.png-300x141.webp 300w, https://blog.giws.us/wp-content/uploads/2020/12/web-application-firewall-768x360.png-360x169.webp 360w, https://blog.giws.us/wp-content/uploads/2020/12/web-application-firewall-768x360.png-545x255.webp 545w" sizes="(max-width: 800px) 100vw, 800px" /></p>



<p>Save your changes, and Wordfence will start monitoring your site. When you’re ready to take Wordfence out of Learning Mode, you can enable the firewall by navigating to&nbsp;<em>Wordfence &gt; Firewall.</em>&nbsp;Then open the dropdown and select&nbsp;<em>Enabled and Protecting.</em></p>



<h3 class="wp-block-heading" id="h-6-activate-two-factor-authentication-2fa">6. Activate Two-Factor Authentication (2FA)</h3>



<p>It’s important to protect your website with a strong password. However, there are some password-based attacks where the strength of your login credentials has no impact on whether that attack succeeds or fails.</p>



<p>This includes credential stuffing attacks, where a hacker attempts to break into your dashboard using thousands, or even millions of username and password combinations. There are even keystroke logging programs that can monitor your keyboard and record every single thing you type, including your password.</p>



<p>One way to protect against these attacks is to&nbsp;enable Two-Factor Authentication (2FA). After activating this feature, anyone trying to access your WordPress website will need to enter the correct login details and then pass an additional security check – such as responding to a push notification on their phone or entering a code sent to their email address – to access your site.</p>



<p>By activating 2FA, you can make it significantly more difficult for a third party to gain access to your website. You can set up 2FA using a mobile application such as <a href="https://support.google.com/accounts/answer/1066447" target="_blank" rel="noreferrer noopener">Google Authenticator</a> or <a href="https://www.microsoft.com/en-us/p/microsoft-authenticator/9nblgggzmcj6?activetab=pivot:overviewtab" target="_blank" rel="noreferrer noopener">Microsoft Authenticator</a>:<img loading="lazy" decoding="async" width="800" height="196" class="wp-image-1802" style="width: 800px;" src="https://blog.giws.us/wp-content/uploads/2020/12/microsoft-authenticator-768x188.png.webp" alt="" srcset="https://blog.giws.us/wp-content/uploads/2020/12/microsoft-authenticator-768x188.png.webp 768w, https://blog.giws.us/wp-content/uploads/2020/12/microsoft-authenticator-768x188.png-300x73.webp 300w, https://blog.giws.us/wp-content/uploads/2020/12/microsoft-authenticator-768x188.png-360x88.webp 360w, https://blog.giws.us/wp-content/uploads/2020/12/microsoft-authenticator-768x188.png-545x133.webp 545w" sizes="(max-width: 800px) 100vw, 800px" /></p>



<p>After installing your chosen mobile app, GIWS customers can enable 2FA by logging into their accounts and navigating to <em>Account > Edit Account Details</em>. You can then select <em>Security Settings</em> in the left-hand menu:</p>



<p>On the subsequent page, select&nbsp;<em>Click here to enable.</em>&nbsp;You’ll then be guided through the process of linking your WordPress site to your authenticator mobile app:</p>



<p>As part of this process, we’ll provide you with a backup code. If you ever lose access to your authenticator app, then you can use this code to recover your WordPress website. To avoid getting locked out of your site, it’s vital that you make a note of this code and keep it somewhere safe.</p>



<h3 class="wp-block-heading" id="h-7-consider-disabling-xml-rpc">7. Consider Disabling XML-RPC</h3>



<p>Pingbacks are a way to notify other websites that you’ve linked to their content, and vice versa. By default, they’re enabled in WordPress. While this feature can make it easier to respond to comments that mention your site, it can also make your website more vulnerable to DDoS attacks.</p>



<p>WordPress pingbacks are made possible by the&nbsp;<a href="https://codex.wordpress.org/XML-RPC_Support" target="_blank" rel="noreferrer noopener">XML-RPC interface</a>. However, an attacker might use this feature to bombard your site with pingbacks. This can overload your server and might even take your site offline. For this reason, you may want to consider disabling the XML-RPC interface using the&nbsp;<a href="https://wordpress.org/plugins/rest-xmlrpc-data-checker/" target="_blank" rel="noreferrer noopener">REST XML-RPC Data Checker</a>.</p>



<p>If you do decide to disable pingbacks, then install and activate this plugin in your WordPress dashboard. Then navigate to <em>Settings > REST XML-RPC Data Checker</em>. Next, select the <em>XML-RPC</em> tab and choose <em>Disable XML-RPC API interface:</em><img loading="lazy" decoding="async" width="800" height="376" class="wp-image-1803" style="width: 800px;" src="https://blog.giws.us/wp-content/uploads/2020/12/rest-xml-rpc-768x361.png.webp" alt="" srcset="https://blog.giws.us/wp-content/uploads/2020/12/rest-xml-rpc-768x361.png.webp 768w, https://blog.giws.us/wp-content/uploads/2020/12/rest-xml-rpc-768x361.png-300x141.webp 300w, https://blog.giws.us/wp-content/uploads/2020/12/rest-xml-rpc-768x361.png-360x169.webp 360w, https://blog.giws.us/wp-content/uploads/2020/12/rest-xml-rpc-768x361.png-545x256.webp 545w" sizes="(max-width: 800px) 100vw, 800px" /></p>



<p>Now you just need to save your changes and pingbacks will be disabled for your website. If you don’t want to use a plugin, then you can block all incoming XML-RPC requests before they’re passed to your site.</p>



<p>This technique does require you to edit your site at the code level, so it’s wise to create a full backup before proceeding. If you’re an GIWS customer, we provide two backup tools that you can access via cPanel:</p>



<p>After creating a backup, connect to your server via File Transfer Protocol (FTP) using an FTP client such as&nbsp;<a href="https://filezilla-project.org/" target="_blank" rel="noreferrer noopener">FileZilla</a>. You can then open your&nbsp;<em>.htcaccess</em>&nbsp;file for editing and add the following:</p>



<p><code>&lt;Files xmlrpc.php&gt;<br>order deny,allow<br>deny from all<br>&lt;/Files&gt;</code></p>



<p>Don’t forget to save your changes and re-upload the file to your server. To verify that XML-RPC is now disabled, head over to&nbsp;<a href="https://xmlrpc.eritreo.it/" target="_blank" rel="noreferrer noopener">XML-RPC Validator</a>&nbsp;and enter your website’s URL. If XML-RPC is disabled, then the Validator should display an error message.</p>



<h3 class="wp-block-heading" id="h-8-remove-the-wordpress-theme-editor">8. Remove the WordPress Theme Editor</h3>



<p>By default, you can modify your theme using WordPress’ built-in theme editor. While this is helpful for creating custom themes, it’s also a way for hackers to inject malicious code into your website:<img loading="lazy" decoding="async" width="800" height="381" class="wp-image-1804" style="width: 800px;" src="https://blog.giws.us/wp-content/uploads/2020/12/wordpress-theme-editor-768x366.png.webp" alt="" srcset="https://blog.giws.us/wp-content/uploads/2020/12/wordpress-theme-editor-768x366.png.webp 768w, https://blog.giws.us/wp-content/uploads/2020/12/wordpress-theme-editor-768x366.png-300x143.webp 300w, https://blog.giws.us/wp-content/uploads/2020/12/wordpress-theme-editor-768x366.png-360x172.webp 360w, https://blog.giws.us/wp-content/uploads/2020/12/wordpress-theme-editor-768x366.png-545x260.webp 545w" sizes="(max-width: 800px) 100vw, 800px" /></p>



<p>If you don’t need the theme editor, then you may want to consider disabling it. This requires you to edit your website’s code, so we recommend creating a backup before proceeding.</p>



<p>To disable the editor, you’ll need to connect to your server using an FTP client. You can then open your&nbsp;<em>wp-config.php</em>&nbsp;file and add the following after the line that reads “That’s all, stop editing! Happy publishing”:</p>



<p><code>define( 'DISALLOW_FILE_EDIT', true );</code></p>



<p>Save your changes and the theme editor will disappear from your WordPress dashboard. If you need to restore the theme editor at any point, then simply connect to your server using FTP and remove the line of&nbsp;<em>DISALLOW_FILE_EDIT</em>&nbsp;code.</p>



<h3 class="wp-block-heading" id="h-9-protect-your-database-against-sql-injection-attacks">9. Protect Your Database Against SQL Injection Attacks</h3>



<p>A hacker may attempt to gain access to your WordPress account by injecting malicious SQL queries into your MySQL database. Hackers can launch these SQL injection attacks via any content that accepts user input. This includes many website staples, such as comment sections and contact forms.</p>



<p>Since MySQL is vulnerable to injection attacks, it’s important to keep your database up-to-date. It’s also important to protect your MySQL database with a strong password that has no connection to your website, company, or you as an individual. Here, it may help to use a password generator such as <a href="https://passwordsgenerator.net/" target="_blank" rel="noreferrer noopener">Strong Random Password Generator</a> or <a href="https://www.lastpass.com/password-generator" target="_blank" rel="noreferrer noopener">LastPass</a>:<img loading="lazy" decoding="async" width="800" height="485" class="wp-image-1805" style="width: 800px;" src="https://blog.giws.us/wp-content/uploads/2020/12/lastpass-password-generator-768x466.png.webp" alt="" srcset="https://blog.giws.us/wp-content/uploads/2020/12/lastpass-password-generator-768x466.png.webp 768w, https://blog.giws.us/wp-content/uploads/2020/12/lastpass-password-generator-768x466.png-300x182.webp 300w, https://blog.giws.us/wp-content/uploads/2020/12/lastpass-password-generator-768x466.png-360x218.webp 360w, https://blog.giws.us/wp-content/uploads/2020/12/lastpass-password-generator-768x466.png-545x331.webp 545w" sizes="(max-width: 800px) 100vw, 800px" /></p>



<p>You can also make it more difficult for hackers to identify your database by using a unique database name. GIWS customers can change their WordPress database name at any point by logging into cPanel and then accessing the <em>phpMyAdmin</em> tool.</p>



<p>In the left-hand menu, select the database that you want to rename. Then open the <em>Operation</em> tab:<img loading="lazy" decoding="async" width="800" height="461" class="wp-image-1806" style="width: 800px;" src="https://blog.giws.us/wp-content/uploads/2020/12/phpmyadmin-cpanel-dashboard-768x443.png.webp" alt="" srcset="https://blog.giws.us/wp-content/uploads/2020/12/phpmyadmin-cpanel-dashboard-768x443.png.webp 768w, https://blog.giws.us/wp-content/uploads/2020/12/phpmyadmin-cpanel-dashboard-768x443.png-300x173.webp 300w, https://blog.giws.us/wp-content/uploads/2020/12/phpmyadmin-cpanel-dashboard-768x443.png-360x208.webp 360w, https://blog.giws.us/wp-content/uploads/2020/12/phpmyadmin-cpanel-dashboard-768x443.png-545x314.webp 545w" sizes="(max-width: 800px) 100vw, 800px" /></p>



<p>Here, enter the name that you want to use and click on&nbsp;<em>Go</em>. When prompted, opt to reload your database.</p>



<h2 class="wp-block-heading" id="h-conclusion">Conclusion</h2>



<p>As one of the world’s most popular Content Management Systems, hackers are always eager to uncover vulnerabilities in WordPress themes, plugins, and core. If a malicious third party does manage to identify a security loophole, they could potentially use it to launch attacks against millions of WordPress websites – including yours.</p>



<p>By following some simple security precautions, you can immediately make your site less vulnerable to attack. It’s important to start with the fundamentals by vetting all of your themes and plugins carefully and installing an SSL certificate. Once you have a strong foundation, we recommend exploring more advanced security tactics, such as enabling 2FA and disabling the theme editor and XML-RPC when possible.</p>



<p>Your choice of hosting provider is also crucial for security. All of our GIWS packages include features, tools, and add-ons specifically designed to help keep our customers safe, including HackScan Protection, Cloudflare, and a dual firewall. Check them out today!</p>
<p>The post <a href="https://blog.giws.us/9-ways-to-keep-your-wordpress-website-secure/">9 Ways to Keep Your WordPress Website Secure</a> appeared first on <a href="https://blog.giws.us">GIWS Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.giws.us/9-ways-to-keep-your-wordpress-website-secure/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>4 of the Best React Frameworks for WordPress Development</title>
		<link>https://blog.giws.us/4-of-the-best-react-frameworks-for-wordpress-development/</link>
					<comments>https://blog.giws.us/4-of-the-best-react-frameworks-for-wordpress-development/#respond</comments>
		
		<dc:creator><![CDATA[GIWS]]></dc:creator>
		<pubDate>Tue, 29 Dec 2020 12:46:00 +0000</pubDate>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[WordPress]]></category>
		<guid isPermaLink="false">https://blog.giws.us/?p=1764</guid>

					<description><![CDATA[<p>When it comes to creating a website, there’s no shortage of frameworks that promise to help you create a beautiful front end. With so many options choosing the best framework isn’t always easy. React&#160;is one of the most popular front end frameworks. Unsurprisingly, if you want to use React in your&#160;WordPress&#160;project, you have&#160;lots&#160;of options. If...</p>
<p>The post <a href="https://blog.giws.us/4-of-the-best-react-frameworks-for-wordpress-development/">4 of the Best React Frameworks for WordPress Development</a> appeared first on <a href="https://blog.giws.us">GIWS Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>When it comes to creating a website, there’s no shortage of frameworks that promise to help you create a beautiful front end. With so many options choosing the best framework isn’t always easy.</p>



<p>React&nbsp;is one of the most popular front end frameworks. Unsurprisingly, if you want to use React in your&nbsp;WordPress&nbsp;project, you have&nbsp;<em>lots</em>&nbsp;of options. If you’re feeling overwhelmed by so much choice, it’s understandable – but there’s no need to panic.</p>



<p>In this article, we’ll introduce four React frameworks that you can use in your WordPress projects. We’ll cover the pros and cons of each framework. We’ll also look at some common scenarios where you may want to use one React framework over the other. Let’s get started!</p>



<h2 class="wp-block-heading" id="h-what-is-a-rest-api">What Is a REST API?</h2>



<p>An Application Programming Interface (API) is a set of programming instructions and standards for accessing web-based applications and tools. You can use APIs to communicate with other websites, applications, and services. This includes requesting data from third parties.</p>



<p>Many companies have released their APIs as products that third parties can use. For example, Google has released a&nbsp;<a href="https://developers.google.com/apis-explorer" target="_blank" rel="noreferrer noopener">wide range of APIs</a>&nbsp;that provide access to their services, including APIs for YouTube, Street View, and Google Play.</p>



<p>REST&nbsp;(Representational State Transfer) APIs are distinct from other APIs. To be considered RESTful, an API must follow specific guidelines. These guidelines help ensure the resulting API is lightweight, flexible, extensible, and secure. These guidelines include a separation between the client and the server, the use of cacheable data wherever possible, and a uniform User Interface (UI).</p>



<p>WordPress has its own REST API. This API was originally developed as a separate feature plugin. However, elements of the REST API were added into the core platform as early as WordPress 4.4. The API was fully integrated into WordPress 4.7, which means that every version of WordPress since then has its own fully-functional REST API.</p>



<p>WordPress’ REST API provides data in JSON format. By default, every WordPress website has JSON data available. Unless the site owner has restricted access to it, it’s easy to see your website’s JSON output – simply enter its URL in the following format:</p>



<p><em>http://example.com/wp-json/wp/v2/posts</em></p>



<p>Your browser should now display a series of JSON data related to your site’s recent posts. This data isn’t particularly human-readable, but it’s compatible with a large number of web technologies. Similarly, you can see the JSON output of all your most recent pages, by replacing the&nbsp;<em>/posts</em>&nbsp;part of the URL with&nbsp;<em>/pages.</em></p>



<h3 class="wp-block-heading" id="h-what-does-the-rest-api-mean-for-wordpress">What Does the REST API Mean for WordPress?</h3>



<p>Traditionally, WordPress generated HTML using a theme based on PHP template files. However, the introduction of the REST API removed this dependency on the PHP rendering engine. This opened up lots of opportunities for WordPress developers.</p>



<p>The REST API makes it easier for WordPress to interact with other websites and web applications. This API lets you perform Create, Read, Update, and Delete (CRUD) actions on WordPress content, including posts, pages, and even custom post types. This gives developers an easy way to push and pull data out of WordPress.</p>



<p>WordPress’ REST API can also communicate and exchange data, regardless of the language an external program is using. This has made the WordPress platform far more flexible and powerful, as you’re not confined to any specific technologies or languages.</p>



<p>The REST API makes it easier for developers to display content from an individual website within a&nbsp;multisite setup. It is also possible to display content from separate WordPress websites.</p>



<p>Today, the WordPress REST API is commonly used to separate content from the front end, paving the way for developers to use WordPress as a headless Content Management System (CMS). This is where React comes in.</p>



<h3 class="wp-block-heading" id="h-how-react-and-wordpress-can-help-you-create-a-high-performing-app">How React and WordPress Can Help You Create a High-Performing App</h3>



<p>The React framework is a JavaScript library. Developers can use this library to build UIs for Single Page Applications (SPAs) within web and mobile environments.</p>



<p>The major aim of developing React was to improve JavaScript’s UI development. Though originally launched for use with Facebook, React is now enjoying a great rate of adoption across several industries. It is also gaining popularity with the WordPress community, particularly with developers who want to set up headless WordPress.</p>



<p>With a headless setup, you can use the WordPress CMS on the back end, then build your front end using practically any development technologies you’d like. React-based frameworks can use the WordPress REST API as an interface to access your website’s data from outside the WordPress framework. This means it’s possible to create an SPA using React, then control the content using the familiar WordPress back end.</p>



<p>React can also make your projects faster by eliminating the need to re-render. Rather than re-loading each page in its entirety, an SPA loads content dynamically. This means the fundamental code of a website is loaded just once. If the state of a component changes, React will re-render the necessary components only.</p>



<p>React has a large and active developer community. Major firms such as Facebook, Airbnb, Dropbox, Netflix, and Reddit use React to build many of their applications. This comes with a lot of perks in terms of development and expert base.</p>



<p>Some of the React frameworks we’ll cover in this article are relatively new. Using cutting-edge technologies may be exciting, but it can also pose problems if you encounter technical issues. You may struggle to find an expert who has the know-how required to help resolve your problem. However, by opting for a React framework, you can request assistance from the large, and growing React community.</p>



<h3 class="wp-block-heading" id="h-what-you-should-look-for-in-a-react-framework">What You Should Look for in a React Framework</h3>



<p>When using any web technology, it’s important to choose the right framework. Every framework has its own unique set of features, strengths, and weaknesses. Some frameworks are also better suited to particular kinds of projects.</p>



<p>In this article, we’ll share four React frameworks that have plenty to offer WordPress developers. However, the right framework will vary depending on your project. With this mind, here are some things to consider, when deciding whether a particular React framework is right for you:</p>



<ul>
<li><strong>The setup process</strong>. Some frameworks are easier to setup than others. In particular, you should check whether the framework is pre-configured to work with WordPress. It’s also a good idea to verify whether the framework provides any additional tools needed to build your project.</li>



<li><strong>The learning curve</strong>. Mastering a new technology always requires time and effort, but some frameworks have a steeper learning curve than others. In particular, you should investigate whether there are any additional technologies you’ll need to learn, such as&nbsp;<a href="https://redux.js.org/" target="_blank" rel="noreferrer noopener">Redux</a>,&nbsp;<a href="https://webpack.js.org/" target="_blank" rel="noreferrer noopener">Webpack</a>,&nbsp;<a href="https://babeljs.io/" target="_blank" rel="noreferrer noopener">Babel</a>, and&nbsp;<a href="https://graphql.org/" target="_blank" rel="noreferrer noopener">GraphQL</a>.</li>



<li><strong>Compatibility or optimization</strong>. All the frameworks in this article are compatible with WordPress. However, some may require additional optimization, in order to deliver the best possible experience. Other frameworks, such as&nbsp;Frontity, are designed with WordPress firmly in mind. Frameworks that are optimized for WordPress shouldn’t require any major additional configuration.</li>



<li><strong>Flexibility or ease-of-use</strong>. Choice is a good thing, but all those extra settings can be confusing. When exploring new technologies, it’s smart to opt for a framework that’s beginner-friendly. However, it’s a good idea to consider how you might use this framework in the future. A framework should offer the advanced features and flexibility you’ll need to support your growing projects.</li>
</ul>



<p>There’s another major decision to make when choosing your framework. This is the choice between Server-Side Rendering (SSR) and Client-Side Rendering (CSR).</p>



<h3 class="wp-block-heading" id="h-client-side-rendering-or-server-side-rendering">Client Side Rendering or Server Side Rendering?</h3>



<p>There are two approaches to rendering content: client-side, and server-side. Both have their own unique strengths and weaknesses.</p>



<p>CSR is where content renders in the browser. Instead of receiving all the content from a HTML document, the browser receives a bare-bones HTML document with a JavaScript file. The rest of the content will then render inside the web browser.</p>



<p>With CSR, the initial page load is typically slower, but subsequent page loads will be faster. A CSR framework can update the UI by re-rendering only the affected DOM element. You don’t have to reload the entire UI following every call to the server. This means the CSR is well-suited to websites that provide rich user interactions, or that feature lots of dynamic content.</p>



<p>The opposite of client-side, is server-side. With SSR, the user makes a request and the server prepares an HTML package for that specific user. The server sends this data to the user’s machine, and the browser then constructs the content and displays the webpage.</p>



<p>The process of fetching data, creating the HTML package, and delivering it to the browser happens very quickly. This means the initial page load is faster, which results in a better user experience.</p>



<p>By&nbsp;reducing page load times, SSR may provide a Search Engine Optimization (SEO) boost. SSR is also good for SEO, as it doesn’t require search engine bots to render JavaScript.</p>



<p>However, with SSR the page rendering is typically slower. New content will also require full page reloads, which can have a significant impact on your website’s performance. For this reason, SSR is better suited to static websites. It also isn’t ideal for sites that feature lots of complex user interactions, or dynamic content.</p>



<h2 class="wp-block-heading" id="h-4-of-the-best-react-frameworks-for-wordpress-development">4 of the Best React Frameworks for WordPress Development</h2>



<p>There are lots of React frameworks to choose from. Every project is different, but we’ve collected four React frameworks that we believe have plenty to offer WordPress developers.</p>



<h3 class="wp-block-heading" id="h-1-frontity">1. Frontity</h3>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="768" height="405" src="https://blog.giws.us/wp-content/uploads/2023/12/frontity-react-framework-768x405-1.webp" alt="" class="wp-image-1768" srcset="https://blog.giws.us/wp-content/uploads/2023/12/frontity-react-framework-768x405-1.webp 768w, https://blog.giws.us/wp-content/uploads/2023/12/frontity-react-framework-768x405-1-300x158.webp 300w, https://blog.giws.us/wp-content/uploads/2023/12/frontity-react-framework-768x405-1-360x190.webp 360w, https://blog.giws.us/wp-content/uploads/2023/12/frontity-react-framework-768x405-1-545x287.webp 545w" sizes="(max-width: 768px) 100vw, 768px" /></figure></div>


<p><a href="https://frontity.org/" target="_blank" rel="noreferrer noopener">Frontity</a>&nbsp;is an open source framework for React. Unlike other React frameworks that are compatible with WordPress, Frontity was designed specifically for&nbsp;WordPress.org and WordPress.com. This means that Frontity is pre-configured to provide the best possible experience for WordPress users.</p>



<p>As a server-side framework, Frontity stores all your content in HTML, then responds to requests with a fully populated and well-formed HTML page that’s immediately usable. This minimizes your site’s initial load time. The HTML file is also served to search engine crawlers. This keeps search engines such as Google happy, and helps you avoid SEO penalties.</p>



<p>Even if you’re using WordPress for a headless setup, you may still want to use the meta tags generated by a third-party SEO plugin. To help preserve your SEO, the Frontity team has created a&nbsp;<a href="https://wordpress.org/plugins/rest-api-head-tags/" target="_blank" rel="noreferrer noopener">REST API – Head Tags plugin</a>. This plugin adds all the meta tags in your website’s HEAD section, to the REST API’s responses.</p>



<p>In addition, Frontity uses Serverless Pre-Rendering (SPR) to render HTML on the fly. By taking this approach, the Frontity team aims to combine the speed and reliability of static rendering with the versatility of dynamic data rendering. A&nbsp;Content Delivery Network&nbsp;(CDN) saves the HTML and serves it as static content.</p>



<p>Frontity is designed to be easy to use. This framework has its own state manager and uses Emotion for the CSS, so you don’t have to learn the complexities of technologies such as&nbsp;<a href="https://redux.js.org/" target="_blank" rel="noreferrer noopener">Redux</a>. This makes Frontity a good choice for React newcomers, or anyone who’s looking to launch a project quickly without necessarily having to master additional technologies. In fact, you can build a web application using Frontity and WordPress in&nbsp;five easy steps.</p>



<h3 class="wp-block-heading" id="h-2-nbsp-gatsby-js">2.&nbsp;<a href="https://www.gatsbyjs.com/" target="_blank" rel="noreferrer noopener">Gatsby.js</a></h3>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="768" height="448" src="https://blog.giws.us/wp-content/uploads/2023/12/gatsby-react-framework-768x448-1.webp" alt="" class="wp-image-1770" srcset="https://blog.giws.us/wp-content/uploads/2023/12/gatsby-react-framework-768x448-1.webp 768w, https://blog.giws.us/wp-content/uploads/2023/12/gatsby-react-framework-768x448-1-300x175.webp 300w, https://blog.giws.us/wp-content/uploads/2023/12/gatsby-react-framework-768x448-1-360x210.webp 360w, https://blog.giws.us/wp-content/uploads/2023/12/gatsby-react-framework-768x448-1-545x318.webp 545w" sizes="(max-width: 768px) 100vw, 768px" /></figure></div>


<p>According to a study by Critical Case, a one second increase in page load time can result in&nbsp;<a href="https://www.criticalcase.com/blog/what-is-page-load-time-and-why-it-is-important.html" target="_blank" rel="noreferrer noopener">11 percent less page views.</a>&nbsp;If you’re concerned about your site’s performance,&nbsp;<a href="https://www.gatsbyjs.com/" target="_blank" rel="noreferrer noopener">Gatsby</a>&nbsp;is a static site generator that places the focus firmly on speed.</p>



<p>Gatsby builds your project into static HTML files that are optimized for performance, and also loads only the necessary CSS, HTML and JavaScript. After your website is loaded, Gatsby will then call upon any additional resources that it requires. This results in faster page loading speeds.</p>



<p>However, Gatsby is geared towards displaying static content. While it does allow for client side code, it has a steep learning curve compared to some other solutions. If you need to display large amounts of dynamic content, Gatsby may not be the best framework for your project.</p>



<p>For newcomers, the Gatsby team provides a helpful&nbsp;<a href="https://github.com/gatsbyjs/gatsby-starter-default" target="_blank" rel="noreferrer noopener">starter default project</a>. This project contains code related to your website’s front end, including a site header and page template. It also automatically installs all the modules of code that your project will depend upon. This can save you a considerable amount of time when getting started. If you choose Gatsby as your framework, we’d recommend using the starter default project wherever possible.</p>



<p>However, if you opt for Gatsby you’ll need to trigger a build whenever you update your content. One solution is to deploy your website using the&nbsp;<a href="https://www.netlify.com/" target="_blank" rel="noreferrer noopener">Netlify platform</a>. You can use Netlify to create webhooks that will rebuild your project automatically whenever a new commit is pushed or merged to your repository’s master branch.</p>



<p>Alternatively, you can trigger a build using a WordPress plugin, such as&nbsp;<a href="https://github.com/iamtimsmith/wp-trigger-netlify-build" target="_blank" rel="noreferrer noopener">WP Trigger Netlify Build</a>. However, this rebuild process can add considerable complexity to your WordPress projects.</p>



<h3 class="wp-block-heading" id="h-3-nbsp-next-js">3.&nbsp;<a href="https://nextjs.org/" target="_blank" rel="noreferrer noopener">Next.js</a></h3>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="768" height="355" src="https://blog.giws.us/wp-content/uploads/2023/12/next-react-framework-768x355-1.webp" alt="" class="wp-image-1771" srcset="https://blog.giws.us/wp-content/uploads/2023/12/next-react-framework-768x355-1.webp 768w, https://blog.giws.us/wp-content/uploads/2023/12/next-react-framework-768x355-1-300x139.webp 300w, https://blog.giws.us/wp-content/uploads/2023/12/next-react-framework-768x355-1-360x166.webp 360w, https://blog.giws.us/wp-content/uploads/2023/12/next-react-framework-768x355-1-545x252.webp 545w" sizes="(max-width: 768px) 100vw, 768px" /></figure></div>


<p><a href="https://nextjs.org/" target="_blank" rel="noreferrer noopener">Next.js</a>&nbsp;is a minimalistic React framework. This framework renders applications on the client-side, but Next.js also supports SSR. This can help preserve your SEO, while also improving your project’s performance. Next.js can deliver an additional performance boost, thanks to its automatic server rendering and code splitting.</p>



<p>However, Next.js is an opinionated framework. This means the framework is designed to be easy to use – as long as you follow the path laid out for you. Deviate from this path, and an opinionated framework can suddenly become much less user-friendly.</p>



<p>This means Next.js isn’t the most flexible solution. For example, you may struggle to use a different router with your Next.js setup.</p>



<p>Before choosing Next.js as your framework, it’s a smart idea to consider how you might develop your project in the future. You can then read through the&nbsp;<a href="https://nextjs.org/docs" target="_blank" rel="noreferrer noopener">Next.js documentation</a>, to decide whether this framework is compatible with your project’s roadmap.</p>



<p>If you do decide to use Next.js, you can install all the necessary software and start the development server from the command line. You’ll find detailed, step-by-step instructions, over at the&nbsp;<a href="https://nextjs.org/docs" target="_blank" rel="noreferrer noopener">official Next.js documentation</a>.</p>



<h3 class="wp-block-heading" id="h-4-nbsp-create-react-app-cra">4.&nbsp;<a href="https://create-react-app.dev/" target="_blank" rel="noreferrer noopener">Create React App (CRA)</a></h3>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="768" height="324" src="https://blog.giws.us/wp-content/uploads/2023/12/create-react-app-768x324-1.webp" alt="" class="wp-image-1772" srcset="https://blog.giws.us/wp-content/uploads/2023/12/create-react-app-768x324-1.webp 768w, https://blog.giws.us/wp-content/uploads/2023/12/create-react-app-768x324-1-300x127.webp 300w, https://blog.giws.us/wp-content/uploads/2023/12/create-react-app-768x324-1-360x152.webp 360w, https://blog.giws.us/wp-content/uploads/2023/12/create-react-app-768x324-1-545x230.webp 545w" sizes="(max-width: 768px) 100vw, 768px" /></figure></div>


<p>The&nbsp;<a href="https://create-react-app.dev/" target="_blank" rel="noreferrer noopener">Create React App</a>&nbsp;(CRA) is designed to get your React project up and running as quickly as possible. This tool offers a modern build setup with zero configuration. You just need to run a single command, and CRA will set up all the tools you need to start developing.</p>



<p>When you create a project with Create React App, it installs the latest version of React and React-DOM. It also installs the latest version of&nbsp;<em>react-scripts</em>, which is a development dependency that manages the other dependencies involved in starting, testing, and building your application.</p>



<p>CRA generates only the files needed to build your React project. You won’t have access to configuration files such as Webpack, Babel, and ESLint. This is great for anyone who wants to create a project without having to master additional technologies. Since CRA handles much of the configuration and setup for you, you’re free to concentrate on what really matters – building your project.</p>



<p>However, at some point you may need to perform more complex tasks that require access to these configuration files. Although CRA doesn’t provide these files by default, it does have an&nbsp;<a href="https://create-react-app.dev/docs/available-scripts/#npm-run-eject" target="_blank" rel="noreferrer noopener"><em>eject</em>&nbsp;command</a>. This copies all the configuration files and transitive dependencies into your project. However, this is a one-way operation that adds a significant amount of complexity to your project.</p>



<p>CRA projects are rendered on the client-side only. This means CRA isn’t suitable for developing highly-interactive websites, or projects that feature dynamic content. There’s also no code splitting, which is bad news for performance.</p>



<p>CRA is designed with ease-of-use in mind. If you do choose CRA as your React framework, you can&nbsp;<a href="https://create-react-app.dev/docs/getting-started/" target="_blank" rel="noreferrer noopener">create a new CRA project</a>&nbsp;using only a handful of commands.</p>



<h2 class="wp-block-heading" id="h-how-to-host-your-completed-react-project">How to Host Your Completed React Project</h2>



<p>Once you’re happy with your web application, you’ll want to share it with the world. Your options may vary depending on which React framework you chose to use in your project.</p>



<p>To provide users with the widest possible choice, the Frontity team ensures that their server code is small enough to work with serverless technologies. This means you can deploy your Frontity project to any&nbsp;Node.js server&nbsp;or serverless provider, including&nbsp;<a href="https://vercel.com/docs" target="_blank" rel="noreferrer noopener">Vercel</a>&nbsp;and AWS Lambda. Alternatively, since you’re using WordPress as the back end you may want to opt for your favorite WordPress hosting solution.</p>



<h2 class="wp-block-heading" id="h-conclusion">Conclusion</h2>



<p><a href="https://reactjs.org/" target="_blank" rel="noreferrer noopener">React</a>&nbsp;is a hugely popular front end framework. However, with popularity comes lots of options – and choosing the best React framework for your project can feel overwhelming.</p>



<p>If you’re not sure where to start looking for a React framework, then check out any of the four choices we recommended earlier:</p>



<ul>
<li><a href="https://frontity.org/" target="_blank" rel="noreferrer noopener"><strong>Frontity</strong></a>. An open source, server-side framework that’s optimized for WordPress.</li>



<li><a href="https://www.gatsbyjs.com/" target="_blank" rel="noreferrer noopener"><strong>Gatsby</strong></a>. A static site generator that prioritizes performance without sacrificing Search Engine Optimization (SEO).</li>



<li><a href="https://nextjs.org/" target="_blank" rel="noreferrer noopener"><strong>Next.js</strong></a>. A performance-focused, opinionated framework that transparently handles SSR.</li>



<li><strong><a href="https://create-react-app.dev/" target="_blank" rel="noreferrer noopener">Create React App</a>&nbsp;(CRA)</strong>. A zero-configuration framework for when you need to create a React project, fast.</li>
</ul>



<p>Technologies such as React can significantly boost your project’s performance, but why stop there? By opting for a hosting provider that prioritizes performance, you can supercharge your React project. If you’re lucky, then your hosting plan may even provide <a href="https://www.giws.us/wp-hosting">Web Hosting Services</a> that are 20X faster than competing WordPress hosting providers.</p>
<p>The post <a href="https://blog.giws.us/4-of-the-best-react-frameworks-for-wordpress-development/">4 of the Best React Frameworks for WordPress Development</a> appeared first on <a href="https://blog.giws.us">GIWS Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.giws.us/4-of-the-best-react-frameworks-for-wordpress-development/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
