Ask Yoast: what’s a slug?

For this edition of Ask Yoast, we received a question that belongs in the SEO basics category: what’s a slug? The answer is simple because it’s the piece of the URL that distinguishes a post. In this Ask Yoast, Joost explains what a slug is and what its SEO benefits are.

This Ask Yoast is all about the following question:

“What’s a slug? What’s the difference with a URL? And what is the SEO benefit of a slug?

Check out the video or read the answer below!

New to SEO? Learn the Basics of SEO in our Basic SEO course »

Basic SEO training$ 199€ 199 – Buy now » Info

What’s a slug?

Can’t watch the video? Read the transcript here:

“Slug” is actually a word that comes from the WordPress community. A “slug” is the piece of the URL that distinguishes that post. So if you have, the URL for our WordPress SEO article, then WordPress SEO is the bit that identifies that page as being our WordPress SEO article. It’s what our system uses to recognize that it has to serve you that specific page. It’s the defining part of the URL.

The SEO benefit of a slug is that you can change the words in there and make sure that it has the words that you really want to rank for, because it’s one of the indicators to Google of what a page is about. It’s also one of the things that people see in the search results. So, if you see in the search results ten different URLs underneath each other, about a certain topic, like WordPress SEO, and you see our, that’s very on point and people might click on that a lot easier than if it’s, which is the old default of WordPress.

So that’s what a “slug” is and why it has SEO benefit.

Good luck!”

Ask Yoast

In the series Ask Yoast we try to help you out with your SEO issues! Are you in doubt what’s best for your site’s SEO? We’ll come to the rescue! Just send your question to

Read more: ‘SEO friendly URLs’ »

WordPress Careers Masterclass: Selling Your Time (Employment or Freelancing)

Have you ever thought about, or are you considering, selling your time as a WordPress professional, either as a freelancer or through finding paid employment?

The two ways of working are quite different – one can involve a lot of autonomy while the other follows the more traditional model that people have been using for their careers since jobs were first invented (which I guess would be around the time of the Industrial Revolution).

But they have one major thing in common: instead of producing something (a plugin, a product or a website, for example) which you sell to someone (a user or client), you’re selling your time. As a freelancer, you would be billing the hours you work for a client, while as an employee you would receive a salary.

In both cases, you don’t own the thing you’re producing. Instead, you sell your ability to produce that thing for someone else.

Welcome to the fourth post in this series on how to build a successful career with WordPress. In this part of the series, I’m going to help you decide if selling your time (and your skills) is right for you. I’ll look at the differences between freelancing and employment (and the shades of gray in between), with a view to helping you decide which is most suitable for you. Then I’ll give you some tips to help you land freelance work or a great WordPress job and make a success of whichever one you choose.

And remember, during your career you might switch between different ways of working depending on your circumstances, skills, and the job market – so both employment and freelancing may be relevant for you at different times. And many WordPress developers do both concurrently, supplementing the income from their day job with freelance work they do at night. It’s a good way to get freelance experience before taking the leap into the unknown if you’re used to the security of employment, and of earning some extra cash.

Freelancing vs Employment: Differences and Similarities

Employment can look quite different these days to what our parents might have done – it’s not always about the nine to five grind. And freelancing may not be what you expect: it doesn’t necessarily mean isolation and uncertainty.

WPMU DEV team page
The WPMU DEV team includes staff and freelancers around the world

Here are some of the key features of each, and some of the possibilities afforded by each.


Employment means that you work for an employer, which may be a company, a charity or a government organization. They could be big or small, and your job could be very general or very specialized.

Your employer might specialize in what you do: they could be a WordPress development agency if you’re a developer, a marketing company if you’re a marketer, etc. Or they might be something different and you provide that expertise for them. For example, you might be a developer working on the website of a retail company.

There are two big advantages to employment: security and being part of a team. You’ll get the same salary every month and you’ll be part of a team of people all working to the same end (hopefully!). If you like stability and company this will suit you.


Freelancing means that people hire you to do work for them. Those people could be agencies working for clients, or they could be the clients themselves.

The main difference between freelancing and selling a service is that as a freelancer you charge for your time. Some freelancers sell their time directly to clients while others go through agencies and others sell a service (such as a completed website) to clients, I’ll look at that in more detail in the next part of the course.

The main benefits of freelancing are variety and autonomy. You get to do varied work for different clients and you get to choose what you do and what hours you work. As you become more experienced and in demand these will increase.

As an employee, you might find yourself working alongside freelancers and vice versa. As a freelancer, you’re likely to be hired by the employees of an agency or client, while as an employee you might hire freelancers to boost the team’s capacity or skills. This means that the choice between freelancing and employment can be less about who you work for but more about the context in which you do that work.

Identifying What’s Right For You

When it comes to deciding whether freelancing or employment are the best fit for you, there are a few things you need to consider:

  • Personality
  • Specialisms
  • Location
  • Finance

Each of these will impact own whether you’ll be better suited to employment or freelancing, and on how successful you’ll be at either.

So let’s take a look at them in more detail.


Some people are suited to working freelance and some are better suited to employment. There are a few aspects to this:

  • Working alone. If you’re comfortable working on your own initiative (and possibly alone), then freelancing could be ideal. But if you like to be directed in your work or you thrive on being part of a team, then employment could be a better fit.
  • Resilience. As a freelancer, you’d need to be able to cope with the ups and downs of self-employment. As an employee, you may need to deal with the ups and downs of office politics.
  • Self-development. As an employee your employer will support you in this: paying for courses, allowing time to study, providing coaching and mentoring. As a freelancer you’ll have to do it all yourself, unpaid.
  • Motivation. If you’re easily distracted, working freelance will give you plenty of opportunities to procrastinate. If you’re the kind of person who needs external pressure, then employment may be a better fit.
  • Flexibility. If you love flexibility and constantly taking on new things, then freelancing could offer you that. But if you prefer routine and certainty, then employment is more likely to give you that.


Depending on your specialism, you may find it easier to get work as an employee or as a freelancer:

  • If you’re a generalist, then employment by a non-agency employer is likely to suit you best. They’ll want you to look after every aspect of their website development, for example. This can be satisfying and give you plenty of control. Alternatively, generalists can get work selling a service to clients, which you’ll learn about in the next part of this course.
  • If you’re a specialist, then employment in an agency or freelancing for one will probably suit you best. A large agency will employ specialist developers; smaller agencies don’t have the capacity to employ specialists but instead hire them as freelancers.

If you do have a specialism, you’ll need to develop your reputation as an expert. And you’ll need to be adaptable: you may need to change your specialism as the web development landscape changes.

Work Location

Whether you can work freelance or as an employee may come down to where you live and the availability of work. If there are few WordPress jobs in your area, then freelancing is more likely to provide you with opportunities.

As a freelancer, you can work with people all over the world. I work for clients in four continents and it’s all done via Slack, email, and the occasional Skype call. I do have a few clients in my local area (one is just half a mile away) but you don’t need to confine yourself to local clients.

So if you want to travel or work remotely, then freelance opportunities may be easier to come by. However, there are more and more employers, especially in the tech industry, employing remote staff. WPMU DEV is just one example: we have team members, both employees and freelancers, all over the globe.

If your location is flexible, you could freelance from anywhere around the world.
If your location is flexible, you could freelance from anywhere around the world.

But if you like to work in an office with other people, then you’ll either want to get a job or find cowering space you can share with other freelancers.


Working freelance is riskier than getting a job. You can’t guarantee that you’ll have work coming in next year, next month or even next week, and you’ll have to work to find clients and get contracts.

If you do make a success of it, you can command higher rates of pay. Your clients don’t have to pay your taxes, insurance, pension etc. so they will pay you more. But you will have to manage your finances: you’ll have to complete your tax return, take the hit if you need a day off sick, and pay into your own pension. Don’t neglect these things!

If you hate working with finances and don’t want to manage your own, then you’ll be much better suited to employment than to freelancing.


Employment Practicalities

The biggest practicality when it comes to employment as a WordPress professional is identifying the kind of job you want and that you’re suited to, and then landing that job.

I’ve done research into what the big tech companies are looking for these days and have identified the main criteria they use.

Technical Skills and Experience

Without the technical skills for a given job, you’re not likely to stand much chance of landing it. All of the firms I researched ask for relevant technical skills and experience for all of their jobs.

Examples include Apple, who expect applicants for developer roles to have experience with their APIs as well as other relevant technologies and languages; Facebook, who expect industry experience with the systems relevant to each role, and Automattic, who expect applicants to have a high level of WordPress knowledge.

Startups are less likely to ask for many years of experience, as are smaller firms. Generally, the giants will hire the people with the most experience, while companies that haven’t been around so long will value personal qualities and potential.

Communication Skills

Most companies are looking for people with communication skills, even in roles that are purely coding-based: this is so that you can work effectively with other team members and communicate with your colleagues.

Microsoft expects you to be an excellent communicator, Automattic expects all its team members to spend time supporting customers, and Buffer has 10 Buffer values which include listening and communication.

Personal Attributes

As well as communication skills, many companies expect you to have other personal qualities or to share their values. For, example Facebook will expect you to be bold and agree with them that “the riskiest thing is to not take risks,” while Slack values diversity, experience, gumption, and panache.

Analytical and problem-solving skills come up a lot: Apple mentions these in most of their job descriptions as do Microsoft and Facebook, who talk about curiosity. Automattic values problem-solving abilities among other personal qualities.

The ability to work in a fast-paced environment and respond quickly is important: Facebook hire people who can move fast, Automattic specify flexibility, Apple need you to be comfortable with rapidly evolving requirements and Buffer want you to be a ‘no-ego doer’.

Being self-motivated and able to work with minimal supervision is important too, especially at companies with distributed working like WPMU DEV.

Google lists three attributes they look for: leadership, thinking style, and “googleyness”(!). It’s clear that fitting in with Google’s mindset and culture is key to landing a job there.


The level of qualification required varies, with the more established companies or those working with enterprise rather than consumers tending to be stricter.

Apple, Microsoft and Slack all require a Computer Science degree or equivalent for developer roles. Facebook’s criteria vary by role, with experience and skills being a higher focus.

Some companies are just as happy for people to be self-taught: Automattic doesn’t mention a degree as a requirement while Buffer state that being self-taught can be just as valuable.

But there’s no doubt that a degree will give you some advantage.

Landing That Job

So you understand what companies are looking for and you know your own skills and experience. Look back at the career plan you started working on in Part 1 of this course to check what you might need to develop and where your strengths are. And find a way of articulating your skills and experience that works for the company you’re applying to.

There are a few places to find WordPress jobs:

  • Jobs boards
  • Company websites
  • Meetups and networking events
  • WordCamps
  • Word of mouth
  • LinkedIn

Make sure everyone you know, both personally and professionally, knows what you’re looking for and can pass on any opportunities they spot. Prepare your CV and business card so you can give people something when you make contact. And make sure you follow the instructions an employer provides when applying to them: if they have their own application form, don’t send a standard CV. And if they ask for specific skills, attributes and experience, make sure you talk about those in your application.

indeed jobs board site
indeed is one of many jobs boards with WordPress jobs

When I’ve applied for jobs in the past, I’ve developed a CV but I’ve always tweaked it for each employer I apply to. Employers like to know that you’re done your homework and know what they’re looking for. Tell them why you want to work for them and why you’re a good fit. A hiring manager faced with a standard CV is much less likely to notice you.

And finally make sure you check out our post on the places to find WordPress jobs, and sign up to all the relevant jobs boards.


WP Academy – WordPress Wisdom, Bitesized.

Structured e-learning to expand your WordPress and general business horizons. Learn from people like our very own CEO James Farmer with more than a decade’s experience running a WordPress Business!.


Freelancing Practicalities

When it comes to launching a freelance career, you have some different practicalities to consider. In common with getting a job you’ll have to brush up your CV and find opportunities, but you’ll also need to start managing your own business and become adept at marketing.

  • Hourly rates. Identify what you need to earn per hour to cover your living expenses plus the costs associated with working freelance and the time when you won’t be charging for your work. Be realistic: follow our guide to setting freelancing rates.
  • Marketing. Find opportunities to tell people about what you do. Develop your website and CV. Keep in touch with previous clients – they might want to hire you again.
  • Networking. Attend events like WordPress meetups to find potential clients and collaborators.
  • Contracts. Make sure you have a contract for every piece of work you take on. Your clients may have their own standard contract. There are tips for developing your own contact in the next part of this course.
  • Finances. Set up a separate bank account for your freelance work and use it to manage work expenses. It’s also a good idea to set aside money for taxes and contingency funds.
  • Legalities. Depending on your country, you may need to register as self-employed or set up a company for your work. Research this and make sure you do what’s required.
  • Workspace. Your clients may require you to work on their premises or you may need to find out r own place to work. This could be anything from a cowering space to a table in a coffee shop, or a space at home. Think about your comfort sitting at a desk or table all day and make sure you look after your back.
  • Self-development. It’s tempting to spend all your time on chargeable work, but you should never stop learning. Set aside time for self-development and be strict with yourself. If you don’t keep up with new trends, you’ll lose work in the long run.
There are WordPress meetups all around the world - your local one can help you develop your skills and make contacts
There are WordPress meetups all around the world – your local one can help you develop your skills and make contacts

For more on the practicalities of setting up a business, writing contracts and marketing, amongst other things, see the next part in this course, on selling a service.

Selling Your Time Needn’t be Dull

The phrase ‘selling your time’ does, I admit, sound a bit dull. Especially when compared to the excitement of launching a startup or selling themes and plugins while you’re on holiday.

But both freelancing and employment can be very rewarding. Freelancing gives you then opportunity to try new things, work with different people, and manage your own time and priorities. While elopement gives you the benefit of being part off a team and contributing to larger projects which you can see through from start to finish.

Which you choose at any given time will depend on you: your personality, your circumstances and what’s available. But if you take some time to identify what will suit you best, and to prepare to make a success of it, then it will be much more rewarding.

Related posts:

  1. WordPress Careers Masterclass: Selling a Service (Client Work) Have you thought about making money with WordPress by selling…
  2. WordPress Careers Masterclass: How to Forge a Successful Career Welcome to this new series on WordPress careers! In this…
  3. WordPress Careers Masterclass: Selling Your Code (Themes and Plugins) Are you interested in a career selling your code? Specifically,…
  4. 4 Freelancing Mistakes That Are Costing You Cash (and How to Avoid Them) Going full-time as a WordPress freelancer is scary stuff, but…

19 Best Mobile Apps to Manage Your WordPress Site

Are you looking for mobile apps to manage your WordPress site on the go? Running a successful website requires a lot of time, and its hard to sit in front of a computer all day. In this article, we will share the best mobile apps to manage your WordPress site using your phone.

Best Mobile Apps to Manage Your WordPress Site

1. Apps Apps offers apps that connect to your self-hosted WordPress site. You can create posts, upload photos, and moderate comments from your Android or iOS devices.

Certain features of the app require you to create a account. It also comes with a built-in reader that shows the blogs you have followed on

For detailed instructions, see our guide on how to use WordPress app on your mobile devices.

2. WooCommerce

WooCommerce iOS app

If you run an online store using WooCommerce, then you can use the WooCommerce app for iOS to manage your store on the go.

The app offers a beautiful interface to view your store performance such as orders and sales.

It is not the replacement for the Desktop version as it lacks in terms of features. However, it is pretty useful to look at orders even when you are away from a computer.

3. Google Analytics

Google Analytics app

Google Analytics is the most powerful and free analytics tool available for website owners. It allows you to answer questions like

– How many people visit your website?
– Where they come from?
– What they do while visiting your website?

If you are not already using it, then see our step by step guide on how to install Google Analytics in WordPress.

Google Analytics app allows you to view your site reports using your mobile device. It allows you to create and view custom reports. You can select date ranges and view real time reports.

4. Evernote


Ideas for great blog posts, products, or strategies can appear out of no where. Evernote allows you to take notes using your mobile device, and it syncs across all your devices.

You can create to-do lists, draw doodles, take notes, save pictures, bookmarks, and videos. Evernote works on all mobile platforms, PCs, and Mac.

Alternatives: Google Keep | OneNote

5. Pingdom

Pingdom app

Pingdom is a popular website uptime monitoring service. You can set it up to monitor one site’s uptime for free.

Pingdom’s mobile apps alert you when your site is down. It also shows you the status of your website and the services you are monitoring.

6. Buffer


Buffer allows you to schedule posts for your social media profiles. Their mobile apps allow you to do that from anywhere using your mobile device.

You can view the posts you have queued, posts you have shared, analytics, and add new content on the go. It helps you keep your followers engaged even when you are away from your desk.



IFTTT allows you make internet work for you. The IFTTT mobile app brings that power to your mobile devices.

You can use it as a monitoring tool, automate your workflow, and get instant notifications. Aside from WordPress, it also works with many other online services and tools. It even allows you to automate your smart home and office.

Take a look at our tutorial on how to automate WordPress and social media with IFTTT for more details.

8. Feedly


Feedly is a smart and modern feed reader. Using the Feedly app on your mobile phone, you can stay in touch with your favorite news sources, blogs, and websites.

You can also organize your favorite websites into different topics as collections. Feedly also makes it easy to share your articles directly from the app.

9. Facebook Pages Manager

Facebook Pages Manager

The easiest way to boost activity on your Facebook pages is by engaging with your audience. Facebook Pages Manager allows you to do manage your pages more efficiently.

It shows you notifications and activities from your Facebook Pages. You can also view reports on how well your posts are doing. Most importantly you can publish posts, upload photos, and respond to comments.

Need more Facebook tips? See our list of best Facebook tips and tutorials for WordPress users

10. Facebook Ads Manager

Facebook Ads Manager

Facebook Ads allow you to retarget website visitors on Facebook. If you are using them right, then you can easily boost your page likes several times over.

Facebook Ads Manager app allows you to view reports, create ads, and manage your ads from mobile devices.

11. Inbox by Google

Inbox by Gmail

As a WordPress site owner, you will get a lot of email notifications for comments, updates, and contact form notifications.

Inbox by Google allows you to clean up your inbox quickly. This smart email client automatically bundles your emails into groups and allows you to easily mark them as done.

It also reduces notifications by only notifying you for important emails, and it is pretty good at guessing which emails are important.

12. Google Drive

Google Drive

Google Drive offers you free storage for all your files. More importantly, it allows you to access those files from anywhere on any device.

Alternatives: Dropbox | OneDrive

13. Google Authenticator

Google Authenticator

Passwords can be easily cracked by hackers, and it makes your WordPress site vulnerable. Adding two step verification protects your WordPress site against hacking attempts.

Google Authenticator app helps you add two step verification to many applications including your WordPress site. See our guide on how to add two step verification with Google Authenticator in WordPress.

See our ultimate WordPress security guide to further improve your website security.

14. Google Adsense

Google Adsense

Google Adsense provides an easy way to make money for small websites and blogs. If you are already using Google Adsense to serve ads on your WordPress site, then Google Adsense app is a great companion for you.

The app provides you with an overview of your Adsense account. It gives you instant access to detailed earning reports on all key metrics.

15. PayPal


If you run an online store, then PayPal mobile app is a must have app. You can see all your PayPal activity from your mobile devices.

You can also make payments, transfer balance from PayPal to your bank account, and much more.

16. LastPass


You should always use strong passwords for all your accounts including your WordPress site. However, it is not possible to remember all those difficult passwords.

LastPass makes it easier to manage all your passwords, so that you don’t have to remember passwords anymore. It works on desktop, browsers, and even on your mobile.

For more details, see our guide on how to manage passwords for WordPress beginners.

17. Pomodoro Timer

Pomodoro Timer

As a business owner, you may find it difficult to concentrate on one task at a time. This is where Pomodoro Timer comes in.

The Pomodoro Technique is a time management method. It uses a timer to break down work into intervals, separated by small breaks.

Our CEO, Syed Balkhi, has written a great post on how to use time-blocking.

Alternate versions: Pomodoro Timer for iOS | Pomodoro Timer for Google Chrome

18. IA Writer

IA Writer

Writing on mobile devices is particularly difficult. The screen size is too small, and its painful to slide up and down.

IA Writer makes it easier to write on mobile devices and makes it a pleasant experience. It comes with a clean clutter free and intuitive UI which helps you work on long articles from your mobile devices.

Most importantly you can connect the app to your WordPress site and publish or save drafts directly.

19. Trello


Whether you are an individual blogger or a team, getting things done requires discipline and organization. Trello helps you collaborate, manage, and organize your workflow.

Trello is a productivity app for individuals as well as teams. It uses boards, lists, and cards to organize tasks in a fun and rewarding way.

That’s all for now.

We hope this list helped you find some new apps to manage your WordPress site on the go. You may also want to see our list of 24 must have WordPress plugins for business websites

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

The post 19 Best Mobile Apps to Manage Your WordPress Site appeared first on WPBeginner.

6 Common WordPress Login Issues (and Their Solutions)


6 Common WordPress Login Issues (and Their Solutions)

Posted on October 31, 2016 by in Resources |

While WordPress is an incredibly powerful platform, it does come with its share of occasional frustrations. One potential source of grievance amongst WordPress users is the inability to log into the WordPress admin area. There are many reasons why WordPress login issues might arise, some more common than others.

This article will highlight some of the most commonly experienced login issues, explain why they might occur, and offer appropriate solutions.

1. Lost or Forgotten Password

This is an obvious one, of course, but nonetheless an important problem. If you change your password regularly to help with site security, it’s very easy to forget or lose track of your current password. While WordPress has a built-in feature to help you reset your password, there are a number of factors that can derail that process. As a result, there are actually quite a few different potential solutions that you may have to run through.


If you’ve lost or forgotten your password, first try using the built-in recovery feature. Click on Lost your password? on the login screen and you will be prompted to enter your email address. WordPress will send you a link via email which you can use to create a new password.

If for some reason, you can’t use this method, there are two other tricks you can try.

First, if you’ve used multiple browsers or devices to log into WordPress, check to see if any of those browsers or devices are still logged in. Then access the admin panel and change your password.

If that doesn’t work, your next best option is to update your password directly in the WordPress database. If your site is hosted on a Linux server, you will usually have access to phpMyAdmin. However, before you edit your WordPress database, create a complete backup. Then, proceed on to the following steps:

  • Launch phpMyAdmin, locate your site’s database, and open up the wp_users table.
  • In the list of users, locate your username in the user_login column and select Edit next to that row.
  • Find the user_pass field and type a new plain text password into the Value field, replacing the existing symbols and characters.
  • From the drop-down menu, select MD5.
  • Scroll to the bottom of the page and click Go.

Setting user_pass with phpMyAdmin

At this point, you should be able to login using the new password you just assigned to your WordPress username with phpMyAdmin. However, if you’re still locked out and unable to recover your password, there are several additional options you can try.

2. Cache and Cookies

Cookies are small files located in browser directories that store information about a user’s interaction with specific websites. WordPress requires the use of cookies during the login process. If cookies are not enabled, WordPress login can’t occur.

The browser cache refers to the temporary files stored on your web browser when you access a web page. If your cache is not updating properly you may be viewing older versions of some of the files that support WordPress.


Luckily, cache and cookie issues are usually easily fixed. First, check that cookies are enabled and then clear both your browser cache and cookies.

3. Plugin Interference

It’s possible for a plugin to interfere with the login process. A plugin may not have been updated properly, or there could be a conflict between two or more of your plugins.


The first thing you need to do is confirm that the issue is being caused by a plugin. You can do this by deactivating all of your plugins or by temporarily renaming the plugins folder.

If you have access to your admin panel, simply go to the Plugins menu and deactivate all plugins. Make sure to back up your site first. Select all of the plugins, go to Bulk Actions and select Deactivate.

If you don’t have access to the admin panel you can rename the plugins folder. Use a File Transfer Protocol (FTP) client, locate the wp-content/plugins folder, and rename it temporarily.

Folder list within the FTP server showing the renamed plugins folder

WordPress won’t recognize the folder and will deactivate all plugins.

Once you have deactivated all plugins, try logging in. If you’re now able to log in, you’ve confirmed that a plugin is causing the issue. If so, you’ll need to troubleshoot to discover which plugin is causing the issue. You can take a look at the “Check Your Plugins” section in this blog post for more detailed instructions.

4. Theme Issues

Theme issues can cause login problems, especially if your theme includes a custom login page. This issue is most likely to rear its head when a problematic theme update is installed, or when the WordPress core is updated producing a theme incompatibility.


Determine if a theme issue is causing your login woes by reverting back to the default theme. To do this, temporarily rename your active theme’s directory so that WordPress doesn’t recognize it.

You can do this by accessing the wp-content/themes folder using an FTP client, finding the active theme’s folder, and renaming it. This will force WordPress to revert to the default theme.

Now, try logging in to confirm that the theme is the issue. Also, take a look at the “Check Your Theme” section of this post for more details.

5. Corrupted Login File

If the WordPress login file, wp-login.php, is corrupted, deleted, or misplaced, you won’t be able to access the login screen at all.


To check if this is the problem (and to simultaneously resolve it) you will need to replace the file with a new one.

  • Backup WordPress before deleting your login file.
  • Locate your wp-login.php file with an FTP client and delete it. You’ll find it in the directory where you’ve installed WordPress.
  • Next, download the latest version of WordPress and locate the wp-login.php file in the new download.
  • Copy this file in place of your deleted file.
  • Open the new login file and search for “redefining user_login.”
  • Just below a php comment beginning with that phrase find and replace code as shown in the snippet below.
// Delete this line
$user_login = $user_data["user_login"];

// Replace it with this line
$user_login = $user_data->user_login;

If the login file was the issue, you should now be good to go.

6. Redirected WordPress or Site URL

The WordPress address URL identifies the location where WordPress is installed while the site address URL identifies where your website should resolve. If either is wrong, it can cause all sorts of issues, including the inability to access the admin area to correct the mistake.

This can happen if you have recently migrated WordPress, altered the location of the WordPress core by moving WordPress to a subdirectory, or it can simply be due to an errant keystroke while working with your WordPress database.


There are lots of potential solutions when it comes to fixing the WordPress address and site address URLs. However, there is a simple (albeit temporary) trick to enable you to confirm that you do in fact have a URL issue on your hands.

After backing up your site, access the wp-config.php file with an FTP client and add the following code:


Making sure to use the WordPress address URL for WP_HOME and the site address URL for WP_SITEURL. By default, both addresses will be the same. However, if you’ve given WordPress it’s own directory, the WordPress address URL will include the directory in which you’ve installed WordPress.

Save the updated wp-config.php file and upload the modified file to the server using your FTP client. If you can now successfully log in, then you’ve identified the problem.

However, this is a temporary fix so you should delete the added code and update the WP_HOME and WP_SITEURL values in your site’s database using another method to correct the issue permanently.


Having WordPress login issues can be the source of much frustration and result in countless hours of troubleshooting. As you can see, there are lots of potential causes of login problems so it can be difficult to know where to start.

Let’s quickly recap the solutions to run through if you’re having issues:

  1. Change your password.
  2. Clear your browser cache and cookies.
  3. Deactivate your plugins.
  4. Revert back to the default theme.
  5. Replace your login file.
  6. Define the WordPress and site URLs.

How many of these issues have you come across while working on your WordPress site(s)? Let us know in the comments section and don’t forget to subscribe so you can follow the conversation!

Featured Image via hanns /

John Hughes

By John Hughes

John is a blogging addict, WordPress fanatic, and a staff writer for

download divi

Ninja Forms for WordPress: A Comprehensive Overview


Ninja Forms for WordPress: A Comprehensive Overview

Posted on October 30, 2016 by in Resources |

WordPress has quite a few form plugins to choose from. Some are easy to use but have limited features while others have lots of features but can be complicated to use. WP Ninja Forms shows that it doesn’t have to be this way. Ninja Forms is a simple form builder with lots of features and it can even be expanded further, giving you the tools to build any type of form easily.

In this review I take a look at Ninja Forms and a few of its add-ons. As usual I dove right in without looking at any documentation to get an idea of how intuitive it is to create forms.



I’m reviewing an edition with the Pro Builder Pack which includes:

  • Layout & Styles
  • Multi-Part Forms
  • Conditional Logic
  • File Uploads

There are several pricing levels which include a different number of websites the plugin can be used on. All editions include 1 year of support and updates. There are various add-on discounts depending on which edition you buy. There’s even an edition that includes every plugin and can be used on unlimited websites.


After installation you’ll need to activate your plugin and register your add-ons. All menu items, including the settings, are added to a menu to the dashboard under Forms.



In the main settings screen you can adjust your general settings, reCAPTCHA, and advanced settings. An important setting here is the rollback feature, which lets you go back to 2.9 if you have issues with 3.0.



Paste in your add-on licenses and activate them one at a time.

All Forms


You can see all of your forms under All Forms in the menu. It starts with a Contact Me form already created. This screen gives you the shortcode so you can copy and paste it wherever you want your form.

Add New Form

To create a new form you can either select Add New Form in the All Forms screen or select Add New from the menu.

Form Fields Tab


Clicking Add New Form takes you to a new screen where you can build the form. There are several tabs in the upper left corner for navigation. You start in the Form Fields tab. This is where you create the form.

You can either click on the text to select the fields you want, click on the symbol in the bottom right corner to add new fields, or click on one of three templates to get you started quicker. Templates include Contact Us, Quote Request, and Event Registration. I didn’t see a way to add more templates to this list, but you can duplicate any template so it is possible to create and import others into your All Forms list.


I loaded up the three templates to see how they worked. These are great for getting started quickly and for examples of how they were built.

Contact Us


Here’s what the contact form template looks like within a page. This is the simplest of the three forms.

Quote Request


Here’s the quote request form template in a post. This template has several fields are lined up horizontally in columns.

This is done by adding a CSS class of one-half first (left side) or one-half (right side) in the CSS container.

Event Registration


Here’s what the event registration form looks like in a post. You can see that it also has several columns. It also has a map. This was added by pasting code into an HTML field.

Creating the Form from Scratch


Clicking Just click here and select the fields you want opens several fields you can choose from. The saved fields on the right side of the screen includes several categories: Common, User Information, Pricing, Layout, and Miscellaneous fields. You can toggle this screen to be full-screen if you want. I selected several fields to see how it works.


Each field has a gear. When you mouse over the gear you get several more choices. You can duplicate the field, delete it, or edit.

You get the edit screen on the right side where you can make changes to the field. Almost all of the fields include the same basic options including label editing, display, advanced, administration, and styles. Most also have a few options that are specific to that field type.


For example, the field called Multi-Select includes options for the labels and values. You can also style it under the Styles option. Styles include color, fonts, etc. Options include Wrap Styles, Label Styles, and Element Styles. Other options include List Item Row, Element, and Label. It has advanced CSS features for each style type.

You can set fields to be required and choose where the label will be placed. You can move the fields around with drag and drop. This would be easier with WYSIWYG (what you see is what you get) but it’s not hard to visualize what the form will look like. You can preview it from another screen.

Once you’ve created the form and made your adjustments select DONE in the upper left corner and select Publish. Now go to All Forms in the dashboard and copy the shortcode to paste into your content.

My Form


As you can see I’ve added the form to a Divi module. I created a form where writers would upload reviews of photography products. Writers must choose a category for their review, give it a star rating, and then explain the rating. I set a restriction that it would only accept zip files. The label for the file upload box gives the instructions that the text and images should be zipped into a single file.

Emails and Action Tab


Emails and Action lets you decide what happens with messages. You can create a success message, admin email, and choose how to save the submission. You can even use conditional logic and advanced features. You can also choose whether or not to include the file attachments in the email that gets sent to you.

Advanced Tab

The Advanced settings include:

  • Display
  • Restrictions
  • Calculations
  • Styles
  • Conditional Logic
  • Multi-part

Here’s a look at each setting.

Display Settings


Here you can give the form a title, choose how it reacts after a successful completion, choose label position, use custom CSS, choose the currency, and use a form key. The form key is used for referencing the form when programming your own code.



Set up restrictions such as require a user to be logged in before they can view a form and limit the number of submissions. You can create a custom message for both settings.



Here you can create a calculation variable that you can add to an HTML field, use in an email action, etc., using the Merge tag. You choose the fields it applies to from a dropdown list as you build the calculation using standard mathematical operands.

This feature isn’t as intuitive as the others and it doesn’t give examples. It does have examples in the documentation which includes inserting the variable into HTML from the Merge tag dropdown list.



Here’s where you can change the colors and fonts for the containers, titles, rows, ODD rows, and response and error messages. You can also adjust margin, width, height, padding, float, and more. Each section has an advanced CSS properties field that you can enable and paste in your own CSS.

Conditional Logic


Conditional Logic lets you set up conditions for your forms and emails. This is useful for hiding fields until a condition is met or automatically choosing how and when an email is sent. Setting them up is simple because you just need to select the fields from dropdown boxes and decide what the condition is. You can even use multiple conditions and layer them if you want. You can add as many conditions as you want.


This allows you to easily add some interesting conditions. For example, in this condition for the single checkbox, if it is checked then display the multi-select field. Otherwise keep the multi-select field hidden.


In this condition, if the user gives less than 3 on the star rating a paragraph box will appear where they will be asked for more information about their rating. If the rating is above three the field will remain hidden.



Here you can enable several settings for multi-part forms such as Validate Each Part, Show Breadcrumbs, Show Progress Bar, and Show Party Tiles. There’s also a styles settings for each to style container, buttons, hover, and active button. Each one has advanced CSS properties as well.



Click the Preview button to see what the form will look like on your website. After setting my conditions it would show the form without the paragraph text. I selected a star rating and found that it was counting the stars differently than I was. I was thinking of two stars as two stars that were selected, while it’s thinking two stars means you’ve selected the second star from the right. I think of as 4 stars. I didn’t see any way to change this in the settings.

Multi Part Forms


Forms are not limited to single pages (parts). They can have as many parts as you want. Click the circled plus to create another part of the form where you can add more fields. You can name each part individually. Select the arrow on the left to see the first part of the form. You can even drag and drop fields between the parts, and duplicate or remove the parts.


I enabled breadcrumbs and a progress bar to show the user how far they are into the form. This is especially useful for larger forms. I like that extra level of UI/UX. It’s a simple feature but it adds a lot to the user’s experience.

Adding the Forms to Pages and Posts


You’ll find the list of forms by clicking All Forms in the dashboard menu. Here you can select the shortcodes to paste into your content (in the Text tab of the editor, or Text or Code module in Divi). The forms list includes buttons to edit, delete, duplicate, preview, and view the submissions for each form from this list.


It works great with Divi. Here I placed it within a text module and used a black background with an opacity of 50 for column 2 in the row. The photo is from Unsplash. You can use Divi’s text adjustments in the Advanced Design Settings tab of the module and use Divi’s Custom CSS.


This styling was brought to you by Ninja Forms’ Style Settings. These settings take precedence over the Divi module settings.



Ninja Forms includes a widget you can drop in your sidebar. You can choose any form you want from the dropdown box. Depending on the design of your form it may not work well with the space allocated to the side bar.


The forms will format to fit the space, but I recommend creating a form just for sidebars. This is the original events registration form. I’m going to duplicate this form and streamline it for use in the sidebar.


I streamlined the form by removing some of the text and the dividers. I also added some conditional logic to only show the food and drink fields if there was a preference. I also stacked the name fields vertically rather than horizontally and removed the phone field. The result is a smaller and cleaner form.



Go to Submissions in the menu and select the form you want from the dropdown box and click Filter. You’ll see the list of submissions for that form. The expected functions are here to edit, filter by a date-range, and export the submissions. Select a different forms from the dropdown box. It will also send you an email that includes the submitted information.

Import / Export


There are several options for importing and exporting including complete forms, your favorite fields, and styles. This works the same as any import/export function. Exporting saves the file to your computer. Importing adds the file to your list in All Forms.

Style Settings


Style all of your forms at once from Style Settings in the menu. Style settings include the container, titles, required message, row, odd row, and success response message. You can enable an advanced area where you can enter custom CSS for each section. The expected elements can be styled from the background to the font sizes, etc. Within style settings there are tabs for Default Field, Field Type, Error, and DatePicker styles.

The styling that you perform here will over-ride any styling that you’ve done in the Divi modules. This will be used as default if you’ve not made adjustments in the form settings. Styling priority is 1- the form, 2- general style settings (the settings in this section), 3- Divi module.

Get Help


Get Help contains links for various types of help that is available and gives you system information that includes your server and app info, and a list of activated plugins to help in troubleshooting problems. Before getting help they want you to visit their documentation, perform some of troubleshooting on your own, and then view what the scope of support includes.

I used the help at their website for help with calculations. The information was short but thorough enough to help me create the calculation I wanted.



There are currently 48 add-ons available to expand the functionality of Ninja Forms. Some add features to the forms, such as conditional logic, front end editor, multi-part forms, tables, analytics, and modals, while others connect your forms to other services for taking payments, newsletter subscriptions, etc.

Add-ons cost extra. They are priced yearly and most cost around $50 for use on a single website and $99 for 20 websites. Each one has its own documentation.

File Uploads


The File Uploads feature lets you see the files and make selections for upload limits and storage locations. Internal storage options include a custom directory on your server and various dynamic directories that you can create using shortcodes. For example- allow registered users to have their own directory or create a directory based on date. External storage options include DropBox and Amazon S3.

Final Thoughts

Ninja Forms is a great choice for both beginners and developers. It strikes a great balance between being easy to use and giving you the functionality to customize it to your liking. I especially like the CSS features, conditional logic, columns, multi-part, and calculations. You can control and even correct the data formatting.

The interface is intuitive. Building the forms is simple but there is no WYSIWYG feature out of the box. Everything is built in a stack. You can use CSS to create columns within the form, but you can’t see what this looks like until you select Preview. Fortunately there is an add-on for that. If you prefer WYSIWYG then I’d recommend getting the Front-End Editor add-on. Either way, Ninja Forms has enough features built in and enough add-ons to make any kind of form you want. Ninja Forms is easy to recommend to anyone that builds a lot of forms.

Have you tried WP Ninja Forms?

Image by CandyDuck /

Randy Brown

By Randy Brown

Randy A. Brown is a freelance writer from east TN specializing in WordPress and eCommerce. He’s a longtime WordPress enthusiast and loves learning new things and sharing information with others. If he’s not writing or reading, he’s probably playing guitar.

download divi

Why Wix’s response to WordPress re GPL license is weak

Wix WordPress GPL issue

Over the weekend, WordPress co-creator Matt Mullenweg called out Wix for using some of WordPress’ Open Source, GPL-licensed code in an improper fashion in their new mobile app; and also for ripping off the WordPress brand by calling Wix “WixPress.”

Here’s Wix CEO Avishai Abrahami’s response, and here’s why it’s problematic:

Wix should have provided GPL attribution

Matt said Wix should have provided proper attribution to WordPress for the code used in the mobile app. Abrahami does not address this. Yes, Wix has released over 200 Open Source projects on Github, but doing a good thing doesn’t reconcile doing a not-good thing. If the license says they need to provide attribution, they should address that specific issue for this specific piece of software.

GPL means public release of software

Matt states that if a piece of software includes any components from other GPL software, that makes the whole new piece of software GPL and it should therefore be made public if distributed (which the mobile app was). This is indeed the case, and it is not addressed in Abrahami’s response. Releasing partial components on Github is not enough.

Wix WAS called Wixpress in the past

Matt refers to Wix having ripped off WordPress’ brand by calling themselves Wixpress. I did a quick Google search for “Wixpress Ltd.” and lo and behold, Wix started out as Wixpress. Press releases were filed under the Wixpress name, and the official company name listed in the filing on  the stock exchange is Wixpress Ltd. It is noted in the document that they changed their business name in the US (and after checking the Israeli business registry, it was also changed here), and are now called Ltd. Their Brazilian subsidiary is still referred to as Wixpress in the filing. None of us know them as Wixpress, so they seem to have smartly shifted away from that brand early on. In fact, while they initially filed for a trademark for this name, they abandoned it in 2010 which indicates they weren’t invested in that name. But the bottom line is, Wixpress is part of their legacy. Why did Abrahami deny that when we all know how to use Google? A more straightforward response would have been “Yeah, in the beginning we made a mistake with our brand, and if you ask anyone what Wixpress is, they probably won’t know since we abandoned that early on in favor of”

The tone of Wix’s response is…unsettling

There’s something about Abrahami’s tone in his email that irks me.

Maybe it’s how he calls Matt “dude” and says “I didn’t know we were fighting”. You’re not fighting so don’t make it into a fight: Matt wants you to do what he thinks is right.

Maybe it’s how he tries to deflect accusations of brand-stealing by saying that WordPress has shifted from being only about blogs to being about websites too – I mean, what? Is he saying that Wix has sole ownership of the website-building space and Automattic stole that from them? A company is allowed to expand its focus for goodness sake.

Maybe it’s how he invites Matt to coffee, which is a poor reading of a serious situation. If you think someone ripped off your stuff, you may not feel like getting together with them for coffee…probably more like a court of law.

Also, why didn’t he link to Matt’s original post?! That’s a rhetorical question, but it looks shady. I think it would have been better for the company to have publicized the response by the engineer responsible for the mobile app that Abrahami links to in his post. It addresses the issues in a less…um…passive-aggressive dude-filled way and he shows how he tried to collaborate and share with Automattic’s engineering team. It still doesn’t provide satisfactory answers to the issues at hand, but it’s easier to digest.

Bottom line: lessons to be learned

  1. If you are a commercial company, think a bajillion times before using Open Source code in your proprietary software. Licensing is not only an ethical issue, but can also cause problems down the line if unreported and discovered during due diligence. Here’s a good article on this subject: It also seems that the Apple Store does not allow GPL code-based apps since the app store’s protections negate the GPL license. So yikes.
  2. Don’t respond to issues immediately, and especially not over the weekend. Matt posted on Friday, and Abrahami posted on Saturday. People are taking a break over the weekend, there’s no rush! It seems that Abrahami wrote in the heat of the moment. He probably should have first had his legal team review the situation, and if necessary, apologize, remove the app from the app store, remove the GPL code and re-release it; OR keep the GPL code, add attribution, and publicly distribute it. In general, your legal/PR/marketing team isn’t working at full capacity on Saturday/Shabbat, so wait until they get to work, review the issues calmly, and then respond. No one’s going anywhere.
  3. Make sure you have people on your team who understand the nuances of other cultures. What’s interesting is that many of my Israeli Facebook hi-tech friends are commending Abrahami on his post. As a grew-up-in-Canada person, I’m cringing when I read it, and I’m not the only one. If you are a non-American company, make sure you have an Anglo on your PR team who has a better grasp of what kinds of tones and intonations work well outside of Israel. We Israelis have a very direct way of communicating, and while that can be great at times, it’s definitely not always great.

Look, Matt’s approach to GPL can come across as zealous. And the GPL has never been tried in an American court of law, so it’s not clear that Matt is right about everything in this case (or other cases). And it’s also possible that Wix made an innocent mistake. Open Source licensing can be confusing and unclear. I’m sure there’s a way to resolve this quickly and painlessly. In the future though, all hi-tech companies should strive to increase awareness of what Open Source means, have decent legal counsel, and a good PR team that reacts thoughtfully to branding and legal crises.

This post was originally published at Why Wix’s response to WordPress re GPL license is weak on WP GarageWP Garage – WordPress tricks, hacks, and tips.

Preferred Languages Chat Summary: October 26

After introducing the Preferred Languages project less than two weeks ago, we held our first meeting on Wednesday. This is a summary of the Preferred Languages chat from October 26. (Slack log)

Attendees: @casiepa, @chantalc, @petya, @swissspidy


After going through initial feedback on the introduction post, there was a short recap of ideas that have been suggested so far:

  • Have a translated setting of preferred languages, where the translators would define the locales they should “fall back” to in case there’s no translation available. E.g. de_CH states to prefer de_DE and de_DE_formal after that.
    • Pros: simple solution, no UI changes needed
    • Cons: very subjective, unclear how the expected translations would be installed
  • Rely on the HTTP_ACCEPT_LANGUAGE header every browser sends, which is set based on the user’s system preferences.
    • Pros: no UI changes needed, it’s a reliable standard
    • Cons: no support for formal language variants, unclear how the expected translations would be installed
  • Extend the UI to allow setting multiple preferred languages
    • Pros: leaves the choice to the user, clear how to install the expected translations, could be used together with HTTP_ACCEPT_LANGUAGE
    • Cons: makes the UI option more complex

Besides that, it was suggested to display a note to the user when there’s a missing translation to encourage them to translate WordPress. However, this can be worked on independently in #23348.

Before we get into details and possible solutions, more (non-technical) research needs to be done. We’re mostly interested in how other platforms and content management systems handle this. Think Wikipedia, Facebook, Drupal, Joomla, and so on. WordPress isn’t the only system facing this situation.

Research results can be shared in the comments to this post. Every help in that regard is highly appreciated! So far I’ve collected some information about Drupal and Joomla. After that, I’ll publish the results in a separate blog post.

The next meeting will be on Wednesday, 9 November 2016, 17:00 UTC in the #core-i18n Slack channel.