toto icon indicating copy to clipboard operation
toto copied to clipboard

Categories/tags?

Open girasquid opened this issue 15 years ago • 11 comments

I'd like to switch a Wordpress blog with about 200 posts to Toto - but in order to do that, I would need to be able to categorize and tag my posts. I'm not a Ruby guy - I've been trying to wrap my head around how to make the chances I'm thinking of, but so far I haven't had any luck.

Are these features planned additions to Toto, or are they outside of Toto's scope?

girasquid avatar Feb 11 '10 07:02 girasquid

You can add post categorization right now with meta inside text files. For example, on my blog (usabilitypost.com) I have a couple of posts categorized as book reviews. I show these posts on a different page of the blog. You can select posts by their meta using Ruby like this:


... html here to render book articles ...

Not sure about posts with multiple categories or tags, could probably work something out though. Cloudhead - what do you think?

ghost avatar Feb 11 '10 17:02 ghost

This is something I'd like to see as well. Perhaps add it to the header info.

categories: Programming, Book Review, Ruby tags: Ruby, Rails, Design Patterns in Ruby, etc.

Then have a single page that lists everything that falls within those tags. Could probably re-use the index.rhtml for that by passing in some vars.

MikeAbner avatar Feb 13 '10 01:02 MikeAbner

Categories are planned — they'll essentially just be folders inside articles/.

Tags can be done as shown above, any metadata you add to the article headers can be accessed in the templates.

cloudhead avatar Feb 13 '10 04:02 cloudhead

Awesome, I'll look forward to that.

girasquid avatar Feb 15 '10 19:02 girasquid

For tags as shown above using metadata is there a way to view articles by tag. Example: I tag two articles with ruby. If I make a template tagged.rhtml file does toto already have support for something like /tagged/ruby or will this try to find pages/tagged/ruby.rhtml? If it doesn't is something like this planned?

jrwest avatar Feb 23 '10 01:02 jrwest

For now, you could do that manually, by fetching the articles, and doing a select: @articles.select {|a| a.tags.include?('ruby') } It's all cached after the first load, so there isn't really a performance hit.

cloudhead avatar Feb 23 '10 01:02 cloudhead

I think the main problem is to get the "ruby" tag from e.g. the URL How would you pass the tag name in a dynamic way to the "tagged.rhtml"?

rb2k avatar Jul 03 '10 12:07 rb2k

It's still a bit messy, but: http://github.com/5v3n/karakuri adresses this feature, it might come handy to you. To see it in action, have a look at 5v3n.com.

Thanks cloudhead for opening the erb renderer to include the ENV data, that mainly did the trick.

5v3n avatar Jul 18 '10 13:07 5v3n

I'm going to implement categories for toto (I have already implemented tags and now want to have categories as well) here's my ideas about how it will work (comments are appreciated):

files hierarchy

* file: ./articles/2011-08-01-one.txt
  permalink: /2011-08-01-one
  category: nil

* file: ./articles/abc/2011-08-02-two.txt
  permalink: /abc/2011-08-02-two
  category: abc

* file: ./articles/abc/def/2011-08-03-three.txt
  permalink: /abc/def/2011-08-03-three
  category: abc > def

browse categories

* `/category/abc` - will list articles from `abc` category:
** `./articles/abc/2011-08-02-two.txt`
** `./articles/abc/def/2011-08-03-three.txt`

* `/category/abc/def` - will list articles from `abc > def` category:
** `./articles/abc/def/2011-08-03-three.txt`

@cloudhead, will really appreciate your comments and/or wishes about implementation.

ixti avatar Aug 09 '11 09:08 ixti

@ixti good thing on category...but how about assigning a post to multiple categories?

seanlin avatar Aug 14 '11 17:08 seanlin

@seanlin, I have implemented tags before, see pull request #90. So you can mark your post with several tags, but category is always one or nothing :)) I believe that nature is best architecture, so you can put a document only in one File, and one file into anther. But you can label your document with multiple tags (e.g. colored stickers).

ixti avatar Aug 14 '11 17:08 ixti