It looks like that link has (almost) all of the information you need.
"Older" is basically "Next Page", so you override the next_page
method in your renderer.
"Oldest" is "Last Page"; you'll need to add a method and then make sure it's included in the array returned by your pagination
method (the total_pages
method built into will_paginate will help here).
Then do the reverse for Newer/Newest.
Take a look at the link_renderer.rb and link_renderer_base.rb files. They have the methods you'll be overriding.
I wrote a custom will_paginate 3 renderer to emulate the GitHub/Twitter-style "More" pagination. I've annotated the code below. It won't get you exactly where you need to go, but it's a start.
module TwitterPagination
class LinkRenderer < WillPaginate::ViewHelpers::LinkRenderer
protected
# Tells WP how to render the "Next Page" link
def next_page
# The only difference from the default here is we renamed the link to "More"
# and added a custom class, twitter_pagination
previous_or_next_page(@collection.next_page, "More", 'twitter_pagination') if @collection.next_page
end
# Remove all links except our :next_page
def pagination
[ :next_page ]
end
end
end
Everything I needed to know in order to do this can be figured out by reading the two source files I linked above.
It really amazed me how easy this was to do; the latest design of will_paginate is brilliant in this area.