This is the blog of Adam Kalsey. Unusual depth and complexity. Rich, full body with a hint of nutty earthiness.
Freshness Warning
This blog post is over 20 years old. It's possible that the information you read below isn't current and the links no longer work.
17 Dec 2002
Several people have asked about an MT plugin that creates a related entries list using keywords instead of categories. David Raynes even wrote a plugin that does it.
My Related Entries plugin already does this, and I’ve been using it this way for months. I just haven’t ever written the documentation for this feature. If you’re brave enough to try it without documentation, go download the plugin and try it out. Hint: field="keywords"
One thing to keep in mind, though. Getting related entries by keyword is a lot slower than getting them by category. Your rebuild times will increase if you use the keyword method.
Keywords are considered to be delimited with commas and listed in order of importance. The keywords for this entry are: related entries, keywords, plugin, movable type The plugin will find the first N entries that match "related entries" and if that number is less than the lastn specified in the MTEntries tag it will move on to "keywords" and so forth. So if you only have 2 entries that have "related entries" as a keyword and your lastn is 3, the plugin will grab those two and then will find entries that have "keywords" as a word.
Excellent! However, I'm still curious. How well does it handle cases when entries have two or more keywords in common? Example: Lets assume that the current entry has the following keywords assigned to it: "dog, cat, horse, parrot". Related Candiate A has: "dog, house, sofa, apple". Related Candiate B has: "sheep, horse, parrot, cat". Which does the search function consider to be more "related" to the current entry - A or B?
Whichever entry is more recent. The plugin doesn't have any sort of scoring logic. It essentially lists the N most recent entries that have a keyword in common. If you use a controlled vocabulary for your keywords, and you often use the same keyword first, then you'll probably find that your entries never look beyond the first keyword in order to find a match.
Excerpt: Philiosophy As a discourse between myself and the wider world, the golden path is an unorganized accumulation of hopes, the embodiment of wish. Design notes can be found in the archives of this site itself, but include: February 12, 2003...
> "in order of importance" May i ask, how this order is generated? Who decides what's important?
You do. The plugin assumes that you listed your keywords in the order that you felt was important. You might also consider reading Related Entries Revisted: http://kalsey.com/2003/05/related_entries_revisited/
and the plugin is absolutly free??
Yes, all my plugins are free, although I'd be happy to take your money if you sent it to me.
Anybody try this with keywords? - for me, this still only shows entries in the same category.
I tried pasting the code I used, i just did mtrelatedentries field="keywords" but it still just only showed related by keywords
I tried pasting the code I used, i just did mtrelatedentries field="keywords" but it still just only showed related by category
Solved my own problem: It only matches other entries that matched that keyword in their keyword field, and not in the entry body
Excerpt: In theory, at least, this approach should enable searching for the keywords and still hitting the archived page despite the word not necessarily being written at (or conjugated in the same way) at the page itself.
Using MTRelatedEntries field="keywords" I'm getting relations between keywords & Entry Body. ie. One entry has "art" as a keyword. Another entry has "art" in it's body field. These are now related. This may be good though, as I'm about to implement the related entries revisited dealie. Also, I'm getting the error: splice() offset past end of array at plugins/RelatedEntries.pl line 77
This discussion has been closed.
Már Örlygsson
April 15, 2003 12:20 PM
Can you provide more details? How does it deal with a comma-seperated list of keywords, where each keyword may consist of more than one word with spaces in-between?