This post may contain affiliate links. If you make a purchase through these links, we may earn a commission at no additional cost to you.
Ever found yourself staring at a WordPress setting called “Product attribute base” and thinking, “What on earth is that?” You’re not alone. It sounds a bit technical, a bit jargony, and frankly, a bit dull. But stick with me, because understanding this little setting is one of the keys to making your online shop easier for customers to use and easier for search engines like Google to understand.
Think of it like organising a massive library. If every book was just thrown on a random shelf, finding what you want would be a nightmare. You need a system—a section for fiction, another for history, and so on. In the world of online shopping with WordPress and its brilliant e-commerce sidekick, WooCommerce, the product attribute base is a core part of your shop’s filing system. It helps create clean, logical web addresses (URLs) that guide both people and search engines to exactly the right place.
In this guide, we’re going to demystify it completely. We’ll break down what attributes are, why their web addresses matter so much, and how you can customise the “product attribute base” to build a shop that’s not just powerful, but also professional, tidy, and quintessentially well-organised—the digital equivalent of a perfectly managed British high street shop. Whether you’re selling handmade jumpers from a cottage in the Cotswolds or high-tech gadgets from a London startup, getting this right will make a world of difference.
Part 1: Back to Basics – What Exactly Are Product Attributes?
Before we can tackle the ‘base’, we need to get our heads around ‘attributes’. It’s a simple idea you already know from real-life shopping.
When you walk into a clothes shop to buy a T-shirt, you don’t just grab the first one you see. You have preferences. You think about:
- Colour: Do I want it in blue, red, or classic black?
- Size: Does it come in Small, Medium, or Large?
- Material: Is it cotton, polyester, or a blend?
These characteristics—colour, size, material—are attributes. They are the specific details that describe a product and help customers choose the right option for them.
In WooCommerce, attributes do the exact same job. They are the descriptive labels you add to your products to help shoppers filter, search, and select items. For a T-shirt, your attributes might be ‘Colour’ and ‘Size’. For a bag of coffee, they could be ‘Bean Type’ (Arabica, Robusta) and ‘Grind’ (Whole Bean, Espresso, French Press).
Why Are Attributes So Important for an Online Shop?
Attributes are the secret sauce that makes an online store feel helpful and intuitive. Here’s why they’re not just a ‘nice-to-have’, but an absolute must:
- They Help Customers Find Things: Imagine a shop with 200 different T-shirts. Without attributes, a customer would have to scroll through every single one to find a large, blue, cotton shirt. It’s frustrating and time-consuming. With attributes, they can simply click the ‘Blue’ filter, then the ‘Large’ filter, and instantly see only the T-shirts that match their needs. This is called faceted search, and it’s what modern shoppers expect.
- They Power Product Variations: This is a big one. Let’s say your T-shirt costs £15 for a small but £17 for an extra-large. Or perhaps the red version is a special edition and costs more. Attributes allow you to create variable products. A variable product is a single product page (e.g., ‘The Classic Tee’) where the customer can use dropdown menus to select the specific ‘variation’ they want (e.g., Large, Red). WooCommerce can then show the correct price, stock level, and even a different photo for that specific combination.
- They Provide Crucial Information: Attributes give customers key details at a glance. On a product page, seeing attributes like ‘Material: 100% Organic Cotton’ or ‘Brand: British Made’ can be the final piece of information a customer needs to feel confident and click ‘Add to Basket’.
Global vs. Custom Attributes: What’s the Difference?
WooCommerce gives you two ways to create attributes, and it’s useful to know when to use each.
Global Attributes: The Reusable Organisers
A Global Attribute is one you set up once and can then apply to any product across your entire store. You create them in your WordPress dashboard under Products → Attributes.
- When to use them: Use global attributes for characteristics that apply to lots of different products. ‘Colour’ and ‘Size’ are perfect examples. You don’t want to have to type out “Red, Green, Blue” every single time you add a new T-shirt, jumper, or pair of socks. With a global ‘Colour’ attribute, you define those colours (which are called terms) once, and then you can simply select them for any product you create.
- The big advantage: They are essential for filtering. The product filtering widgets in WooCommerce (the ones you see in a shop’s sidebar) can only work with global attributes.
Custom Attributes: The One-Off Details
A Custom Attribute is one you create directly on the product editing page. It is unique to that single product and won’t be saved for reuse elsewhere.
- When to use them: Use custom attributes for information that is highly specific and unlikely to be repeated. For example, if you’re selling a limited edition print, you might add a custom attribute like ‘Print Number’ with a value of ‘34 of 100’. Or for a vintage piece of furniture, you could add ‘Year of Manufacture: c. 1962’.
- The limitation: Because they are unique to one product, they can’t be used for site-wide filtering. No one is going to filter your shop for ‘Print Number: 34 of 100’. It’s just extra, helpful info for the customer looking at that specific item.
For our discussion about the product attribute base, we are almost always talking about Global Attributes, because these are the ones that create shared pages and need a logical URL structure.
Part 2: Understanding URLs and Permalinks – Your Shop’s Digital Address System
Okay, so we know what attributes are. Now, let’s talk about another piece of the puzzle: permalinks.
A permalink is just a fancy word for the full web address (URL) of a specific page on your site. It’s what you see in your browser’s address bar. For example, the permalink for a blog post might be:
https://yourshop.co.uk/blog/five-ways-to-wear-a-scarf
A good permalink is:
- Permanent: It shouldn’t change, which is why it’s called a ‘perma-link’.
- Descriptive: It should give you a clue about what the page is about.
- Clean: It should be easy to read and remember.
In WordPress, you can control how your permalinks are structured. You do this under Settings → Permalinks. For a WooCommerce shop, this page has extra options that are vital for how your products, categories, and, yes, your attributes are displayed.
What are Attribute Archives? The Hidden Pages of Your Shop
This is where things get interesting. When you set up a global attribute, like ‘Colour’, WooCommerce automatically does something very clever in the background. It creates a new webpage for every single term in that attribute.
So, if your ‘Colour’ attribute has the terms ‘Blue’, ‘Red’, and ‘Green’, WooCommerce creates three new pages:
- A page showing all your blue products.
- A page showing all your red products.
- A page showing all your green products.
These pages are called attribute archives. They are incredibly useful. You can add links to them in your site’s menu, send customers directly to a page of all your red items during a Valentine’s Day sale, or use them in your marketing.
But for these pages to exist, they need a URL. And that’s where the product attribute base finally makes its grand entrance.
The Role of the Slug in a URL
Every part of a URL after the .co.uk
is made up of slugs. A slug is the URL-friendly version of a name. It’s usually all lowercase and has hyphens instead of spaces.
- Page Title: Our Five Best Products
- Slug:
our-five-best-products
WooCommerce uses slugs to build the URLs for your attribute archives. A typical URL for an attribute archive page looks like this:
https://yourshop.co.uk / [something] / [attribute_name] / [term_name]
Let’s break that down:
https://yourshop.co.uk
: Your website address.[something]
: This is a base prefix. By default, WooCommerce often usesproduct
orshop
.[attribute_name]
: The slug for the attribute itself (e.g.,colour
orsize
).[term_name]
: The slug for the specific term (e.g.,blue
orlarge
).
So, the URL for all your blue products might look like this by default:
https://yourshop.co.uk/product/colour/blue
This structure is okay, but it’s a bit clunky. The word ‘product’ doesn’t add much value, and the whole thing is quite long. This is the problem that the product attribute base setting is designed to solve.
Part 3: The Star of the Show – The Product Attribute Base Explained
We’ve arrived. We know what attributes are and we know they create archive pages with their own URLs.
The Product attribute base setting in Settings → Permalinks lets you control that middle part of the URL. It allows you to define the default structure—the ‘base’—for all your attribute archive URLs.
Let’s look at the default options WooCommerce gives you.
A typical view of the Permalink settings page in WordPress, with WooCommerce options highlighted.
Under the “Product permalinks” section, you’ll see an option for “Product attribute base”. WooCommerce gives you a few choices, and you can also type in your own custom base.
Let’s imagine we run a fashion store. Our global attributes are ‘Colour’ (with slug colour
) and ‘Brand’ (with slug brand
).
Default Setting: shop/attribute/term (or similar)
Often, the default structure includes the product base (e.g., shop
or product
). This results in URLs like:
https://yourshop.co.uk/shop/colour/red/
https://yourshop.co.uk/shop/brand/harris-tweed/
Is it any good? It’s functional, but not perfect. It’s a bit long and the word shop
can feel redundant.
Customising Your Product Attribute Base
This is where you can take control and make your URLs much cleaner and more intuitive. You can change the base to whatever you like.
Option 1: Using a Generic, Descriptive Base
You could change the base to something that describes what these pages are. For example, you could use filter
, browse
, style
, or feature
.
Let’s try setting the custom base to filter
:
Now our URLs become:
https://yourshop.co.uk/filter/colour/red/
https://yourshop.co.uk/filter/brand/harris-tweed/
Why is this better?
- It’s more logical: It tells the user (and Google) that this URL is a filtered view of your products.
- It’s shorter: Shaving off even a few characters can make a URL look cleaner.
- It’s consistent: It provides a neat, uniform structure for all attribute archives.
Option 2: Using the Attribute Name as the Base (The Holy Grail)
This is the most popular and often the most elegant solution. In the permalink settings, you can choose an option that looks like “Custom base” but then you actually define the base on the attribute itself. This is a little more advanced but gives the cleanest result.
You do this by editing each individual global attribute under Products → Attributes.
- Go to Products → Attributes.
- Click ‘Edit’ on the attribute you want to change (e.g., ‘Colour’).
- You’ll see a field for its Slug. Let’s say the slug is
colour
. - There’s a checkbox: “Enable Archives?”. You must tick this box. If you don’t, the attribute archive pages won’t be created at all.
When archives are enabled, WooCommerce uses the attribute’s slug as the base. This completely removes that extra middle layer.
The URLs now become beautifully simple:
https://yourshop.co.uk/colour/red/
https://yourshop.co.uk/brand/harris-tweed/
Why is this the best approach for most shops?
- It’s super short and clean: The URLs are as concise as they can possibly be. This looks professional and is easy for a customer to read and understand.
- It’s great for SEO (Search Engine Optimisation): A shorter, keyword-rich URL is generally preferred by search engines. The URL
yourshop.co.uk/colour/red/
sends a very strong signal to Google that this page is about red-coloured products. It’s simple, direct, and powerful. - It’s intuitive: It follows a logical hierarchy that makes sense to a human. Website -> Attribute -> Value. Simple.
A Quick Word of Warning Before You Change Anything!
If your shop has been live for a while, be very careful when changing your permalink structure.
Changing permalinks means all the old URLs for your attribute archives will stop working. This can lead to:
- Broken Links: If you’ve linked to these pages from blog posts, social media, or other websites, those links will now lead to a “404 Not Found” error.
- SEO Problems: Google has already indexed your old URLs. If they suddenly disappear, it can temporarily harm your search rankings.
If you decide to change your permalink structure on an established site, you must set up 301 redirects. A 301 redirect is a permanent signpost that tells browsers and search engines that a page has moved. It automatically forwards anyone visiting the old URL to the new one.
You can do this using a WordPress plugin like Redirection or by editing your site’s .htaccess
file (this is for advanced users only!). For example, you would need to redirect /shop/colour/red/
to /colour/red/
.
Our advice? Get your permalink structure right from the very beginning when you first set up your shop. It saves a lot of headaches later on.
Part 4: Practical Guide – How to Set Up Your Attribute Base Step-by-Step
Let’s walk through the process. We’ll set up a new global attribute and configure its permalink to be as clean as possible.
Scenario: We run a British bakery online. We want to sell cakes and allow customers to filter them by ‘Dietary Information’ (e.g., Gluten-Free, Vegan).
Step 1: Create the Global Attribute
- In your WordPress dashboard, go to Products → Attributes.
- On the left-hand side, under “Add new attribute”, fill in the details:
- Name:
Dietary Information
(This is the friendly name customers see). - Slug:
dietary
(This is the URL-friendly version. Keep it short and descriptive). - Enable Archives?: Tick this box! This is the crucial step that allows us to create the archive pages and control their URLs.
- Default sort order: ‘Name’ is usually fine. This just controls the order the terms appear in dropdowns.
- Name:
- Click the “Add attribute” button.
The interface for adding a new global attribute. The ‘Enable Archives?’ box is clearly checked.
Step 2: Add Terms to Your Attribute
Now that we’ve created the ‘Dietary Information’ attribute, we need to add the options (the terms).
- On the right-hand side of the Attributes page, you’ll see your new attribute in the table. Click on its name, “Dietary Information”, or the “Configure terms” link.
- You’ll be taken to a new screen to add the terms.
- Under “Add new Dietary Information”, add your terms one by one:
- Name:
Gluten-Free
- Slug:
gluten-free
- Click “Add new Dietary Information”.
- Name:
- Repeat for other terms:
- Name:
Vegan
- Slug:
vegan
- Name:
Nut-Free
- Slug:
nut-free
- Name:
You’ve now successfully created a global attribute with three terms.
Step 3: Check Your Main Permalink Settings
Before we go any further, let’s make sure our main product permalinks are set up nicely.
- Go to Settings → Permalinks.
- Scroll down to “Product permalinks”.
- A good, common setting here is “Shop base with category” or just “Shop base”. This makes your main product URLs look like
yourshop.co.uk/shop/victoria-sponge
. It’s a solid choice. - Crucially, leave the “Product attribute base” field blank or set to the default. We don’t need a custom base here because we enabled archives on the attribute itself. This tells WooCommerce to use the attribute’s slug (
dietary
) as the base. - Click “Save Changes”. It’s always a good idea to save your permalinks again after making any changes, as this flushes the rewrite rules and makes sure WordPress knows about the new URL structures.
Step 4: Assign the Attribute to a Product
Now, let’s add our new attribute to a product.
- Go to Products → Add New or edit an existing product.
- Scroll down to the “Product data” box.
- Select the “Attributes” tab on the left.
- Click the dropdown menu that says “Custom product attribute” and select our new attribute: “Dietary Information”. Click “Add”.
- A new panel will appear. In the “Value(s)” box, you can now select the terms we created. Let’s say our Victoria Sponge is nut-free. We’ll select “Nut-Free”.
- Make sure the “Visible on the product page” checkbox is ticked. This displays the attribute information in the ‘Additional Information’ tab on the product page.
- Update or Publish your product.
Step 5: See the Results!
Now for the magic. Go to your shop’s front-end and find the Victoria Sponge. On the product page, you should see “Dietary Information: Nut-Free”.
But more importantly, let’s check our new attribute archive URL. Type this into your browser’s address bar:
https://yourbakery.co.uk/dietary/nut-free
(Replacing yourbakery.co.uk
with your actual domain name).
You should see a new page, beautifully formatted, showing the Victoria Sponge and any other products you’ve tagged as ‘Nut-Free’. The URL is short, clean, and perfectly optimised. Success!
Part 5: Common Problems and Troubleshooting
Sometimes things don’t go quite to plan. Here are a few common issues you might run into and how to fix them.
Problem 1: My Attribute Archive Links Go to a “404 Not Found” Page
This is the most common issue. You click a link to /colour/blue/
and get an error.
Possible Causes and Solutions:
- Archives are not enabled: This is the number one culprit. Go back to Products → Attributes, edit the attribute in question (e.g., ‘Colour’), and make sure the “Enable Archives?” box is ticked.
- Permalinks need refreshing: WordPress can sometimes get confused about its URL structure. The quickest fix is to go to Settings → Permalinks and simply click the “Save Changes” button again, without changing anything. This forces WordPress to rebuild its list of URLs.
- A plugin conflict: A poorly coded plugin (often related to SEO or custom post types) can interfere with WooCommerce’s permalinks. Try temporarily deactivating your other plugins one by one to see if the problem disappears. If it does, you’ve found the culprit.
- Slug conflict: Make sure your attribute slug (e.g.,
colour
) isn’t the same as a page slug, a post slug, or a category slug. If you have a page on your site with the slugcolour
, WordPress won’t know whether to show the page or the attribute archive. Make your slugs unique.
Problem 2: My URLs Still Have /product/ or /shop/ in Them
You’ve set up your attributes to have their own archives, but the URLs still look like yourshop.co.uk/product/colour/blue/
.
Cause and Solution:
This usually happens because you’ve set a custom base in the main Settings → Permalinks page. Go to that page and look at the “Product attribute base” field. Clear out anything you’ve typed in there and save your changes. If you let the attribute itself control the URL (by enabling archives), you don’t need to set a global base.
Problem 3: I Have Two Attributes in the URL (e.g., /colour/blue/size/large/)
This isn’t really a problem, it’s a feature! When a customer filters by more than one attribute on your shop page, WooCommerce will often create a compound URL to show the combined result.
This is perfectly fine and is actually quite good for SEO, as it creates highly specific landing pages. You generally don’t need to do anything about this.
Part 6: The Future – Why This Matters More Than Ever
Getting your URL structure right isn’t just about being tidy. In the increasingly competitive world of e-commerce, these small details add up to create a significant advantage.
- User Experience (UX): Clean URLs build trust. A shopper who sees a logical, readable web address feels more confident they are in the right place. It’s a small psychological win that contributes to a better overall shopping experience.
- SEO and Voice Search: As search engines get smarter, they place more emphasis on structured data and clear site architecture. Simple, keyword-rich URLs like
/brand/harris-tweed/
are easy for Google to crawl, index, and understand. Furthermore, as voice search grows (“Hey Google, find me a Harris Tweed jacket”), having clear, semantic URLs helps search assistants find your products more easily. - Scalability: As your shop grows from 20 products to 2,000, having a logical and consistent URL structure from day one will keep your site organised and manageable. You’ll be building on a solid foundation, not a messy one.
Mastering the product attribute base isn’t a glamorous task. It won’t double your sales overnight. But it’s a fundamental part of building a professional, robust, and future-proof online store. It’s the digital equivalent of making sure your shop’s sign is clear, the aisles are well-labelled, and the shelves are neatly stacked. It shows care, attention to detail, and respect for your customers—and in the long run, that’s what builds a brand that lasts.
Further Reading
To dive deeper into the technical side of WooCommerce and WordPress development, here are some highly respected resources:
- The Official WooCommerce Documentation: The ultimate source of truth for all things WooCommerce. WooCommerce Docs
- WordPress.org Codex: The official developer handbook for WordPress itself. WordPress Codex
- Smashing Magazine: An excellent resource for web design and development articles, often with in-depth tutorials. Smashing Magazine
- CSS-Tricks: While focused on CSS, this site covers a huge range of web development topics with practical, easy-to-understand guides. CSS-Tricks