Coronavirus: for the millions in isolation, WordPress sites are more important than ever.

Please share below how your WordPress site has been hit, or provides an important service at this time.

We know that many in the WordPress community will be badly affected by the global pandemic which is rapidly spreading across the world.  Even if it doesn’t affect your health, it may be damaging your online businesses and livelihood causing you a lot of uncertainty and concern.

For others, at a time when some countries’ physical stores are shutting, people are ordering necessities online more than ever.  Amazon this week is hiring 10 thousand more staff to help with demand in their warehouses, and has blocked taking on any more non-essential stock.  And if this is not happening yet in your country, then it may well be only days or weeks away.

Likewise, many of your WordPress sites will become more important than ever.  Whether you run an online store for hygiene products, an online pharmacy or grocery store, a health advice blog, or home schooling resources for kids out of school then they’re crucial.  Or if you run an online community so people can feel together even when they’re alone or simply providing entertainment to help people’s morale at a time when culture, theatres and concert halls are shut – you’re doing a great job, so keep it up!

So this is just to say we’re continuing business as usual here at Updraft.  The last thing you want to worry about at this time is your WordPress site’s basic functioning.  We’re here 6 days a week around the clock to provide support to those who need it for backing up and restoring.

Likewise, there are reports of the internet becoming slower as more people work from home on networks which are not designed for the level of traffic they’re getting.  So we’re also working hard on all your support requests at Updraft’s WP-Optimize Cache to make sure you make significant improvements to your website speed to help your customers’ experience.

We’re a team of 15 here at Updraft, distributed across 9 different countries and 4 continents.  As of this week we’re all working from home.  We expect that even if things get much worse over the coming weeks that there’ll always be knowledgeable team members on hand to help you with the plugin problems you have.

Please share below how your WordPress sites are affected, whether you’ve been badly hit or whether your site is providing an important service for those who need it right now.  Let us know!

The post Coronavirus: for the millions in isolation, WordPress sites are more important than ever. appeared first on UpdraftPlus. UpdraftPlus – Backup, restore and migration plugin for WordPress.

How to Backup a WordPress Site: Step by Step Guide

No matter the size of your WordPress website, finding a way to keep it safe from issues such as updates gone wrong, hacking, user error and crashes should be of the utmost importance. If you’ve not set-up regular backups of your site yet, now’s the time to get it done, and it couldn’t be easier with the world’s most trusted WordPress backup plugin, UpdraftPlus.

In this article, we’re going to show you how to backup a WordPress site with an easy-to-use, free backup plugin. Follow our step-by-step tutorial below to get started.

UpdraftPlus allows you to backup your WordPress website and restore it with a single click. It also allows you to:

  • Backup all of your WordPress files, databases, plugins and themes
  • Set backup schedules every 4, 8 or 12 hours, daily, weekly, fortnightly or monthly
  • Restore backups directly from your WordPress control panel
  • Store your backups remotely on Google Drive, Dropbox, OneDrive and more

In this article, we’ll show you how to set-up and use UpdraftPlus to backup your WordPress website with ease so you can get on with more important stuff.

What does ‘backup’ mean?

Put simply, a ‘backup’ makes a copy of the files or data on your site in case the originals are lost or damaged.

A backup of your WordPress website makes a copy of your entire database. It will backup every post, comment and link you have on your site, as well as your plugins, themes and uploads. 

Why you need to backup your WordPress site

Backing up your website regularly is an essential part of managing a WordPress website. Your site contains every post, comment and link you’ve ever created, if something were to go wrong, all of that could be lost in an instant. 

Without performing vital backups, your site could be at risk from any of the following problems:

Updates gone wrong

WordPress websites are notorious for needing regular updates to plugin files, theme and WordPress itself.

When performing these updates, there’s a small chance your site could be negatively affected by the changes. You could lose vital functionality, your site’s look and feel could change, or the new update could simply be incompatible. 

These updates need to be carried out to ensure the safety of your website and generally should be done on a testing site first. To protect your site from updates gone wrong, you should always carry out regular backups and automatic backups before each plugin update.

Your site is vulnerable to hacking

Due to the sheer number of people using WordPress as their content management system (it powers over 35% of all websites across the globe), the platform is the frequent target of hackers and spammers. 

You may feel like your site is safe and will not be a target for hackers because as it doesn’t contain sensitive information, but hacks can happen for any of the following reasons:

  • To spread malware
  • Using your site to attack another site
  • Spamming the internet with inappropriate links
  • Just for fun

In order to work, hackers have to find flaws in a system and exploit them to get around security controls. So if you have a weak passwords, don’t update plugins regularly, have weak security on your site, your site could be at risk.

By backing up your site regularly, you can restore your site to its former pre-broken state before the hack took place. 

Your hosting company may have server outages

No hosting company is perfect. In fact, you may have experienced your website ‘going down’ from time to time. This downtime (or server outage) can happen for a variety of reasons, including viruses and cyber hacking, traffic overload, hardware failure and more.

While you can’t control your hosting company’s server, you can protect your site if something happens. Many times, when server outages happen, your hosting company will be able to recover the lost files. 

However, on some occasions, they will have to revert back to a version of your site that’s a few days old. This could mean you’d lose vital changes to your site such as sales records and new member registrations. The only way to recover these would be through your personal UpdraftPlus site backup.

How to backup your WordPress site with UpdraftPlus

The easiest and quickest way to backup your website is by using a WordPress backup plugin. UpdraftPlus is the world’s most trusted WordPress backup and restore plugin and is simple and easy to set-up.

How to install UpdraftPlus

Installing UpdraftPlus takes just a minute or two and is as simple as adding any other plugin. To install, follow these steps:

  1. In your WordPress dashboard go to Plugins > Add New.

  1. Type UpdraftPlus into the search bar.

  1. Find the UpdraftPlus WordPress Backup Plugin and press Install Now and then Activate.

How to use UpdraftPlus

Once installed, UpdraftPlus makes setting up your first WordPress backup easy. Simply follow these steps:

  1. Select Settings > UpdraftPlus Backups in your WordPress menu. This will open your UpdraftPlus settings page.
  1. Select the Settings tab at the top.

Here you can schedule how often UpdraftPlus creates a new backup. You can pick whichever schedule suits you and your site. For example, if you regularly update your site with new pages and posts, then a more frequent backup may be required. 

You can also adjust how many of these backups should be stored at one time. Any new backups will then override the old ones.

  1. Select where you would like your backups to be stored.

Scroll down the page and you can choose where you’d like your files to be stored. UpdraftPlus can integrate with numerous remote storage options, so pick the one that suits you best. 

  1. Once selected, each storage option will have its own set of instructions. Simply follow these and press the blue Save Changes button at the bottom of the page.

If you’d like to backup to more than one location or want to customise your backups further, you can do so by upgrading to UpdraftPremium. Or purchase the add-on, Multiple Storage Destinations.

Now that you’ve set up your storage location and how often you’d like to backup your site, UpdraftPlus will automatically carry out your first site backup without you having to do a thing.

How to restore your WordPress site from a backup

Now that your site is regularly backed up, you’re safe in the knowledge that you can recover and restore it if something goes wrong. So when the worst does happen, how do you restore your site with UpdraftPlus?

  1. Go to Settings > UpdraftPlus Backups in your WordPress menu. This again will open your UpdraftPlus settings page
  1. Scroll down the page until you reach the Existing Backups section

  1. Find the backup you want to restore and press the blue Restore button
  1. You’ll then be presented with a popup which will ask you which elements of your database you want to restore. Select the ones that apply and press Restore

When your restore is complete, a message will pop up telling you the restore has been successful.

Roundup 

If you’re looking to keep your site safe from hacking, updates gone wrong and server crashes, then using a WordPress backup plugin is a must. As the world’s most trusted WordPress backup and restore plugin, UpdraftPlus allows you to do just this for free.

By investing in UpdraftPlus Premium, you also get the following added features:

  • The ability to clone your site so you can carry out updates in a testing environment
  • Schedule backups at specific times of the day to take advantage of when fewer people are on your site
  • Multiple storage destinations for extra safety
  • Detailed reports of your backups
  • Password protection for your UpdraftPlus backups to keep other administrators out
  • Automatic backups before updating WordPress core, themes and plugins

Get the best security for your website with the full UpdraftPlus package 

 

The post How to Backup a WordPress Site: Step by Step Guide appeared first on UpdraftPlus. UpdraftPlus – Backup, restore and migration plugin for WordPress.

WP-Optimize to release new Minify feature

We are happy to share with you that WP-Optimize will soon be adding an all new feature to our popular WordPress optimization plugin. In an upcoming release, users will soon be able to use an all-new Minify feature that will help make their websites run even faster.

How does minification work?

The minify process works by removing all the unnecessary characters from a piece of code, such as line breaks, white spaces etc. The minified code still works exactly the same as it did before the minification process, but the files now take up less space due to the removal of unnecessary information. This process has proved to have been very popular when being used on scripts, stylesheets and and other components on your website which can benefit from faster loading times. The Minify feature will further reduce HTTP requests to help speed up your site. This works by merging CSS and Javascript files into a group of files and attempting to use as few of these files as possible.

Our new Minify feature will be simple to use and intuitive. Most users just need to set it to default settings and let it do it’s thing. This new feature will be launched soon, so be sure to keep an eye out for it in an upcoming release of WP-Optimize

 

The post WP-Optimize to release new Minify feature appeared first on UpdraftPlus. UpdraftPlus – Backup, restore and migration plugin for WordPress.

How to integrate Slack reminder notification with WordPress

With so many different demands vying for your attention in modern life, it can be easy to lose track of the many important tasks you are supposed to carry out and hopefully be reminded of. After all, there is only so much a desk full of scribbled post-it notes can do to ensure you are reminded about something important, so there is a good chance you have forgotten about something recently. However, there is a way to get Slack to remind you of all these tasks as and when you require, and the good news is we are going to show you how to set it up!   

There can be a large number of things you may need Slack to remind you of. The who, what, when and why of a reminder is hugely important and can cover anything from setting a reminder of a meeting with your bank manager, submitting your travelling expenses on time or a reminder for a deadline of an important project coming up. The reminder example we will be using in this blog is setting up a “blog post Slack reminder” message. Though feel free to substitute this for any kind of reminder that is more appropriate to you and your situation.     

Given the importance of SEO, most people who run websites are aware of vital regularly updating and posting new blogs is. While the tasks needed to succeed at SEO are a closely guarded secret, we do know that regularly posting a new blog is a great way to move up the Google SEO ranking. As such, website owners may be interested in an app for Slack that will send a notification to your Slack channel if you have not posted a new article on your blog within the last 7 days. These reminders will hopefully help you manage your articles and blogs better and also help to remind you to publish them on time.

In this article, we show you how you can integrate Slack notification with your WordPress blog using an app you can create yourself.

Getting started – Create a Slack application

To get started, you first need to create an application within your Slack account. To do this, go to the Slack API page and hit the ‘Create New App’ button.

This will create a popup window. Complete your details requested and you will be redirected to a ”settings page”. In this settings page, click on the ‘Incoming Webhooks’ from the left section. Toggle this option to “On”.

Scroll down to the bottom and click on the ‘Request to Add New Webhook’ button. If you are not an Admin then you need to get admin approval to access this option.

Once the app is approved, click on the ‘Install APP’ from the left side menu. And then press the ‘Install App to Workspace’ button.

Choose the desired channel on the next page and click on the ‘Allow’ button. You will then be redirected to a page where you will get your Webhook URL. Copy this URL as you will require it shortly.

Send notification on Slack channel from WordPress

You are now ready to proceed as you have the Webhook URL and have also configured the Slack channel, where the notification will be sent. Next, you need to write a code that sends a POST request along with a message to the webhook URL. This webhook URL will automatically post the received message to the chosen Slack channel. 

So, let’s do some coding.

Calculate days when last article is posted

When sending a notification to the Slack channel, you first need to calculate days from when the last article was posted. The below code will go inside your active themes:functions.php file.

<?php

function get_daycount_of_last_blog_posted(){
   $args=array(
        'post_type' => 'post',
        'post_status' => 'publish',
        'posts_per_page' => 1,       
    );  

    $datediff = 0;
    $blog_posts = new WP_Query( $args );
    if ( $blog_posts->have_posts() ) :
 
 while ( $blog_posts->have_posts() ) : $blog_posts->the_post();

   $datediff = time() - strtotime(get_the_date());
      endwhile;
        wp_reset_postdata();
    endif;

    if ($datediff) return round($datediff / (60 * 60 * 24));

   return $datediff;
}

This code and method will get the last added post from the WordPress database and calculate the days between when you requested it and when the last article was posted.

Send POST request to Webhook

WordPress provides a function wp_remote_post() that performs an HTTP request and receives the response. Using this method we will send our custom message to the webhook.

Create a file notification.php in the root directory of your WordPress project and add the below code to it.

<?php 
require_once('wp-load.php');
$slack_webhook_url = 'YOUR_WEBHOOK_URL';
$last_blog_day_count = get_daycount_of_last_blog_posted();
if($last_blog_day_count > 5) {

 $msg = 'Hey team, our app found that we have not added new article on UpdraftPlus
 for more than 5 days. Please look into it.';

    // Prepare the data / payload to be posted to Slack
  $data = array(
        'payload'   => json_encode( array(
                "text" =>  $msg,
            )
        )
    );

    // Post our data via the slack webhook endpoint using wp_remote_post
  wp_remote_post( $slack_webhook_url, array(
            'method' => 'POST',
            'body' => $data,
        )
    );
}

This code will post a message to Webhook URL if a new article is not added for more than 5 days on your blog. As a result, you get a notification on your selected Slack channel.

Set cron on your server

Our goal is to create an automated system which will notify the team about this task on a specific Slack channel. Because of this, we created a PHP file in the root folder of the WordPress project. By setting cron with this file on your server, you can set up your Slack app to run automatically.

Setting cron on the server may differ on the basis of your hosting provider. For the sake of this tutorial, we will give an example on how to set cron on Media Temple web hosting’s CPanel.

Login to your CPanel. Select ‘Cron Jobs’ under the “Advanced” section.

On the next page, choose the ‘Once Per Day(0 0 * * *)’ option from the ‘Common Settings’ dropdown. This means the cron will execute the script once a day.

Finally, in the Command field add the below statement by adjusting your notification.php file path.

<pre>/usr/local/bin/php /home/xyz/public_html/notification.php</pre>

That’s it! 

By following this tutorial, you are now able to create your own Slack app for you and your team. This will certainly help everyone keep up to date with scheduled blogs and ensure you do not miss out on any important dates. 

The post How to integrate Slack reminder notification with WordPress appeared first on UpdraftPlus. UpdraftPlus – Backup, restore and migration plugin for WordPress.

Easy Updates Manager 9.0.0 and 9.0.1 released

We are pleased to announce an updated version of Easy Updates Manager with the releases of 9.0.0 and 9.0.1. The new updates includes a range of new features, tweaks and fixes.

As part of the update you will see that we have developed the main admin user interface. This gives the user a much more clear and easier way to use and make the most of all the features of Easy Updates Manager. The update also lets Premium users check for unmaintained plugins, so there will be no nasty surprises when a plugin that you rely on stops updating and potentially becomes unsecured.

We recommend the update for all Easy Updates Manager users.

9.0.1

  • FIX: (Premium feature) UpdraftPlus will only take one backup during the auto-update process.
  • FIX: Update translations after an auto-update has completed.

9.0.0

  • FEATURE: Admin user interface has been cleaned up, providing more straightforward options.
  • FEATURE: (Premium) Check for unmaintained plugins.
  • TWEAK: Constants can now be used to disable the outdated browser warning (EUM_ENABLE_BROWSER_NAG), the WordPress version in the footer (EUM_ENABLE_WORDPRESS_FOOTER_VERSION), and the ratings prompt on the General screen (EUM_ENABLE_RATINGS_NAG).
  • FIX: Prevent Force Updates from deactivating plugins.
  • FIX: (Premium feature) UpdraftPlus will now take a backup during an auto-update
  • FIX: (Premium feature) Fix cron schedules so they are run at the correct time.

Easy Updates Manager 9.0.0 and 9.0.1 released

We are pleased to announce an updated version of Easy Updates Manager with the releases of 9.0.0 and 9.0.1. The new updates includes a range of new features, tweaks and fixes.

As part of the update you will see that we have developed the main admin user interface. This gives the user a much more clear and easier way to use and make the most of all the features of Easy Updates Manager. The update also lets Premium users check for unmaintained plugins, so there will be no nasty surprises when a plugin that you rely on stops updating and potentially becomes unsecured.

We recommend the update for all Easy Updates Manager users.

9.0.1

  • FIX: (Premium feature) UpdraftPlus will only take one backup during the auto-update process.
  • FIX: Update translations after an auto-update has completed.

9.0.0

  • FEATURE: Admin user interface has been cleaned up, providing more straightforward options.
  • FEATURE: (Premium) Check for unmaintained plugins.
  • TWEAK: Constants can now be used to disable the outdated browser warning (EUM_ENABLE_BROWSER_NAG), the WordPress version in the footer (EUM_ENABLE_WORDPRESS_FOOTER_VERSION), and the ratings prompt on the General screen (EUM_ENABLE_RATINGS_NAG).
  • FIX: Prevent Force Updates from deactivating plugins.
  • FIX: (Premium feature) UpdraftPlus will now take a backup during an auto-update
  • FIX: (Premium feature) Fix cron schedules so they are run at the correct time.

The post Easy Updates Manager 9.0.0 and 9.0.1 released appeared first on UpdraftPlus. UpdraftPlus – Backup, restore and migration plugin for WordPress.

Easy Updates Manager 9.0.0 an 9.0.1 released

We are pleased to announce an updated version of Easy Updates Manager with the releases of 9.0.0 and 9.0.1. The new updates includes a range of new features, tweaks and fixes.

As part of the update you will see that we have developed the main admin user interface. This gives the user a much more clear and easier way to use and make the most of all the features of Easy Updates Manager. The update also lets Premium users check for unmaintained plugins, so there will be no nasty surprises when a plugin that you rely on stops updating and potentially becomes unsecured.

We recommend the update for all Easy Updates Manager users.

9.0.1

  • FIX: (Premium feature) UpdraftPlus will only take one backup during the auto-update process.
  • FIX: Update translations after an auto-update has completed.

9.0.0

  • FEATURE: Admin user interface has been cleaned up, providing more straightforward options.
  • FEATURE: (Premium) Check for unmaintained plugins.
  • TWEAK: Constants can now be used to disable the outdated browser warning (EUM_ENABLE_BROWSER_NAG), the WordPress version in the footer (EUM_ENABLE_WORDPRESS_FOOTER_VERSION), and the ratings prompt on the General screen (EUM_ENABLE_RATINGS_NAG).
  • FIX: Prevent Force Updates from deactivating plugins.
  • FIX: (Premium feature) UpdraftPlus will now take a backup during an auto-update
  • FIX: (Premium feature) Fix cron schedules so they are run at the correct time.

The post Easy Updates Manager 9.0.0 an 9.0.1 released appeared first on UpdraftPlus. UpdraftPlus – Backup, restore and migration plugin for WordPress.

UpdraftPlus CCPA privacy notice

On January 1st 2020, the California Consumer Privacy Act (CCPA) introduced new data privacy rights for California residents – forcing companies that conduct business in the state of California to implement structural changes to their privacy programs. The new law is a response to the increasing role personal data plays in business practices and the personal privacy implications surrounding the collection, use, and protection of personal information.

Though UpdraftPlus may not necessarily meet the criteria necessary in order to comply with the CCPA law (1. Have $25 million or more in annual sales – 2. Buys, sells, or shares information on 50,000 or more individuals, households, or devices – 3. Derives more than half of our annual revenue from selling personal information), we have made every effort to meet and achieve CCPA compliance for the privacy rights of our California based customers. As such, we are providing this CCPA-specific privacy notice to supplement the information and disclosures already contained in our Data Protection and Privacy Centre. This notice applies only to individuals residing in California with an UpdraftPlus account from whom we collect personal information.

What is the CCPA?

The CCPA allows any California consumer to demand to see all the information a company has saved on them, as well as a full list of all the third parties that data is shared with. In addition, the California law allows consumers to sue companies if the privacy guidelines are violated, even if there is no breach.

Much like the GDPR law that was enacted in May 2018, many of the same rules on the use of customer data are represented in the CCPA. However the CCPA does takes a broader view than the GDPR of what constitutes private data.

How does CCPA differ from GDPR?

GDPR applies to the processing of all personal data, regardless of what that data is intended for or how it will be processed.

The CCPA is more specific regarding what kinds of data are protected and under what circumstances. While GDPR has strict user “opt-in” consent options before companies can access any of your data, CCPA only requires companies to supply the option to “opt-out” when user information is going to be actively sold or shared.

The CCPA does not provide the same protection to a wider range of user data types that the GDPR does. These include:

  • Data that is already legally available to the public
  • Medical information that’s protected under California’s Confidentiality of Medical Information Act (CMIA) or the federal Health Insurance Portability and Accountability Act (HIPPA)
  • Personal information covered by California’s Driver’s Privacy Protection Act

And other similar data sets.

UpdraftPlus does not sell personal information

The following categories of personal information have been defined by the CCPA. This information may have been collected and/or disclosed for a business purpose by ourselves in the last twelve months. The examples of the personal information provided in each category are taken from the CCPA and are included so you can better understand the specific information contained within a category. More information about the specific information UpdraftPlus gathers and how that information is used and processed can be found here.

 

Category We Collect We Sell
A. Identifiers Yes                                No                               
Examples: Name, alias, postal address, unique personal identifier, online identifier, internet protocol address, email address, account name, social security number, driver’s license number, passport number, or other similar identifiers.                                                              
B. Categories of personal information in Cal. Civ. Code 1798.80(e) Yes                                No                               
Examples: Name, signature, social security number, physical characteristics or description, address, telephone number, passport number, driver’s license or state identification card number, insurance policy number, education, employment, employment history, bank account number, credit card number, debit card number, or any other financial information, medical information, or health insurance information.                                                              
C. Characteristics of protected classifications under California or Federal law No                                N/A                               
Examples: Race or color, ancestry or national origin, religion or creed, age (over 40), mental or physical disability, sex (including gender and pregnancy, childbirth, breastfeeding or related medical conditions), sexual orientation, gender identity or expression, medical condition, genetic information, marital status, military and veteran status.                                                              
D. Commercial information Yes                                No                               
Examples: Records of personal property, products or services purchased, obtained, or considered, or other purchasing or consuming histories or tendencies.                                                              
E. Biometric information No                                N/A                               
Examples: Physiological, biological, or behavioral characteristics, including DNA, that can be used, singly or in combination with each other or with other identifying data, to establish individual identity, such as imagery of the iris, retina, fingerprint, face, hand, palm, vein patterns, and voice recordings, from which an identifier template, such as a faceprint, a minutiae template, or a voiceprint, can be extracted, and keystroke patterns or rhythms, gait patterns or rhythms, and sleep, health, or exercise data that contain identifying information.                                                              
F. Internet or other electronic network activity information Yes                                No                               
Examples: Browsing history, search history, and information regarding a consumer’s interaction with an internet website, application or advertisement.                                                              
G. Geolocation data Yes                                No
Example: Precise physical location.                                                              
H. Sensory information No                                N/A                               
Examples: Audio, electronic, visual, thermal, olfactory, or similar information.                                                              
I. Professional or employment-related information No                                N/A
Examples: Job application or resume information, past and current job history, and job performance information.                                                              
J. Non-Public education information (as defined in 20 U.S.C. 1232g; 34 C.F.R. Part 99) No                                N/A                               
Examples: Records that are directly related to a student maintained by an educational agency or institution or by a party acting for the agency or institution.                                                              
K. Inferences drawn from personal information No                                N/A
Examples: Consumer profiles reflecting a consumer’s preferences, characteristics, psychological trends, preferences, predispositions, behavior, attitudes, intelligence, abilities, and aptitudes.                                                              


Use of personal information

As the new CCPA has now come into force we wanted to clarify that UpdraftPlus meets the criteria necessary to be in accordance with the specific CCPA business and commercial purposes, as detailed below:

  1. Auditing related to a current interaction with you and concurrent transactions, including, but not limited to auditing compliance with this specification and other standards.
  2. Detecting security incidents, protecting against malicious, deceptive, fraudulent, or illegal activity, and prosecuting those responsible for that activity.
  3. Debugging to identify and repair errors that impair existing intended functionality.
  4. Short-term, transient use.
  5. Contracting with service providers to perform services on our behalf, including maintaining or servicing accounts, providing customer service, processing or fulfilling orders and transactions, verifying customer information, processing payments, providing advertising or marketing services, providing analytic services, or providing similar services on behalf of the business or service provider.
  6. Undertaking internal research for technological development and demonstration.
  7. Undertaking activities to verify or maintain the quality or safety of our services, and to improve, upgrade, or enhance our services.
  8. Otherwise enabling or effecting, directly or indirectly, a commercial transaction.
  9. For other purposes for which we provide specific notice at the time the information is collected.

UpdraftPlus’ collection and disclosure of personal information

In the last year UpdraftPlus have collected personal information from general sources including you, your use of our services, your devices, our affiliates, our vendors, and our service providers. More specific information about the personal information we collect is laid out in this in our GDPR and  Data Protection and Privacy Centre.

Your California privacy rights

If you are a California resident, the CCPA allows you to exercise the following rights. 

Right to know and access. You may submit a verifiable request for information regarding the: (1) categories of personal information collected or disclosed by us; (2) purposes for which categories of personal information are collected by us; (3) categories of sources from which we collect personal information; and (4) specific pieces of personal information we have collected about you during the past twelve months.

Right to Delete. Subject to certain exceptions, you have the option to delete personal information about you that we have collected from you.

Verification. Requests for access to or deletion of personal information are subject to our ability to reasonably verify your identity in light of the information requested and pursuant to relevant CCPA requirements, limitations, and regulations.

Right to Equal Service and Price. You have the right not to receive discriminatory treatment for the exercise of your CCPA privacy rights, subject to certain limitations.

Shine the Light. We do not rent, sell, or share your personal information with non affiliated companies for their direct marketing purposes, unless we have your permission.

Submit Requests. To exercise your rights under the CCPA, you can deactivate and purge your account (similar to the GDPR “right to erasure” – “right to be forgotten”) by sending us a customer support request under “This is a GDPR/CCPA-related query” in the “What kind of support request is this?” option. 

If you have any further questions or queries, please leave a comment below and we will get back to you as soon as possible.

The post UpdraftPlus CCPA privacy notice appeared first on UpdraftPlus. UpdraftPlus – Backup, restore and migration plugin for WordPress.

How to localize and translate a WordPress plugin – an in depth guide for plugin developers

When developing a plugin, it’s always good idea to make it translation ready as it could additionally reach audiences who do not use English as their first language. If you were wondering how important a translation option is, you can check the repository and see that every single popular plugin is available for language localization. You will find this option is available with UpdraftPlus, MetaSlider, WP-Optimize, Contact Form 7 and WooCommerce, as well as many more. These are some of the most popular plugins available and are coded in a way that allows anyone to translate them easily into their native language.

The purpose of this blog is to demonstrate to our readers how they can code a plugin so that it will be localized and translated into any supported WordPress language. For example, if we wanted to translate a plugin into French, the following steps will allow plugin translation and also make it ready for all supported WordPress languages.

Getting Started

When creating a plugin, we should make sure that we load the plugin text domain. WordPress provides this function:

load_plugin_textdomain()

This code will load the plugin’s translated strings. It may seem a little confusing, but keep reading and we’ll explain how it works shortly.

First, let’s take a look at how to add this function to our plugin code. In your plugin folder, create a directory called ‘languages’. Next, add the below code to your plugin main file.

* Load plugin textdomain.
*/
function plugin_load_textdomain() {
load_plugin_textdomain( 'udp', false, basename( dirname( __FILE__ ) ) . '/languages/' );
}
add_action( 'init', 'plugin_load_textdomain' );

In the above code, we keep the first parameter (domain) as ‘udp’. We should keep this domain name as per our name of the plugin. The second parameter defaults to false. The third parameter is the path of our ‘languages’ directory. This code keeps our translation files ready on the WordPress initialization.

Use of __() and _e() Methods

As we are aiming to make our plugin available in all languages, we should wrap all our plugin text inside either:

__() or _e() functions.

It is very easy to use these methods. Both methods work exactly the same but there is a rule for using both.

In our plugin code, we normally have two types of text. The first is wrapped in HTML directly and the second is displayed using PHP echo function. Below are examples of both types:

Type 1

<h2>My Plugin Title</h2>

Type 2

<?php echo 'My Plugin Settings'; ?>

The general rule is that if you are printing text using PHP echo then you should wrap text in the following code:

<code>__()</code>

If it is in HTML then use the code: <code>_e()</code>.

The above code should be written in the following way:

<h2><?php _e('My Plugin Title', 'udp'); ?></h2>

and

<?php echo __('My Plugin Settings', 'udp'); ?>

As can be seen in the above examples, the second parameter was written as ‘udp’, which is our plugin text domain. By using this domain, it will allow us to later translate our text into any language. This is how other plugins make their plugins translation ready.

If you wish, you can check our plugin:

UpdraftPlus

If you search for the text domain ‘updraftplus’, you will see how our plugin’s text is wrapped inside __() and _e() functions.

Create a Sample Plugin

The next stage is to create a sample plugin with the some text so we can test our translations. First, create an ‘udp’ folder in your plugin directory. Inside this folder create the file: udp.php and the folder languages. Next, add the below code to the plugin file.

udp.php

<?php
/*
Plugin Name: UDP
Description: This is a sample plugin to test for plugin text domain
Author: Editorial Staff
Version: 1.0
License: GPLv3 or later
Text Domain: udp
Domain Path: /languages
*/

if (!defined('ABSPATH')) die('No direct access allowed');/**
* Load plugin textdomain.
*/
function udp_load_textdomain() {
load_plugin_textdomain( 'udp', false, basename( dirname( __FILE__ ) ) . '/languages/' );
}
add_action( 'init', 'udp_load_textdomain' ); 

function udp_menu_page() {
add_menu_page(
__( 'UDP Setting Page', 'udp' ),
__( 'UDP Setting Page', 'udp' ),
'manage_options',
'udp_setting_page',
'udp_setting_page',
'',
6
);
}
add_action('admin_menu', 'udp_menu_page');

function udp_setting_page() {
?>
<h2><?php _e('My Plugin Title', 'udp'); ?></h2>
<?php
}

Create the Translation Files

To generate our translation files, we will use the following translation editor software:

POEDIT

Translation files (.po and .mo) contain the string to translate and the translated string. While creating the .po file we need to save it in ‘{domain}-language code’ format. In this example, the file will be udp-fr_FR.po.

Next, install the POEDIT software on your system. This software is available for all platforms and can be installed on Windows, Linux or Mac.

Once installed, open POEDIT and go to File->New, where we will enter our language code in the window prompt.

Click on the ‘Save’ icon, after which, the file explorer will open. Head over to the plugins languages directory and save it as the following: udp-fr_FR.po.

Now we are able to add the French translation for our plugin text. To do so, click on the ‘Extract from sources’ section.

This will open a catalog properties popup. We now need to configure the three following tabs: Translation Properties, Source Paths and Source Keywords. In the Translation Properties tab, add our domain ‘udp’ as the project name. Source Paths will be our plugin folder and we will add ‘__ and _e’ inside Source Keywords.

If you have multiple folders inside the plugin, then we will need to choose each directory individually.

After selecting the plugin folder you should see ‘.’ in the Paths section. Repeat the same process for other folders inside your plugin directory if necessary.

Under the Source Keywords, click on the + icon and add ‘__’ and ‘_e’ as a keyword and click the OK button.

In the next window, under Source text, you will have all strings available to translate from your plugin. Choose the string one by one and add your French translation to the string.

Once you add all translations, click on the Save icon. This will automatically save all your string translation in your udp-ft_FR.po file. Your .po file will now contain the following code:

#: udp.php:24 udp.php:25
msgid "UDP Setting Page"
msgstr "Page de configuration UDP"

#: udp.php:37
msgid "My Plugin Title"
msgstr "Titre de mon plugin"

Test Our Plugin Translation

We have now completed the task of creating .po and .mo files for our plugin. Now it’s time to test our plugin and check the French language translation.

First, download our language file from the following address:

WordPress Language repository.

For the French language, the path is as follows:

French WordPress Language repository.
fr_FR.mo and fr_FR.po

Download files from this link and store it in the wp-content/languages directory. Create the ‘languages’ folder, if it does not already exist.

Next, we need to change the default language of our WordPress installation. Open the wp-config.php file and add the language as follows:

define('WPLANG', 'fr_FR');

Now if you go to the dashboard, your plugin should be displaying in the French language.

In conclusion

Creating a localized translation for your WordPress plugin can seem a little daunting and complicated at first. However the potential benefits of offering large non English speaking countries like Brazil, France and Germany your plugin in their native language can help open your plugin up to a whole new, appreciate audience. While it may seem like a lot of work, the rewards could be considerable.

The post How to localize and translate a WordPress plugin – an in depth guide for plugin developers appeared first on UpdraftPlus. UpdraftPlus – Backup, restore and migration plugin for WordPress.

5 ways you can set up a profitable side hustle using WordPress

With the stresses and demands of modern life, most working-aged people are perfectly happy to sustain and manage just one full-time job and while there isn’t anything inherently wrong with having just one arrow in your professional quiver, it can leave you open to being at the whims of the unexpected. What would happen if your best-laid plans went awry? One moment you’re gainfully employed, the next the company you work for has gone bankrupt and you’re wondering where it all went wrong, as you try to keep the wolves away from the door and do your best to chart a course back to a full-time income

There’s also the prospect of creative stagnation. Even if you enjoy and excel at what you do to an extent that you don’t need to worry about being fired or made redundant, do you really want to do the same thing over and over again for years to come? A lack of variety and new challenges can eventually sour you on something that you originally loved, and leave you feeling unfulfilled in your working life.

Enter the side hustle. Thanks to the internet, more and more people are now making their hobbies, interests and innovative business ideas pay off. By setting up a business  in your free time, it is possible to pick up some extra cash and alleviate the daily grind. This may sound like a lot of work and effort, but by using WordPress as your primary platform, it doesn’t need to be. Here’s how you can WordPress to get moving in the right direction:

1. Create your own inexpensive website

In many cases (perhaps most), if you are setting up a side hustle, you will not have huge sums of money with which to hire professional web designers to build the site. Simply finding the time to work on your new site can be challenging enough with all the existing commitments most people can have. It can be easy to either spend lots or create debts of many thousands when attempting to launch a dream project, but with up to 96% of businesses failing within 10 years, it is worth cutting your cloth appropriately.   

As WordPress is a free platform, you can keep the costs to a minimum by only paying for the hosting and any paid plugins or themes you deem necessary. Where many other easy site-builders are free initially, they eventually start charging a monthly fee. With WordPress you don’t need to worry about unexpected costs. 

2. It’s a great base for dropshipping

Although it has been around for a while, dropshipping is an incredibly popular (and thus very competitive) side hustle. This type of side business is still a viable option for entrepreneurs – holding a place among the best side hustle ideas. The idea is a very straightforward one: instead of creating or buying products, stocking them, selling them and shipping them out (or making them available for collection), you list items from third-party suppliers and let them handle any resulting sales.

Where does your profit come from you may ask? It comes from the markup you place on those products. You find something sold at a particular price and then list it on your site at an increased price. You can think of the price increase as either a curation charge  or maybe a finder’s fee. WordPress is a great platform for setting up a dropshipping site. Just set up the free WooCommerce plugin, then connect it to one or more of various dropshipping services (read more about them here).

3. Giving you the freedom to experiment

Not only is WordPress free, it is also open-source. This means that you are able to make fundamental changes to how the system works. If you work in development and have the skills to do so (or you’re willing to bring in a developer to help), you can customize your site in ways that aren’t possible on other platforms.

You can change themes to suit your personal preference, add creative features and chop and change as you see fit. There are no rules to follow or specific standards to meet and should something go wrong, you can just restore a backup using UpdraftPlus. This is important when you’re trying to build your side hustle, as you’re unlikely to hit upon a winning formula right away. 

4. Always keeping mobile in mind

For quite some time now, default WordPress themes have looked and worked excellently on mobile devices, with the breadth of free themes available online providing website owners with nearly-boundless options. This is vitally important when you’re trying to establish a website based business, as mobile customers made up 58% of all website site visits in 2018.

Couple this with the massive selection of monetization plugins for WordPress that go beyond just dropshipping (selling digital resources, accepting gifts and donations, book consultations, etc.); you have all the necessary ingredients for reaching and profiting from a potentially huge audience. Given that there are still numerous websites that look decidedly clunky on smartphones, this isn’t something to be taken lightly.

5. A supportive community

Starting completely from scratch isn’t the easiest way to go when building a side hustle business. Taking your destiny into your own hands and starting a project that’s wholly your own may sound romantic, but it isn’t practical. There are so many things that can go wrong during the startup process that you can easily fail before you have even got going if you are not careful.

Due to the general difficulties involved in launching a new side hustle, it is always a good idea to seek out an entrepreneurial community that can help you get through the tough times. WordPress has a vast and helpful community of entrepreneurial types spread throughout the world. If you make an effort to be part of it, you’ll find that there’s a huge amount of great advice on offer for free, covering both website development issues and general entrepreneurial roadblocks.

A WordPress site will save you money, neatly support the powerful dropshipping model, allow you to experiment safely and freely, give you access to a huge supportive community and work perfectly on mobile devices. 

The post 5 ways you can set up a profitable side hustle using WordPress appeared first on UpdraftPlus. UpdraftPlus – Backup, restore and migration plugin for WordPress.