Optimizing SEO for blog

Hello. I have recently made a blog with the Kube Theme. I’m trying to optimize the seo and things like that, but I’m having troubles. I’ve looked at other themes as well and Kube’s SEO is super weird compared to others.

Here is the repo of my website, please tell me what I could do. Thank you!

I will made a Json+LD

here : Marking up json-ld



1 Like

What do you in practical terms mean when you say “SEO”? What is it you want to change?

For me SEO is good quality content, clean and valid HTML and some minimal set of meta tags. Your theme seems to do a good job in this regard and the content is up to you.

The theme looks perfectly fine to me, not “weird” at all. What is it you do not understand?

And if you do not like it, why not switch to another?

My exact problem is with the images.
When I try to add a picture/thumbnail (however you want to call it) to an article, like this:
This happens:


for the og/twitter card bro, not the article itself


try to embed it with base64

src=url(data:image/jpeg;base64,{{ $picture.Content | base64Encode }})

In the front matter, images needs to be an array for the opengraph template (even if it only has one element).

So try
images = ["https://tomanistor.com/images/blog/vapourwave-palm-trees.jpg"]

1 Like

Thank you so much! Now it works, but only for the content (blog posts).

I’m trying to figure out how to do this for the main page/index (raduciurca.com).

Any ideas?

This also needs to be an array in config.toml

How’d I work that out? If you look at this partial

You see that it grabs the zeroth element of that array to fill out the meta tags.

Thank you for your quick response. I found where I should’ve put the image for the index. It was an index.md file. The file structure of this theme is weird.

Not weird it’s in the docs:

Some themes put the homepage config in the configuration files (config.toml) but you can also do it with /content/_index.md.

In a previous comment, Disqus is enabled.

Disqus comments aren’t search engine friendly. Here’s some reasons to migrate from Disqus:

  1. https://victorzhou.com/blog/replacing-disqus/
  2. https://old.reddit.com/r/programming/comments/b9022a/switching_off_of_disqus_reduced_my_page_weight_by/
  3. https://medium.com/remys-blog/ejecting-disqus-4120e9985823

You may avoid these problems by switching to Staticman, which makes use of GitHub/GitLab Pull/Merge Requests instead of issues. Under Staticman’s model, static comments are YML/JSON files stored in the remote GitHub/GitLab repo (usually under data/comments, configurable through the path parameter in root-level staticman.yml), and through a static blog generator (Jekyll/Hugo/etc), the stored data are rendered as part of the content by

{{ .message | markdownify }}

This gives a total ownership of a static site’s comments, so that the site owner can do whatever (s)he wants with the comments.

:information_source: There’re many ways to Rome, say JAM Stack, Jekyll AWS comments, etc.

What exactly is the correct way to make the images entry in config.toml?

This doesn’t work

images = ["suitecrm-logo.png"]

nor this

images = ["images/suitecrm-logo.png"]

:point_right: My logo file resides in static/images/suitecrm-logo.png

I couldn’t even get it to work with an absolute URL (which exists on the Internet):

images = ["https://docs.suitecrm.com/images/suitecrm-logo.png"]

In all these attempts there is never a og:image present in my meta. The other Open Graph tags are fine…

Source of site here.

What am I doing wrong?


You are using a different theme than the original poster. The one you are using does not use image meta tags in its layouts, therefore the image config is never used.

So I ran your site, and I can see this generated when I inspect a page:

<meta property="og:image" content="https://docs.suitecrm.com/images/suitecrm-logo.png">

Do you get a different result?

Thanks for your reply!

When you say “I ran your site” do you mean you pulled from Git and built it locally?

I have it building on Netlify and live at https://docs.suitecrm.com. You can see the tags there are

    <meta property="og:title" content="SuiteCRM Documentation">
<meta property="og:description" content="User, Developer, Administrator and Community Guides for SuiteCRM">
<meta property="og:type" content="website">
<meta property="og:url" content="https://docs.suitecrm.com/">
<meta property="og:updated_time" content="2018-09-22T20:22:17+01:00"><meta property="og:site_name" content="SuiteCRM Documentation">

    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
    <meta name="generator" content="Hugo 0.53">
    <meta name="description" content="User, Developer, Administrator and Community Guides for SuiteCRM">
<meta name="author" content="SalesAgility">

    <link rel="shortcut icon" href="/images/favicon.png" type="image/x-icon">
<link rel="icon" href="/images/favicon.png" type="image/x-icon">

    <title>SuiteCRM Documentation :: SuiteCRM Documentation</title>

So it gets the og: tags, but not og:image. This is coming from this partial here:

(in fact, my theme wasn’t including this, so I added it there).

Could it be the fact that its built with Hugo 0.53? Which one did you use?
(I’m afraid upgrading Hugo is not easy right now for our site :slightly_frowning_face:)


yes I cloned your site and built with 0.60. There’s been a few changes between 0.53 and the latest Hugo version. If you are unable to use a different Hugo version for the whole site, you might want to roll your own opengraph partial instead, based on the current internal one.

1 Like

Ok, I am convinced this is a problem related to my Hugo version. I will just add the meta tag by hand, hard-coded, until I can upgrade. Thanks for your assistance!