What is Schema?
The latest hoop everyone has to jump through to get search engines (ie: Google, Bing, etc) to notice their website is the trend toward schema markup.
Schema markup is code added to your webpages that provides search engines with structured data that eases the task of figuring out what your website is all about so it can render judgement as to whether it’s worthy of inclusion in the search results presented to people looking up a particular topic. Schema markup does nothing to affect the appearance of your site to visitors.
Chasing After Search Engine Recognition
In creating a website, at what point do we become so absorbed with pleasing the search engines that we completely surrender whatever aesthetic and functional goals we had when we started?
My first website was created when Microsoft Word added the option of saving documents in HTML. Then I graduated to Microsoft FrontPage and eventually Dreamweaver. At that point I switched to Content Management Systems like ShowKase, Piwigo, and WordPress and finally WordPress exclusively. With regard to websites, I am a casual amateur. My website is personal. With the advent of digital photography, it’s target audience has diminished almost (but not quite) to the point of extinction. And, the fact that it’s totally non-commercial, by itself, probably makes search engines less interested in alerting the world to its existence. The search industry is a massive…

But, commercial or private, your site will never end up in any search results if search engines don’t know what your site has to offer. And, given the growth in the number of websites, KruegerPhoto is not only a very small fish, but the pond has grown exponentially in size and population since my website first appeared online in the 1990s.
There’s a Plugin for that, Right?
I am currently in the process of redoing my main website by rescanning my prints for higher resolution and placing them in Foogallery based WordPress pages that can eliminate unused display space and maximize image size. But, as I write this article, Foogallery hasn’t jumped on the schema bandwagon yet and, not being a coder myself, I searched for a plugin to add the Schema markup. As I write this, I have only found one plugin capable of adding meaningful schema markup code for foogallery pages and that’s Schema & Structured Data for WP and AMP and all it does is add the code to identify a Foogallery as an ImageGallery. It does nothing to embed ImageObjects from the galleries.
I’ve done a bit of research, so I’m aware of some of the schema markup tools available for doing it manually. Aside from the Schema.org site itself, there are sites like Schemantra where you can fill in a form with the data and it will generate cut-and-paste code that you can insert into your WordPress pages. Sounds great, except I would have to manually fill out all those fields for each image when most of the info (image size, title, description, copyright, etc) is already available within my WordPress site.
Learning by Experimentation
I certainly could do it all manually, but it occurred to me that I might be able to generate the code within WordPress simply by creating a basic WP page, add the images to a WP Gallery block (rather than a Foogallery), and then use the Schema & Structured Data plugin to generate the Schema markup which can then be transferred over to the Foogallery page. I was so proud of myself for coming up with that ingenious solution! But, it didn’t work quite as I’d hoped.
I created a gallery page with four images, used the Schema & Structured Data plugin to add the schema code, verified that the code included the ImageGallery with the four embedded ImageObjects, published it, and ran the URL through the Google Rich Results Test. It failed. No items detected. The schema was not wrong. It just didn’t include everything Google wanted, apparently because it did not have a property about the who owns or created the image. Once I added the creator property, Google Rich Results Test detected all four images. Yay! That gave me hope. But creating a dummy temporary gallery just to get the plugin to generate the code seemed more labor intensive than just generating the code manually.
Closing In On Success
Using the tools, examples, and instruction from other online sources, including Google’s AI, I manually created an ImageGallery JSON-LD schema block, including ImageObjects, for the 4-image Things: Not Studio gallery and tested it in Google’s Rich Results Test. It passed, detecting all four images. I then took the schema block, enclosed between <SCRIPT> tags, and pasted it into a “Custom HTML” block on the Foogallery page, just bellow the Foogallery shortcode block. I updated the page, submitted the URL to the Google Rich Results test, and it passed. So, that’s my path forward.
I have now started doing the same thing for other Foogalleries on my WP site. I create the schema block in Notepad++ using templates, while having the specific Foogallery gallery Attachment Details Editor open in my browser so I can cut and paste the image URL, title, description, and image dimensions from the Media Manager into the scheme template for each image. It takes less than 30 second per image. In fact, I now learned enough that I may stop using the the schema plugin completely and do all the schema on my WP site manually. Personally, I found the plugin a bit confusing, lacking in clarity on exactly what it was doing, and difficult to customize it to meet my needs. To be fair, it’s entirely possible that my problem was just not knowing WTF I was doing.
A Final Note Regarding SEO for Gallery Sites
I have tried three popular SEO plugins and found one thing in common with all of them: None of them are designed for use in websites where images are the dominant content. They all want you to add more text. To paraphrase, “You fail the 600 word target per page”. Initially, I actually started adding more text to gallery pages to satisfy that guideline. No more. My website is a gallery site. It has categorized collections of images, each with its own title, description, and technical data. I’ll forego being listed on Google before I will clutter up the galleries with text just because Google or a bunch of SEO plugins have a one-size-fits-all recipe for getting into search results. Personally, I think grading based on repetition of phrases and keywords borders on the absurd as well. I’d be happy with a plugin that simply presents me with relevant fields, with short recommendations for each in one place (like a tab in the settings).
Disclaimer
As I said above, I am a casual amateur with regard to website creation, so I don’t speak for everyone, but the competition in plugins seems to incentivize frivolous unnecessary complexity and an upselling over usefulness. The SEO and Forms plugins I’ve used are examples of that mentality.
Enshittification?
When I installed WPForms to add a simple contact form to my website, my sitemap from Inspyder Sitemap Creator suddenly grew from 46 lines to 1300. Sure, they can be excluded from my sitemap, but why are they there and why are they detectable by a crawler? How does a sitemap generator even know they’re there? Why are they not excluded with a noindex tag which most sitemap generators respect? Others may be comfortable with hiding it from view with a filter, but not me.
I put the question to Grok on X as to whether WPForms intentionally uses its templates to promote its company to search engines. Grok’s response is below.

Interestingly, when I asked similar questions of Google AI, the response rejected the notion that WPForms was advertising itself to search engines through it’s templates, until I switched to an “ingognito window” when its response was closer to the Grok response. It’s possible that the reason for that can be explained by Cory Doctorow’s theory of “Enshittification“. I had never heard of Cory Doctorow until I started researching why WPForms caused all those extra lines in my sitemap file. It was Google AI’s replies that prompted me to try Grok. I assume other WP aficionados know this stuff, but it was a surprise to me.

Leave a Reply