New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Related posts not shown #554

Closed
fa-ribeiro opened this Issue Sep 25, 2016 · 23 comments

Comments

Projects
None yet
5 participants
@fa-ribeiro
Contributor

fa-ribeiro commented Sep 25, 2016

  • This is a question about using the theme.
  • I believe this to be a bug with the theme --- not Jekyll, GitHub Pages or one of the bundled plugins.
  • This is a feature request.
  • I have updated all gems with bundle update.
  • I have tested locally with bundle exec jekyll build.

Environment informations

  • Minimal Mistakes version: 4.0.1 (feature/theme-gem branch)
  • jekyll gem version: 3.2.1 (master branch)
  • Operating system: Mac OSX 10.11.6

Expected behavior

Related post should appear on every post as they are enabled by default in my _config.yml:

# Defaults
defaults:
  # _posts
  * scope:
      path: ""
      type: posts
    values:
      related: true

Steps to reproduce the behavior

  1. create a couple of posts
  2. enable related posts on _config.yml

Additional information

If I insert the following code block (extracted from _layouts/single.html) in a post, the related posts are shown as expected:

{% if page.id and page.related and site.related_posts.size > 0 %}
  <div class="page___related">
    {% if site.data.ui-text[site.locale].related_label %}
      <h4 class="page__related-title">{{ site.data.ui-text[site.locale].related_label | default: "You May Also Enjoy" }}</h4>
    {% endif %}
    <div class="grid__wrapper">
      {% for post in site.related_posts limit:3 %}
        {% include archive-single.html type="grid" %}
      {% endfor %}
    </div>
  </div>
{% endif %}

Any ideas?
Thanks in advance for any help!

@mmistakes

This comment has been minimized.

Show comment
Hide comment
@mmistakes

mmistakes Sep 25, 2016

Owner

Link to a repo so I can troubleshoot? Most likely it's a content or config problem on your end.

Owner

mmistakes commented Sep 25, 2016

Link to a repo so I can troubleshoot? Most likely it's a content or config problem on your end.

@fa-ribeiro

This comment has been minimized.

Show comment
Hide comment
@fa-ribeiro

fa-ribeiro Sep 25, 2016

Contributor

it's a kinda private repo, but here it is the _config.yml: _config.yml.zip

Contributor

fa-ribeiro commented Sep 25, 2016

it's a kinda private repo, but here it is the _config.yml: _config.yml.zip

@mmistakes

This comment has been minimized.

Show comment
Hide comment
@mmistakes

mmistakes Sep 25, 2016

Owner

Config looks fine. Could be content or something else but since I can't see that to test hard to say.

Owner

mmistakes commented Sep 25, 2016

Config looks fine. Could be content or something else but since I can't see that to test hard to say.

@fa-ribeiro

This comment has been minimized.

Show comment
Hide comment
@fa-ribeiro

fa-ribeiro Sep 25, 2016

Contributor

ok, possibly it's something wrong somewhere... I'll review everything again.
Many thanks for you help.

Contributor

fa-ribeiro commented Sep 25, 2016

ok, possibly it's something wrong somewhere... I'll review everything again.
Many thanks for you help.

@mmistakes

This comment has been minimized.

Show comment
Hide comment
@mmistakes

mmistakes Sep 26, 2016

Owner

Also just noticed you're using the feature/theme-gem version of the theme. Since it's not officially released it's possible there's a bug in there, but I'd be surprised if that was the case as the layouts haven't been modified.

What happens if you pull down the latest stable release and drop in the contents of your _posts folder?

Since it's working fine on the demo site I have a suspicion there's something going on with the theme in gem form. Or site.related_posts is being picky on what posts it determines are related. On the demo site for example there are a few posts that don't display any related items even though related: true.

Owner

mmistakes commented Sep 26, 2016

Also just noticed you're using the feature/theme-gem version of the theme. Since it's not officially released it's possible there's a bug in there, but I'd be surprised if that was the case as the layouts haven't been modified.

What happens if you pull down the latest stable release and drop in the contents of your _posts folder?

Since it's working fine on the demo site I have a suspicion there's something going on with the theme in gem form. Or site.related_posts is being picky on what posts it determines are related. On the demo site for example there are a few posts that don't display any related items even though related: true.

@fa-ribeiro

This comment has been minimized.

Show comment
Hide comment
@fa-ribeiro

fa-ribeiro Sep 26, 2016

Contributor

Yes, I'm testing the feature/theme-gem branch.
My Gemfilehas:

gem "jekyll", :git => "https://github.com/jekyll/jekyll.git"
gem "minimal-mistakes-jekyll", :git => "https://github.com/mmistakes/minimal-mistakes.git", :branch => "feature/theme-gem"

I copied the posts from the minimal-mistakes/example/_posts/ (again the feature/theme-gem branch) into my _posts. As result, the latest 4 posts have related posts, but not the others; as soon as I remove the added posts, no more related posts are shown.

Contributor

fa-ribeiro commented Sep 26, 2016

Yes, I'm testing the feature/theme-gem branch.
My Gemfilehas:

gem "jekyll", :git => "https://github.com/jekyll/jekyll.git"
gem "minimal-mistakes-jekyll", :git => "https://github.com/mmistakes/minimal-mistakes.git", :branch => "feature/theme-gem"

I copied the posts from the minimal-mistakes/example/_posts/ (again the feature/theme-gem branch) into my _posts. As result, the latest 4 posts have related posts, but not the others; as soon as I remove the added posts, no more related posts are shown.

@mmistakes

This comment has been minimized.

Show comment
Hide comment
@mmistakes

mmistakes Sep 26, 2016

Owner

Did some testing of my own and there are some posts in the demo site that don't show related posts even though they should. Adding {{ site.related_posts | inspect }} to _layouts/single.html shows outputs:

this for a post with related

[#<Jekyll::Document _posts/2016-02-24-welcome-to-jekyll.md collection=posts>, #<Jekyll::Document _posts/2013-08-16-markup-syntax-highlighting.md collection=posts>, #<Jekyll::Document _posts/2013-05-22-markup-more-images.md collection=posts>, #<Jekyll::Document _posts/2013-01-11-markup-html-tags-and-formatting.md collection=posts>, #<Jekyll::Document _posts/2013-01-10-markup-image-alignment.md collection=posts>, #<Jekyll::Document _posts/2013-01-09-markup-text-alignment.md collection=posts>, #<Jekyll::Document _posts/2013-01-05-markup-title-with-special-characters.md collection=posts>, #<Jekyll::Document _posts/2013-01-05-markup-title-with-markup.md collection=posts>, #<Jekyll::Document _posts/2012-05-22-markup-text-readability.md collection=posts>, #<Jekyll::Document _posts/2012-03-15-layout-sidebar-custom.md collection=posts>]

and this for ones without

nil

I don't really know how Jekyll determines what is related and what isn't but for that appears to be where the bug or problem is. I suspect it's content related but not sure why that would matter. Sites like @jhabdas's appears to work just fine so it doesn't appear to be the theme's fault.

Where it gets even stranger is only the most 4 recent posts on the demo site show related posts. I took the most recent post (which is showing related posts), changed the date so it became the last post in the list, and the related posts disappeared.

Thought maybe limit: 4 has something to do with it in this line {% for post in site.related_posts limit:4 %} so I took that out too, and it made no difference.

I'm really stumped here. Only thing I can think of would be to not use site.related_posts and instead use site.posts and filter on tags/categories instead to fake "related posts".

Owner

mmistakes commented Sep 26, 2016

Did some testing of my own and there are some posts in the demo site that don't show related posts even though they should. Adding {{ site.related_posts | inspect }} to _layouts/single.html shows outputs:

this for a post with related

[#<Jekyll::Document _posts/2016-02-24-welcome-to-jekyll.md collection=posts>, #<Jekyll::Document _posts/2013-08-16-markup-syntax-highlighting.md collection=posts>, #<Jekyll::Document _posts/2013-05-22-markup-more-images.md collection=posts>, #<Jekyll::Document _posts/2013-01-11-markup-html-tags-and-formatting.md collection=posts>, #<Jekyll::Document _posts/2013-01-10-markup-image-alignment.md collection=posts>, #<Jekyll::Document _posts/2013-01-09-markup-text-alignment.md collection=posts>, #<Jekyll::Document _posts/2013-01-05-markup-title-with-special-characters.md collection=posts>, #<Jekyll::Document _posts/2013-01-05-markup-title-with-markup.md collection=posts>, #<Jekyll::Document _posts/2012-05-22-markup-text-readability.md collection=posts>, #<Jekyll::Document _posts/2012-03-15-layout-sidebar-custom.md collection=posts>]

and this for ones without

nil

I don't really know how Jekyll determines what is related and what isn't but for that appears to be where the bug or problem is. I suspect it's content related but not sure why that would matter. Sites like @jhabdas's appears to work just fine so it doesn't appear to be the theme's fault.

Where it gets even stranger is only the most 4 recent posts on the demo site show related posts. I took the most recent post (which is showing related posts), changed the date so it became the last post in the list, and the related posts disappeared.

Thought maybe limit: 4 has something to do with it in this line {% for post in site.related_posts limit:4 %} so I took that out too, and it made no difference.

I'm really stumped here. Only thing I can think of would be to not use site.related_posts and instead use site.posts and filter on tags/categories instead to fake "related posts".

@jhabdas

This comment has been minimized.

Show comment
Hide comment
@jhabdas

jhabdas Sep 26, 2016

Contributor

Scroll down on any post on https://habd.as to see the related posts feature and feel free to inspect my blog source code: https://github.com/jhabdas/habd.as. Good luck!

Contributor

jhabdas commented Sep 26, 2016

Scroll down on any post on https://habd.as to see the related posts feature and feel free to inspect my blog source code: https://github.com/jhabdas/habd.as. Good luck!

@mmistakes

This comment has been minimized.

Show comment
Hide comment
@mmistakes

mmistakes Sep 26, 2016

Owner

@jhabdas I'm stumped why it's working fine for you but not the MM's demo site. I wrote the damn thing and I can't figure out what's going wrong 😅

It's really strange. After the 4th most recent post they stop showing. I thought maybe it was working for you because you're using a newer Jekyll gem, but looks like it's the older GitHub Pages one.

And in @fa-ribeiro's case their using the latest Jekyll off of master.

So strange!

Owner

mmistakes commented Sep 26, 2016

@jhabdas I'm stumped why it's working fine for you but not the MM's demo site. I wrote the damn thing and I can't figure out what's going wrong 😅

It's really strange. After the 4th most recent post they stop showing. I thought maybe it was working for you because you're using a newer Jekyll gem, but looks like it's the older GitHub Pages one.

And in @fa-ribeiro's case their using the latest Jekyll off of master.

So strange!

@jhabdas

This comment has been minimized.

Show comment
Hide comment
@jhabdas

jhabdas Sep 26, 2016

Contributor

I wrote the damn thing and I can't figure out what's going wrong

ROFL

Might be worth leaving this open and see if anyone else is having issues besides @fa-ribeiro. Also, @mmistakes when you're ready to come to the dark side I'd love to work together to port this theme to Hugo.

Contributor

jhabdas commented Sep 26, 2016

I wrote the damn thing and I can't figure out what's going wrong

ROFL

Might be worth leaving this open and see if anyone else is having issues besides @fa-ribeiro. Also, @mmistakes when you're ready to come to the dark side I'd love to work together to port this theme to Hugo.

@mmistakes

This comment has been minimized.

Show comment
Hide comment
@mmistakes

mmistakes Sep 26, 2016

Owner

@jhabdas That's what I was thinking. If it's a widespread issue and not something to do with a weird content edge-case I'm surprised I hadn't heard about yet.

RE: Hugo. I've looked at it and considered switching my personal site over just because it takes so long to build. Everyone always says it builds faster than Jekyll when you have a lot of posts but it would be a crap ton of work for me to rebuild just to test that. So I haven't. PR's like this give me faith Jekyll's build speed will improve.

I've made a lot of improvements pulling out anything that isn't strictly for converting .md files into .html files, and that helped a lot.

Not to mention I didn't really care for the template syntax. It's close enough to Liquid sure, but it just looks ugly to me.

Owner

mmistakes commented Sep 26, 2016

@jhabdas That's what I was thinking. If it's a widespread issue and not something to do with a weird content edge-case I'm surprised I hadn't heard about yet.

RE: Hugo. I've looked at it and considered switching my personal site over just because it takes so long to build. Everyone always says it builds faster than Jekyll when you have a lot of posts but it would be a crap ton of work for me to rebuild just to test that. So I haven't. PR's like this give me faith Jekyll's build speed will improve.

I've made a lot of improvements pulling out anything that isn't strictly for converting .md files into .html files, and that helped a lot.

Not to mention I didn't really care for the template syntax. It's close enough to Liquid sure, but it just looks ugly to me.

@icicimov

This comment has been minimized.

Show comment
Hide comment
@icicimov

icicimov Oct 6, 2016

Hi guys,

Maybe unrelated but I have the same issue in my gh-pages branch I forked from the master about 5-6 days ago. I have the following in my _config.yml file:

defaults:
  # _posts
  - scope:
      path: ""
      type: posts
    values:
      layout: single
      read_time: true
      comments: true
      share: true
      related: true
      author_profile: true

but related posts is not showing on any of my posts, see https://icicimov.github.io/blog/

I was under impression this should be working by default but maybe I'm missing something. I'm not sure how the plugin/feature works ie is it parsing the posts body to find a match based on some words or is just picking up 4 random posts etc. Probably I'm just missing something, some non-minimal mistake :-(

Thanks,
Igor

icicimov commented Oct 6, 2016

Hi guys,

Maybe unrelated but I have the same issue in my gh-pages branch I forked from the master about 5-6 days ago. I have the following in my _config.yml file:

defaults:
  # _posts
  - scope:
      path: ""
      type: posts
    values:
      layout: single
      read_time: true
      comments: true
      share: true
      related: true
      author_profile: true

but related posts is not showing on any of my posts, see https://icicimov.github.io/blog/

I was under impression this should be working by default but maybe I'm missing something. I'm not sure how the plugin/feature works ie is it parsing the posts body to find a match based on some words or is just picking up 4 random posts etc. Probably I'm just missing something, some non-minimal mistake :-(

Thanks,
Igor

@mmistakes

This comment has been minimized.

Show comment
Hide comment
@mmistakes

mmistakes Oct 6, 2016

Owner

I believe there may be a bug in Jekyll core and how it handles related posts.

The theme is using this to output 4 related posts, which is wrapped in a conditional that only shows the module when there are related posts and the feature is enabled.

{% for post in site.related_posts limit:4 %}
  {% include archive-single.html type="grid" %}
{% endfor %}

When I remove limit:4 from the for loop related posts works again, but it shows 10 related posts (which is the default behavior). For whatever reason the limit is limiting it to the first 4 posts of the site, instead of limiting it to showing 4 related posts on a given post... if that makes sense.

For example the 4 most recent posts show related posts fine, but when you hit say the 5th post there are no related posts shown. The limit:4 is affecting that when it really shouldn't.

There's probably another way to limit the amount of related posts shown that I'll investigate to get around the issue.


As far as what related_posts uses to parse, I'm not entirely sure. Because GitHub Pages disables LSI (latent semantic indexing) I'm pretty sure it outputs an array of the 10 most recent posts, which makes the whole thing pointless. On my personal site I use a plugin that provides better matches for this reason.

Owner

mmistakes commented Oct 6, 2016

I believe there may be a bug in Jekyll core and how it handles related posts.

The theme is using this to output 4 related posts, which is wrapped in a conditional that only shows the module when there are related posts and the feature is enabled.

{% for post in site.related_posts limit:4 %}
  {% include archive-single.html type="grid" %}
{% endfor %}

When I remove limit:4 from the for loop related posts works again, but it shows 10 related posts (which is the default behavior). For whatever reason the limit is limiting it to the first 4 posts of the site, instead of limiting it to showing 4 related posts on a given post... if that makes sense.

For example the 4 most recent posts show related posts fine, but when you hit say the 5th post there are no related posts shown. The limit:4 is affecting that when it really shouldn't.

There's probably another way to limit the amount of related posts shown that I'll investigate to get around the issue.


As far as what related_posts uses to parse, I'm not entirely sure. Because GitHub Pages disables LSI (latent semantic indexing) I'm pretty sure it outputs an array of the 10 most recent posts, which makes the whole thing pointless. On my personal site I use a plugin that provides better matches for this reason.

@mmistakes

This comment has been minimized.

Show comment
Hide comment
@mmistakes

mmistakes Oct 6, 2016

Owner

I came up with a way of showing "related posts" by like post.tags instead of using the built in site.related_posts array.

The advantage here is you actually get a different set of related posts on each post instead of just the "most recent" posts that currently happens due to LSI being disabled on GitHub Pages.

Using this spaghetti code of Liquid in _layouts/single.html will display related posts that share the same tags as the current post. It will show 1-4 posts depending on how many matches it finds.

 {% comment %}<!-- show posts by related tags when `related: true` -->{% endcomment %}
  {% if page.related %}
    {% assign n_posts = 0 %}
    {% for post in site.posts %}
      {% if post.id == page.id %}{% continue %}{% endif %}
      {% for this_tag in page.tags %}
          {% if post.tags contains this_tag %}
            {% if n_posts == 0 %}
              <div class="page__related">
                {% if site.data.ui-text[site.locale].related_label %}
                  <h4 class="page__related-title">{{ site.data.ui-text[site.locale].related_label | default: "You May Also Enjoy" }}</h4>
                {% endif %}
                <div class="grid__wrapper">
            {% endif %}
            {% include archive-single.html type="grid" %}
            {% assign n_posts = n_posts | plus: 1 %}
            {% break %}
          {% endif %}
      {% endfor %}
      {% if n_posts > 3 %}{% break %}{% endif %}
    {% endfor %}
    {% if n_posts > 0 %}
        </div>
      </div>
    {% endif %}
  {% endif %}

Thoughts?

Owner

mmistakes commented Oct 6, 2016

I came up with a way of showing "related posts" by like post.tags instead of using the built in site.related_posts array.

The advantage here is you actually get a different set of related posts on each post instead of just the "most recent" posts that currently happens due to LSI being disabled on GitHub Pages.

Using this spaghetti code of Liquid in _layouts/single.html will display related posts that share the same tags as the current post. It will show 1-4 posts depending on how many matches it finds.

 {% comment %}<!-- show posts by related tags when `related: true` -->{% endcomment %}
  {% if page.related %}
    {% assign n_posts = 0 %}
    {% for post in site.posts %}
      {% if post.id == page.id %}{% continue %}{% endif %}
      {% for this_tag in page.tags %}
          {% if post.tags contains this_tag %}
            {% if n_posts == 0 %}
              <div class="page__related">
                {% if site.data.ui-text[site.locale].related_label %}
                  <h4 class="page__related-title">{{ site.data.ui-text[site.locale].related_label | default: "You May Also Enjoy" }}</h4>
                {% endif %}
                <div class="grid__wrapper">
            {% endif %}
            {% include archive-single.html type="grid" %}
            {% assign n_posts = n_posts | plus: 1 %}
            {% break %}
          {% endif %}
      {% endfor %}
      {% if n_posts > 3 %}{% break %}{% endif %}
    {% endfor %}
    {% if n_posts > 0 %}
        </div>
      </div>
    {% endif %}
  {% endif %}

Thoughts?

@icicimov

This comment has been minimized.

Show comment
Hide comment
@icicimov

icicimov Oct 6, 2016

@mmistakes , thanks for the code it works for me, tried and applied to my site. Matching by tags looks like right direction to go in terms of logic about finding related posts if you ask me.

At the end, just wanted to say thanks for this awesome theme!

icicimov commented Oct 6, 2016

@mmistakes , thanks for the code it works for me, tried and applied to my site. Matching by tags looks like right direction to go in terms of logic about finding related posts if you ask me.

At the end, just wanted to say thanks for this awesome theme!

@mmistakes

This comment has been minimized.

Show comment
Hide comment
@mmistakes

mmistakes Oct 6, 2016

Owner

@icicimov Great! Yeah I think related posts by tags does a better job of conveying "related posts" than whatever basic method the default uses.

Owner

mmistakes commented Oct 6, 2016

@icicimov Great! Yeah I think related posts by tags does a better job of conveying "related posts" than whatever basic method the default uses.

@mmistakes mmistakes modified the milestone: 4.0 Oct 7, 2016

kimoppalfens pushed a commit to kimoppalfens/kimoppalfens.github.io that referenced this issue Dec 12, 2016

@justinrummel

This comment has been minimized.

Show comment
Hide comment
@justinrummel

justinrummel Dec 24, 2016

Contributor

Trying to convert my site to the Gem version of MM. Was this ever added to the Gem version or should I copy my old single.html to the _layouts/ folder?

Contributor

justinrummel commented Dec 24, 2016

Trying to convert my site to the Gem version of MM. Was this ever added to the Gem version or should I copy my old single.html to the _layouts/ folder?

@jhabdas

This comment has been minimized.

Show comment
Hide comment
@jhabdas

jhabdas Dec 24, 2016

Contributor

@justinrummel would love to hear more about your experience once you make the leap!

Contributor

jhabdas commented Dec 24, 2016

@justinrummel would love to hear more about your experience once you make the leap!

@mmistakes

This comment has been minimized.

Show comment
Hide comment
@mmistakes

mmistakes Dec 24, 2016

Owner

@justinrummel No. This is still open as I haven't found a fix.

If you're using the gem version remove all local _layouts, _includes, and _sass folders and files. Unless of course you want them to override the ones bundled in the gem.

Owner

mmistakes commented Dec 24, 2016

@justinrummel No. This is still open as I haven't found a fix.

If you're using the gem version remove all local _layouts, _includes, and _sass folders and files. Unless of course you want them to override the ones bundled in the gem.

@justinrummel

This comment has been minimized.

Show comment
Hide comment
@justinrummel

justinrummel Dec 24, 2016

Contributor

@mmistakes and @jhabdas the migration is complete. Wasn't as bad as I thought except for all the images moving from /images/ to /asset/images/. Took me a while to figure out what was doing what (inserting the default vs. my .md files forcing a path). Thank goodness for find and perl commands.

~/mm-gem-repo/> perl -p -i -e 's/(^    image: )/    image: \/assets\/images\//g' _posts/*
~/mm-gem-repo/> perl -p -i -e 's/(^    overlay_image: )/    overlay_image: \/assets\/images\//g' _posts/*
~/mm-gem-repo/> perl -p -i -e 's/(^    teaser: )/    teaser: \/assets\/images\//g' _posts/*

If there was something still wrong, I would search the origin HTML to see if I could find something unique and then search the repo for that value:

~/mm-gem-repo/> find . -type f -exec grep -e 'mySearchItem' \{\} \; -print

From there I had to find what didn't function or look right. I inserted Instagram images on the main page, added .css for "fifth" and "sixth" for large amount of photosets pointing to flickr, added Lunr search functionality, and finally this section for related items. I prefer the searching on tags vs. what is default right now. I guess I'll leave the single.html until something permanent takes it place.

My slimmed down repo is:

_includes
_layouts
_sass

Contributor

justinrummel commented Dec 24, 2016

@mmistakes and @jhabdas the migration is complete. Wasn't as bad as I thought except for all the images moving from /images/ to /asset/images/. Took me a while to figure out what was doing what (inserting the default vs. my .md files forcing a path). Thank goodness for find and perl commands.

~/mm-gem-repo/> perl -p -i -e 's/(^    image: )/    image: \/assets\/images\//g' _posts/*
~/mm-gem-repo/> perl -p -i -e 's/(^    overlay_image: )/    overlay_image: \/assets\/images\//g' _posts/*
~/mm-gem-repo/> perl -p -i -e 's/(^    teaser: )/    teaser: \/assets\/images\//g' _posts/*

If there was something still wrong, I would search the origin HTML to see if I could find something unique and then search the repo for that value:

~/mm-gem-repo/> find . -type f -exec grep -e 'mySearchItem' \{\} \; -print

From there I had to find what didn't function or look right. I inserted Instagram images on the main page, added .css for "fifth" and "sixth" for large amount of photosets pointing to flickr, added Lunr search functionality, and finally this section for related items. I prefer the searching on tags vs. what is default right now. I guess I'll leave the single.html until something permanent takes it place.

My slimmed down repo is:

_includes
_layouts
_sass

@justinrummel

This comment has been minimized.

Show comment
Hide comment
@justinrummel

justinrummel Dec 31, 2016

Contributor

While researching HTTPS testing via jekyll serve, I noticed there is a --lsi flag. From Jekyll's documentation:

If the page being processed is a Post, this contains a list of up to ten related Posts. By default, these are the ten most recent posts. For high quality but slow to compute results, run the jekyll command with the --lsi (latent semantic indexing) option. Also note GitHub Pages does not support the lsi option when generating sites.
source: https://jekyllrb.com/docs/variables/

I can confirm it gives me different results than a list of 10 most recent posts, but still don't think it is perfect. If you try the --lsi option, be sure to install gsl as mention on http://footle.org/2014/11/06/speeding-up-jekylls-lsi/ or else you will be sitting for hours without any progress.

Contributor

justinrummel commented Dec 31, 2016

While researching HTTPS testing via jekyll serve, I noticed there is a --lsi flag. From Jekyll's documentation:

If the page being processed is a Post, this contains a list of up to ten related Posts. By default, these are the ten most recent posts. For high quality but slow to compute results, run the jekyll command with the --lsi (latent semantic indexing) option. Also note GitHub Pages does not support the lsi option when generating sites.
source: https://jekyllrb.com/docs/variables/

I can confirm it gives me different results than a list of 10 most recent posts, but still don't think it is perfect. If you try the --lsi option, be sure to install gsl as mention on http://footle.org/2014/11/06/speeding-up-jekylls-lsi/ or else you will be sitting for hours without any progress.

@mmistakes

This comment has been minimized.

Show comment
Hide comment
@mmistakes

mmistakes Dec 31, 2016

Owner

I've always used LSI but pretty sure it's disabled on sites hosted with GitHub Pages. The best solution ice found is using a related post plugin that improves on the one built into Jekyll. But that's sadly not an option for the vast amount of people hosting the theme on GH.

Owner

mmistakes commented Dec 31, 2016

I've always used LSI but pretty sure it's disabled on sites hosted with GitHub Pages. The best solution ice found is using a related post plugin that improves on the one built into Jekyll. But that's sadly not an option for the vast amount of people hosting the theme on GH.

@mmistakes

This comment has been minimized.

Show comment
Hide comment
@mmistakes

mmistakes May 17, 2017

Owner

I came up with a different solution that uses a post tags to compare against and show related posts that way. It can be tested from PR #978 or by copying these two files to your _layouts and _includes folder.

Owner

mmistakes commented May 17, 2017

I came up with a different solution that uses a post tags to compare against and show related posts that way. It can be tested from PR #978 or by copying these two files to your _layouts and _includes folder.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment