Intro

This blog is pretty narrow in scope, relatively speaking. It only has a handful of pages, and you could see just about everything it has to offer in probably a half-hour. That's not to say that creating a website like this isn't complicated, though. In fact, quite a number of things have gone awry with it since its creation, and a good amount of them were things that I hadn't expected.


Relative Path Problems

When putting together my pages, I had to decide where the interlinking would take place. There are links in the header, footer, and occasionally the bodies of some articles that will take a user between pages on my site. Some links within articles will take users to external sources, but those aren't relative here.

Instead of using a full URL to link amongst a site's own pages, it's wiser to use relative paths, which uses a project's hierarchy to its advantage. For instance, using this current article as an example, your current resource location looks something like this: Articles / Blog Blues

To get back to the list of articles from here, a relative link will need to look up one level in this hierarchy. The attribute in our link element won't use a full URL with https://... and so on — if just needs to look like this: "../index.html"

The dots preceding the forward slash tell the link to look one level up for the target resource. A single dot would indicate that the link will look in the same level as the current resource. Since the other articles are in the same level as each other, those relative paths would use just a single dot. In the first couple iterations of this site, I was less than consistent with getting this correct.

On smaller screens, the header will display a menu option to open a side-menu which contains links to both the top-level pages, and three articles. I must've used two dots for all of these, causing the site to look for articles at the top-level which caused some interlinking issues. It's a silly mistake, but thankfully an easy fix.

Structured Data Stresses

For a deeper look at structured data's purpose, give this article a skim.

On the home page that lists all the articles, there's structured data schema tucked away into the <head> element which tells search engines that the items on the page are indeed articles. Everytime I publish a new article, I need to add its corresponding structured data to the array and update the total amount of items within it.

There were definitely at least one or two occurrences of me forgetting to update the total number of articles here, and on the most recent article, I missed a comma between it and the one after it. Doesn't sound like a huge deal, but it makes both items on either side of the missed comma to be unreadable. Issues like this get pointed out by Google's own structured data schema check tool so eventually I found it, but it's possible I missed out on some search engine indexing during the interim.

This was a bit tougher to find than the relative pathing issue, but not some brain-wracking hurdle.

Issues with Indexing

To have a webpage be indexed means that Google (or another search engine) recognizes and stores it. This is what allows a webpage to be found on the Search Engine Results Page. To help facilitate this process, you can submit a sitemap file to the Google Search Console in order to explicitly list all of your pages and directories. This makes it easier for Googlebot to crawl your pages, learn how frequently it should do so, and understand how often the pages are updated.

When designing a sitemap, a few syntax rules need to be followed in order for them to be read properly. I'd included a "www" in all of the URLs listed in my XML file before realizing that my domain does not include that prefix. I'd also added a ".html" to the end of each of these because I presumed that the file extension was necessary, but with some further research, I found that I was better off removing them.

These issues amounted to most of my initial articles not being separately indexed. My goal with this blog isn't necessarily to have a ton of high-ranking pages, so this wasn't a devastating revelation but it was something to improve nonetheless.

These are quick fixes all in all, especially considering that I update this site at least monthly; I can submit a new sitemap each time I deploy a new version of the site. The catch is that Google isn't in any rush to reevaluate an indexed site, so I'm at the mercy of its re-crawling schedule.

Learning From It All

Looking at these troubles all in one place makes me realize that they're not huge blunders — they're manageable hiccups with varying ramifications. The errors with my relative paths are kind of a rookie mistake, but it's par for the course to have things like that. Sometimes there are spelling errors because my IDE doesn't have spell check built-in. Sue me.

It's like anything else. Mistakes mean you have room to grow, and practice is the method by which you learn to be better.


Written by Steven DiResta
May 31st, 2026
Back