Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

General Questions /

General questions about getting started with SilverStripe that don't fit in any of the categories above.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

[Solved] How to get related articles?


Reply


3 Posts   607 Views

Avatar
MitraX

Community Member, 20 Posts

23 September 2012 at 6:54am

Hi,

I'm trying to solve the problem with related articles based on MetaKeywords in v2.4, but without success.

For example, the page [url=http://www.inforbiro.com/blog-eng/silverstripe-tips-and-tricks/]SilverStripe Tips and Tricks[/url] (class BlogPostPage) has related articles below the content but they're manually added. What I want is to display automatically related articles that contain tags (i.e. MetaKeywords) as this particular page (e.g. silverstripe, cms, framework, tips tricks...). MetaKeywords are displayed as Tags section in the right column.

I enabled the fulltext search feature and tried with the following code but it returns ALL articles on the site no metter whether they contain similar keywords or not:

DataObject::get(
   "BlogPostPage",
   "MATCH (MetaKeywords) AGAINST ('$this->MetaKeywords' IN BOOLEAN MODE)"
);

as well as

DataObject::get(
   "BlogPostPage",
   "MATCH (Title, MenuTitle, Content, MetaTitle, MetaDescription, MetaKeywords) AGAINST ('$this->MetaKeywords')"
);

Does anybode have any idea?

Thanks

Avatar
MitraX

Community Member, 20 Posts

26 September 2012 at 7:12am

Finally, I've solved the problem and implemented on my blog.

Not only that the logic I created returns related articles based on tags (i.e. MetaKeywords) but it returns them by relevance! For example, if you visit funny article about [url=http://www.inforbiro.com/blog-eng/engineers-dream-jobs/]jobs I dream of[/url], you can notice that the first result has in common more than one tags and all below have only one.

It's late here in Serbia and I need to "clean" existing articles from manually added related links in order to avoid duplicating results with new logic. So I'm going to create detail tutorial with code tomorrow and let you know.

Avatar
MitraX

Community Member, 20 Posts

27 September 2012 at 2:19am

As I promised, here is [url=http://www.inforbiro.com/blog-eng/silverstripe-get-related-articles/]the tutorial for getting related articles[/url] based on keywords.