16 \Magento\Framework\DataObject\IdentityInterface
63 $this->_productCollectionFactory = $productCollectionFactory;
64 $this->_catalogProductVisibility = $catalogProductVisibility;
81 ->addColumnCountLayoutDepend(
'1column', 5)
82 ->addColumnCountLayoutDepend(
'2columns-left', 4)
83 ->addColumnCountLayoutDepend(
'2columns-right', 4)
84 ->addColumnCountLayoutDepend(
'3columns', 3);
99 'CATALOG_PRODUCT_NEW',
100 $this->_storeManager->getStore()->getId(),
101 $this->_design->getDesignTheme()->getId(),
102 $this->httpContext->getValue(CustomerContext::CONTEXT_GROUP),
113 protected function _getProductCollection()
115 $todayStartOfDayDate = $this->_localeDate->date()->setTime(0, 0, 0)->format(
'Y-m-d H:i:s');
116 $todayEndOfDayDate = $this->_localeDate->date()->setTime(23, 59, 59)->format(
'Y-m-d H:i:s');
119 $collection = $this->_productCollectionFactory->create();
120 $collection->setVisibility($this->_catalogProductVisibility->getVisibleInCatalogIds());
124 )->addStoreFilter()->addAttributeToFilter(
128 0 => [
'date' =>
true,
'to' => $todayEndOfDayDate],
133 )->addAttributeToFilter(
137 0 => [
'date' =>
true,
'from' => $todayStartOfDayDate],
142 )->addAttributeToFilter(
144 [
'attribute' =>
'news_from_date',
'is' =>
new \
Zend_Db_Expr(
'not null')],
145 [
'attribute' =>
'news_to_date',
'is' =>
new \
Zend_Db_Expr(
'not null')],
147 )->addAttributeToSort(
166 $this->setProductCollection($this->_getProductCollection());
167 return parent::_beforeToHtml();
178 $this->_productsCount =
$count;
189 if (
null === $this->_productsCount) {
$_catalogProductVisibility
const DEFAULT_PRODUCTS_COUNT
$_productCollectionFactory
_addProductAttributesAndPrices(\Magento\Catalog\Model\ResourceModel\Product\Collection $collection)
__construct(\Magento\Catalog\Block\Product\Context $context, \Magento\Catalog\Model\ResourceModel\Product\CollectionFactory $productCollectionFactory, \Magento\Catalog\Model\Product\Visibility $catalogProductVisibility, \Magento\Framework\App\Http\Context $httpContext, array $data=[])
addColumnCountLayoutDepend($pageLayout, $columnCount)