refactors posts with partials