The problem with plug-ins is that they would either be not very mighty or require a built-in scripting language. Assuming that @keats will never accept code which cannot be plugged right into the Zola binary, that limits our choices (which is a good thing, honestly).
My own SSG (which I won’t advertise here) uses the Duktape JavaScript engine for that, with a number of predefined hooks throughout the application. There are at least a few Rust Duktape wrappers, so it would be an option.
The more interesting question is which missing feature plug-ins would actually need to cover and whether that feature shouldn’t better be baked into Zola. And here I need to vote for the latter, I’m afraid - for security and performance reasons.