У вас портфолио это стандартный post type типа post, или произвольный тип (custom post type)? Во втором случае (который правильный с точки зрения архитектуры данных), при регистрации вашего custom post type используйте параметры:
'has_archive' => true, // чтобы была страница архива site.com/portfolio со всеми записями
'rewrite' => false, // чтобы не создавались ЧПУ для single записей, от слова "совсем"
Дополнительно, можете добавить редирект по условию - если попали на single portfolio, то переадресовать на архив (все работы).