Structured Data Errors in schema-type WebPage


#1

I am noticing a structured data error in schema-type WebPage which appears to be Jupiter-Generated.

(see structured data error here)

(The property “mainContentOfPage” is not recognized by Google for an object of type WebPage.)

This appears to be untrue:
https://schema.org/WebPage
https://schema.org/mainContentOfPage

The nature of the error appears to be that the property mainContentOfPage is rendering as structured data with a superfluous set of quotation marks around it. Observe the page’s container div, which renders into:

id="theme-page" class="master-holder clearfix" role=""main"" itemprop=""mainContentOfPage""

Could anyone be so kind as to point us in the direction of the source code which generates this schema type, and a hook which we might use to customize/correct it?


#2

You can find this in global.php file on line 97 present in themes/jupiter/framework/helpers/ folder and init.php file on line 103 present in themes/jupiter/framework/plugin-integrations/woocommerce folder.

Both these files call the schema function which can be found in schema-markup.php file on line 15 present in themes/jupiter/framework/helpers/ folder.


#3

Thank you so much for the pointer. With your help, we were able to fix the error.


#4

Oh great, I’m glad the issue is fixed :slightly_smiling_face:


#5

Hello @erika_saracco I got the exact same problem. Could you please explain how you get rid of the superfluous set of quotation marks?
Thank you!


#6

Is a problem with the esc_attr() function… the code doesnt escape properly… I dont know how to fix it. Maybe she can post here the solution.

(Y)


#7

You have to manually strip out the esc_attr() from the line 97 in the global.php file. ( Don’t forget the closing bracket )

If the parent theme updates, you manually have to strip it out again.

A child theme fix does not seem to be available.


#8

I have noticed the same problem.
I’d like to know if it’s safe to remove esc_attr() in this case… is there a risk to open for some XSS issue?

Is this markup really needed or it can be simply removed?


#9

I’m getting the same error do you know what you did to fix the error? Thanks!


#10

For the rest of the users, please edit the global.php file present in themes/jupiter/framework/helpers/ folder and go to line 97

You will see this code:

<div id="theme-page" class="master-holder <?php echo esc_attr( $master_holder_class ); ?> clearfix" <?php echo esc_attr( $schema_markup ); ?>>

Replace it with the below code:

<div id="theme-page" class="master-holder <?php echo esc_attr( $master_holder_class ); ?> clearfix" <?php echo $schema_markup; ?>>


Invalid value in field "itemtype"
#11

As a follow up, I also thought this Search Console validation error was rooted in the double quotation marks. For my site, removing the esc_attr does fix the issue of the double quotation marks, but Search Console still throws validation errors. It is rendering HTML that looks like the following and giving the error: Invalid value in field “itemtype”.

<div id="theme-page" class="master-holder clearfix" itemscope=&quot;itemscope&quot; itemtype=&quot;https://schema.org/Blog&quot; >

It does this for a variety of schema markup outputs.

My gut instinct is that this error in Search Console is benign, but I also wouldn’t be surprised if Google was starting to use its validation tools to identify “clean code” as a ranking factor, and it’s not worth risking it. Anyone else have any advice for validating these supposed errors?

I thought maybe it was a character type issue like how sometimes the apostrophe can get messed up with the slanted looking one, but that doesn’t seem to be the case here.


#12

same here
last post is nearly two week ago.
new websites do not get crawled because of this issue

please fix this bug
as soon as possible


#13

Yep Same issue here.

Structured data with syntax errors detected

Invalid value in field “itemtype”

div id=“theme-page” class=“master-holder clearfix” itemscope=“itemscope” itemtype=“https://schema.org/Blog


#14

Thanks so much! This worked perfectly for my site.


#15

Has or will this fix be rolled out in a theme update?


#16

Hi. Thank you for the solution. But I had some more issues. You have to do the same in themes/jupiter/comments.php at lines 5 and 8


#17

Hi can you share with us the fix for the comments.php files thank you


#18

Even with this fix the issue is not solved on my search console have you some solution to provide ?


#19

I Replace the Code in global.php but this doesn’t work for me. Anyone has another Idea?


#20

@Patrick_Boschert Can you confirm that you have the latest version of the theme on your website? Because the fix is already released in the latest version.