Announcement

Collapse
No announcement yet.

Invalid enum value in field "itemCondition" (in "offers")

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Invalid enum value in field "itemCondition" (in "offers")


    Google search console tells me I have critical issues on this new site and pages.
    Example
    https://www.cyclebitz.com/ws-12v-hea...er-shirt-women

    Top critical issues*

    Invalid enum value in field "itemCondition" (in "offers")

    Duplicate field "price" (in "offers")

    This is the code I have in PROD
    (I tried to copy paste the code here but get this 403 error)
    Screenshot 2023-12-04 062740.png




    pat
    http://lockitt.com

    #2
    Patd265 The issue is not with the code that you posted, it is because there is another itemprop for price on the page. Take a look at the price that is being rendered on the PROD page:

    itemprop.JPG
    Notice that there is an itemprop already being assigned to the price thus resulting in a duplicate value on the page.

    As for the itemcondition error I believe you have an incorrect value being passed. According to Google Merchant Center these are the supported values:

    in_stock
    out_of_stock
    preorder
    backorder

    https://support.google.com/merchants.../6324448?hl=en



    Nicholas Adkins
    Technical Training Specialist / Miva, Inc.
    [email protected]
    https://www.miva.com/mivalearn

    Comment


      #3
      Nick but I am not sure how that duplicate value happens or what to do about it. All I did is assign that product to a price group.
      pat
      http://lockitt.com

      Comment


        #4
        Patd265 I am not sure that assigning that product to the price group caused the issue.

        The issue is there is HTML code on the PROD page that shows to itemprop="price" values. There is one on the HTML element wrapping the price value and another one in the code that you posted (which is probably on the PROD details template towards the bottom).

        You only need one of those to be on the page at a time, my suggestion would be to remove the itemprop="price" value that is in the code that you posted.
        Nicholas Adkins
        Technical Training Specialist / Miva, Inc.
        [email protected]
        https://www.miva.com/mivalearn

        Comment


          #5
          Nick thanks, I will have a look at that but I am way out of my comfort zone when it comes to all that code. It's mindboggling to me that a platform as robust but also as costly as Miva, has all this stuff going on. This a brand-new site, installed last month on a shadows theme, and we have to deal with all this stuff.
          pat
          http://lockitt.com

          Comment


            #6
            Nick itemprop="price" shows up 3 times in the PROD page code.
            2 times in Template in Google Rich Snippets and 1 time in Product Page Layout.

            Not sure what exactly I can safely remove from Product Page Layout.

            Thanks
            Patrick

            Template
            Code:
            <mvt:if expr="l.settings:attributemachine:product:inv_leve l">
            <mvt:assign name="l.availability_inv_level" value="l.settings:attributemachine:product:inv_lev el"/>
            <mvt:do name="l.formatted_variant_price" file="g.Module_Root $ g.Store:currncy_mod:module" value="CurrencyModule_AddFormatting( g.Store:currncy_mod, l.settings:attributemachine:product:price )" />
            <meta itemprop="price" content="&mvt:attributemachine:product:price;"/>
            <mvt:else>
            <mvt:assign name="l.availability_inv_level" value="l.settings:product:inv_level"/>
            <meta itemprop="price" content="&mvt:product:price;"/>
            </mvt:if>

            Product Display Layout
            Code:
            <div class="c-form-list__item">
            <div class="x-product-layout-purchase__pricing">
            <span class="x-product-layout-purchase__pricing-current">
            <span id="price-value" itemprop="price" content="&mvte:product:price;">&mvt:product:format ted_price;</span>
            </span>
            <s id="price-value-additional" class="u-color-gray-500 x-product-layout-purchase__pricing-original"><mvt:if expr="l.settings:product:base_price GT l.settings:product:price">&mvt:product:formatted_b ase_price;</mvt:if></s>
            </div>
            pat
            http://lockitt.com

            Comment


              #7
              Patd265 It is actually only rendering once in the first snippet of code. There is a conditional that is checking if the product inventory level is available and if so the code assigns a value to the l.availability_inv_level variable and formats the variant price and adds it to the l.formatted_variant_price variable. If the statement is false it will just assign the l.availability_inv_level value and output the price as the itemprop price.

              You may want to just remove itemprop="price" from the second snippet because the first snippet fill output the variant price if available or the regular price.
              Nicholas Adkins
              Technical Training Specialist / Miva, Inc.
              [email protected]
              https://www.miva.com/mivalearn

              Comment


                #8
                Nick okay, so what code do I remove exactly in Product Page Layout without breaking something?
                I mean, from where to where?
                This is all clear stuff for you guys but for most of us it may as well be Mandarin.
                Appreciate the help
                pat
                http://lockitt.com

                Comment


                  #9
                  Patd265 My suggestion would be to update this code:

                  HTML Code:
                  <div class="c-form-list__item">
                      <div class="x-product-layout-purchase__pricing">
                          <span class="x-product-layout-purchase__pricing-current">
                              <span id="price-value" itemprop="price" content="&mvte:product:price;">&mvt:product:format ted_price;</span>
                          </span>
                          <s id="price-value-additional" class="u-color-gray-500 x-product-layout-purchase__pricing-original">
                          <mvt:if expr="l.settings:product:base_price GT l.settings:product:price">&mvt:product:formatted_b ase_price;</mvt:if></s>
                  </div>
                  To look like this:

                  HTML Code:
                  <div class="c-form-list__item">
                      <div class="x-product-layout-purchase__pricing">
                          <span class="x-product-layout-purchase__pricing-current">
                              <span id="price-value" content="&mvte:product:price;">&mvt:product:format ted_price;</span>
                          </span>
                          <s id="price-value-additional" class="u-color-gray-500 x-product-layout-purchase__pricing-original">
                          <mvt:if expr="l.settings:product:base_price GT l.settings:product:price">&mvt:product:formatted_b ase_price;</mvt:if></s>
                  </div>
                  This will not break any functionality on the page, if there are still issues then you can always roll back the version history on the template.
                  Nicholas Adkins
                  Technical Training Specialist / Miva, Inc.
                  [email protected]
                  https://www.miva.com/mivalearn

                  Comment


                    #10
                    Nick Code replaced and site did not break :-)
                    That hopefully takes care of the of the duplicate price.
                    I am not sure about how to fix the ItemCondition issue (as in where exactly)
                    pat
                    http://lockitt.com

                    Comment


                      #11
                      Nick any idea where the "itemCondition": "new", is coming from in offers?
                      Example page https://www.cyclebitz.com/ws-12v-heated-layer-shirt-men

                      In PROD > Template I have this.
                      <meta itemprop="priceCurrency" content="USD" />
                      <meta itemprop="seller" content="&mvte:global:store:name;" />
                      <meta itemprop="itemCondition" content="http://schema.org/NewCondition" />

                      But I cannot find where this is coming from. Google does not accept the "New" condition

                      Screenshot 2023-12-05 071210.png
                      pat
                      http://lockitt.com

                      Comment


                        #12
                        Patd265 That looks like it is JSON being rendered on the page. Check in the admin under CSS/JavaScript Resources then the JavaScript Resources tab for the resource with a code of product-json-ld. You should be able to edit the resource and find that line of code.

                        The JSON method has also been used in the ReadyThemes to pass along schema data. It looks like your store has some on the page template and some within the JSON file.
                        Nicholas Adkins
                        Technical Training Specialist / Miva, Inc.
                        [email protected]
                        https://www.miva.com/mivalearn

                        Comment


                          #13
                          Nick found and fixed it. Thanks.
                          It doesn't feel right that a brand new Miva store, fresh out of the box, has all these SEO errors that need these time consuming fixes.
                          We still have a ton of other errors on google and bing.
                          pat
                          http://lockitt.com

                          Comment


                            #14
                            Patd265 These issues that you are seeing are not in the current default Shadows Framework. More than likely you have an old version of Shadows that has not been updated when the software updates the framework. When you are in the admin and go to User Interface > Frameworks what is the date that the Shadows Framework was last applied to the store?

                            When Miva introduces new versions of the software there are often times updates are made to the Shadows Framework as well. When Miva updates it does not alter an templates so just because you are updating the Miva Software does not mean that you are updating the Shadows Framework that is applied to the store.

                            Here are all the updates to the Shadows framework since Miva Version 10.0.0 when the framework was added to the software: https://github.com/mivaecommerce/sha...-file#versions

                            If it has been a couple years since you last updated the Shadows Framework it might be time to create a new branch and apply the Shadows framework to that branch and test out the new framework.
                            Nicholas Adkins
                            Technical Training Specialist / Miva, Inc.
                            [email protected]
                            https://www.miva.com/mivalearn

                            Comment


                              #15
                              Nick Shadows version is 10.08 and last applied 10-12-2023
                              Seems like a latest version, isn't it?
                              pat
                              http://lockitt.com

                              Comment

                              Working...
                              X