IMO the most important thing is to find a way how others could mark a post as a solution if the OP doesn’t do it.
Maybe a button where you can request for a post to be marked as a solution and if the OP doesn’t decline for 2 weeks it get’s automatically marked.
Edit:
Take a look at this: Copy Row from one DataTable to another - #12 by Florent_Salendres
One of the top threads ever in this forum based on views and replies, the correct answer has 40 likes and yet it’s not marked as a solution.
Go through the top posts of all time and you’ll find plenty of examples like this.