ng-repeat"product in products"". Тот же foreach грубо говоря. Почему так делают? Потому что как ни крути, это не логика а часть отображения. Я же не выполняю запрос к БД из шаблона или не подготавливаю строку запроса, аргументируя это тем, что это "подготовка запроса". Ужасно звучит, правда?
$goods. В карточке товара надо вывести: фото, скрытым полем артикул, цену, кнопку покупки с полем выбора количества покупаемого товара.
$b.='<input type="hidden" id="id_'.$i.'" value="1">'.PHP_EOL;
slick-slider slick-initialized... В случае же заголовка, то тут опять-же из-за position: absolute, row тут не поможет...
.header-content-wrapper. попробуйте добавить этому элементу класс .row и посмотрите что изменится. В частности добавится 2 псевдоэлемента с стилями типа: clear: both;. И тогда он не будет схлопываться. Почему так? Потому-что элементы col-md-* имеют float: left например. Помните туториалы по бутстрапу? <div class="row">
<div class="col-xs-6">...</div>
<div class="col-xs-6">...</div>
</div>.row :)