Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
viewed_products.php
Go to the documentation of this file.
1 <?php
8  ->getArea('adminhtml')
9  ->load(\Magento\Framework\App\Area::PART_CONFIG);
10 
11 require __DIR__ . '/../../../Magento/Catalog/_files/product_simple.php';
12 require __DIR__ . '/../../../Magento/Catalog/_files/product_simple_duplicated.php';
13 require __DIR__ . '/../../../Magento/Catalog/_files/product_virtual.php';
14 
17  ->create(\Magento\Catalog\Api\ProductRepositoryInterface::class);
18 
19 $simpleId = $productRepository->get('simple')->getId();
20 $simpleDuplicatedId = $productRepository->get('simple-1')->getId();
21 $virtualId = $productRepository->get('virtual-product')->getId();
22 
23 // imitate product views
26  \Magento\Reports\Observer\CatalogProductViewObserver::class
27 );
28 
30 
31 foreach ($productIds as $productId) {
32  $reportObserver->execute(
33  new \Magento\Framework\Event\Observer(
34  [
35  'event' => new \Magento\Framework\DataObject(
36  [
37  'product' => new \Magento\Framework\DataObject(['id' => $productId]),
38  ]
39  ),
40  ]
41  )
42  );
43 }
44 
45 // refresh report statistics
48  \Magento\Reports\Model\ResourceModel\Report\Product\Viewed::class
49 );
50 $reportResource->beginTransaction();
51 // prevent table truncation by incrementing the transaction nesting level counter
52 try {
53  $reportResource->aggregate();
54  $reportResource->commit();
55 } catch (\Exception $e) {
56  $reportResource->rollBack();
57  throw $e;
58 }
$reportResource
defined('TESTS_BP')||define('TESTS_BP' __DIR__
Definition: _bootstrap.php:60
$virtualId
$reportObserver
$productIds
$simpleId
$productRepository
$simpleDuplicatedId