Можно ли как то в html подключать часто используемые блоки без php?

Если можно то подскажите как это можно сделать или хотя бы что гуглить, заранее благодарю.

Конечно можно, можешь использовать плагин Gulp:

npm install gulp-file-include

В gulpfile.js добавить это

var fileinclude = require('gulp-file-include'),

gulp = require('gulp');

gulp.task('fileinclude', function() {

gulp.src(['index.html'])

.pipe(fileinclude({

prefix: '@@',

basepath: '@file'

}))

.pipe(gulp.dest('./'));

});

И в дальнейшем можно части подключать вот так: @@include('./view.html')

Кроме этого насколько я понял там даже можно передавать значения переменных при подключении файла, в общем направление я дал, дальше гугли)