Это делается с помощью ajax, по кнопке отправляете на сервер ajax запрос, который возвращает Вам следующие 4 итема, вы их вставляете в DOM. Промежуточно можно следить за статусом запроса и отображать спиннер.
Все что Вам нужно написано здесь: api.jquery.com/jquery.ajax
Материал, не будет браться с БД, он уже будет в верстке и должен появится при клике на ссылку. Я раньше видел тут подобный вопрос и нужный jquery-плагин но найти его так и не получилось.
например у Вас есть блоки 4 блока с display: block и остальные с display: none, лучше это делать классами, например повесьте изначально на все блоки кроме первых 4х класс hidden
...
по клику на кнопку $('a.next4').on('click', function(e) {});
берете 4 первых блока с классом hidden и убираете ему этот класс
если хотите плавно, сделайте так $(block).show(600, function() {$(this).removeClass('hidden');});