document.getElementsByClassName возвращает коллекцию NodeList а не отдельный элемент
если нужно что-то сделать со всеми элементами в этой коллекции, то ее нужно пройти циклом:
function look(t) {
var pList = document.getElementsByClassName(t);
var l = document.getElementsByClassName("a-" + t)[0];
for(var i = 0; i < pList.length; i++) {
var p = pList[i];
if (p.style.display == "block") {
l.innerHTML = "Показать все";
p.style.display = "none";
} else {
l.innerHTML = "скрыть";
p.style.display = "block";
}
}
}