• Home
  • Get help
  • Ask a question

Short break for holiday season

The holiday season is with us and we'll be off from December 25, 2025 and back on January 5nd, 2026.

Don't forget to look up the documentation, including the videos, your answer may already be there! Likewise, be sure to check the Development versions area, in case your problem may already have been solved.

In case of emergency (ie your site is down with a fatal error directly linked to one of our extensions), please contact us by email (see contact icon at the bottom of all pages of this site).

All the best to your and your family! See you around in 2026!

 

#12141 – Product Structured Data with Joomla Articles

Posted in ‘Pre-sale questions’
This is a public ticket. Everybody will be able to see its contents. Do not include usernames, passwords or any other sensitive information.
Wednesday, 17 December 2025 18:24 UTC
godweb

Hello,

I am evaluating 4SEO for Joomla and I have a question regarding Structured Data management, specifically for Product markup.

My setup is:

  • Joomla

  • Joomla Custom Fields

  • Yootheme Pro for layout and content presentation
    I manage an online shop where products are primarily handled as Joomla articles, enriched with Custom Fields.

After reviewing the documentation
https://weeblr.com/doc/products.forseo/current/sd/overview/
I could not find a clear confirmation on the following points:

  1. Is it possible to assign Schema.org Product structured data to a Joomla article using 4SEO?

  2. If yes, can Joomla Custom Fields be used to map Product properties, in particular price, currency, and availability?

  3. Does 4SEO allow flexible field-to-property mapping for Product schema when the content is not managed by a native e-commerce extension?

  4. If available, could you please share an example page or demo where Product structured data is applied using 4SEO?
    I would appreciate being able to review the generated structured data code in that example.

Thank you in advance for your clarification.

Wednesday, 17 December 2025 18:41 UTC
wb_weeblr

Hi

Is it possible to assign Schema.org Product structured data to a Joomla article using 4SEO?

You can assign any type to any page, whether Joomla native or 3rd-party extension content.

If yes, can Joomla Custom Fields be used to map Product properties, in particular price, currency, and availability?

Yes, for pretty much all fields:

 

Does 4SEO allow flexible field-to-property mapping for Product schema when the content is not managed by a native e-commerce extension?

Not sure what that mean.Which field? Joomla custom fields? if so, that looks like the same question as #2. If not, please state which fields you are talking about.

 

If available, could you please share an example page or demo where Product structured data is applied using 4SEO?
I would appreciate being able to review the generated structured data code in that example.

I do not have anything like that. The 4SEO output is of course 100% valid.

Best regards,

Yannick Gaultier

 

 
Sunday, 21 December 2025 18:50 UTC
godweb

Hi Yannick,

I decided to purchase 4SEO in order to properly evaluate it on a staging site, taking advantage of the 30-day refund period. My goal is to objectively assess the SEO quality and Google compliance of the structured data it generates, compared to another solution I’m currently using.

While testing Product structured data, I noticed a few points I’d like to report / clarify.

1. Offer and priceCurrency output

At the moment, Product structured data is generated with:

  • offers always as an array

  • priceCurrency output as an array, even when a single currency is used

Example currently generated by 4SEO:

"offers": [
{
"@type": "Offer",
"price": 105,
"priceCurrency": ["GBP"],
"availability": "https://schema.org/InStock"
}
]

From a Schema.org / Google Rich Results perspective:

  • priceCurrency should be a string, not an array

  • when only one offer exists, Google generally expects a single Offer object, not an array

I could not find an option in the UI to control this behavior.

2. Single price field limitation

It also appears that only one field can be mapped to the Product price.

In the travel industry, this is often limiting.
Tours frequently have multiple price tiers (e.g. Adult, Child, Senior), which would ideally be represented as multiple Offer objects within the same Product.

Example of a desired output:

"offers": [
{ "@type": "Offer", "name": "Adult", "price": "105.00", "priceCurrency": "GBP" },
{ "@type": "Offer", "name": "Child", "price": "75.00", "priceCurrency": "GBP" }
]

Being able to map multiple Joomla Custom Fields to multiple Offer objects would be an exceptional feature for tours and activities, and a strong differentiator for 4SEO.

3. Workflow / UX consideration

One additional point related to workflow:

With my current structured data plugin, schema configuration can be done directly inside the article editor or menu item, which makes it quick to apply or adjust structured data on a single page.

With 4SEO, even when structured data is needed for one specific page only, it is necessary to leave the article editor and create a separate structured data rule.

This is not a functional limitation, but it can make the workflow less immediate when working on many pages that each require slightly different structured data settings.

4. Context

While testing, I realized I had already opened a similar ticket back in 2021 🙂
It’s been great to see how much 4SEO has evolved since then, especially with the graph-based structured data approach.

At this stage, I’m simply trying to base my decision on objective SEO and Google compliance criteria.

Could you please let me know:

  • if any of the above behavior is configurable and I may have missed it

  • or if improvements in Offer handling, multi-price mapping, or workflow are planned?

Thank you for your time and for the continuous development of 4SEO.

Best regards,
Paolo

Monday, 22 December 2025 10:39 UTC
wb_weeblr

Hi

1. Offer and priceCurrency output

From a Schema.org / Google Rich Results perspective:

priceCurrency should be a string, not an array

Outputing the currency as an array would be a bug, but fortunately I do not see 4SEO doing that. The output is a string, for instance:

            "offers": [
                {
                    "@type": "Offer",
                    "availability": "http://schema.org/InStock",
                    "price": 120,
                    "priceCurrency": "USD",
                    "url": "https://dev.weeblr.net/_projects/products/platforms/j5/blog/your-template",
                    "itemCondition": "http://schema.org/NewCondition"
                }
            ],
            "sku": "product_sku_12345"
        }

I can't say why you are seeing otherwise, and in any case I'd need to see the actual real page to investigate any further.

I'd suggest opening a support ticket in the 4SEO support category (you are still in pre-sale here) with a clear description on how you are entering that currency, so that I can try and reproduce what you are doing.

when only one offer exists, Google generally expects a single Offer object, not an array

No, there's no such requirements or even preference.

It also appears that only one field can be mapped to the Product price.

In the travel industry, this is often limiting.

Correct. There's currently no plan to change that. I'd suggest using the "Custom structured data" available in all rules to add additional offers, though.

With my current structured data plugin, schema configuration can be done directly inside the article editor or menu item, which makes it quick to apply or adjust structured data on a single page.

With 4SEO, even when structured data is needed for one specific page only, it is necessary to leave the article editor and create a separate structured data rule.

Well, yes. 4SEO structured data feature is designed for setting up rules that apply to multiple pages

If you plan on adding structured data on a page by page basis, I'm not sure why you would use an extension? why are you not simply using Joomla built-in structured data system?

Best regards,
Yannick Gaultier
https://weeblr.com | @weeblr