First of all, you will need to add the proxies in config.rb:
# Assumes the file source/author/template.html.erb exists
["tom", "dick", "harry"].each do |name|
proxy "/author/#{name}.html", "/author/template.html", :locals => { :person_name => name }, :ignore => true
end
The problem, though, is that the middleman-blog engine doesn't seem to officially support different authors for each post. Read through this tutorial for a full explanation of a homebrewed solution: Building a Middleman Blog
Basically, you will want to do something like this on your archive page template:
# Note the presence of the person_name local variable, created in the above example
<% author_articles = articles.select {|x| x.data.author == person_name } %>
<ul>
<% author_articles.each do |article|
# Add your rendering code here %>
<li><%= link_to article.title, article.url %></li>
<% # (for better practices, put this in a helper method)
end %>
</ul>