Guest User

Untitled

a guest
May 27th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.31 KB | None | 0 0
  1. // Create a product model using MagentoCatalogModelProductFactory
  2. $productModel = $this->productFactory->create();
  3.  
  4. // Set the default values
  5. $productModel
  6. ->setStoreId(0)
  7. ->setName($name)
  8. ->setAttributeSetId($productModel->getDefaultAttributeSetId())
  9. ->setWebsiteIds([1,2])
  10. ->setVisibility(4)
  11. ->setUrlKey($urlKey)
  12. ->setStatus(2)
  13. ->setTypeId('simple')
  14. ->setPrice(10)
  15. ->save();
  16.  
  17. // Reload product
  18. $productStoreView = $this->productFactory->create()
  19. ->load($productModel->getId())
  20. ->setStoreId(1)
  21. ->setDescription('Desc for store view 1')
  22. ->save();
  23.  
  24. $productStoreView = $this->productFactory->create()
  25. ->load($productModel->getId())
  26. ->setStoreId(2)
  27. ->setDescription('Desc for store view 2')
  28. ->save();
  29.  
  30. <?php
  31.  
  32. use MagentoFrameworkAppBootstrap;
  33.  
  34. require __DIR__ . '/../app/bootstrap.php';
  35.  
  36. $bootstrap = Bootstrap::create(BP, $_SERVER);
  37.  
  38. $obj = $bootstrap->getObjectManager();
  39.  
  40. $state = $obj->get('MagentoFrameworkAppState');
  41. $state->setAreaCode('frontend');
  42.  
  43. $product = $obj->get('MagentoCatalogModelProduct');
  44.  
  45. $product
  46. ->setName('Random name ' . time())
  47. ->setSku(time())
  48. ->setPrice(0)
  49. ->setStatus(2)// Disabled
  50. ->setWebsiteIds([1, 2])
  51. ->setVisibility(4)
  52. ->setAttributeSetId($product->getDefaultAttributeSetId())
  53. ->setTypeId('simple')
  54. ->save();
  55.  
  56. echo "Saved product ID " . $product->getId() . "n";
  57.  
  58. $obj->create('MagentoCatalogModelProduct')
  59. ->load($product->getId())
  60. ->setStoreId(1)
  61. ->setDescription('Description store view 1')
  62. ->save();
  63.  
  64. $obj->create('MagentoCatalogModelProduct')
  65. ->load($product->getId())
  66. ->setStoreId(2)
  67. ->setDescription('Description store view 2')
  68. ->save();
  69.  
  70. /** @var MagentoCatalogModelProductFactory */
  71. protected $productFactory;
  72.  
  73. /** @var MagentoCatalogModelResourceModelProduct */
  74. protected $productResourceModel;
  75.  
  76. public function __construct(
  77. MagentoCatalogModelProductFactory $productFactory,
  78. MagentoCatalogModelResourceModelProduct $productResourceModel
  79. )
  80. {
  81. $this->productFactory = $productFactory;
  82. $this->productResourceModel = $productResourceModel;
  83. }
  84.  
  85.  
  86. private function setStoreViewPrice($productId, $storeId, $price)
  87. {
  88. $product = $this->productFactory->create();
  89. $this->productResourceModel->load($product, $productId);
  90. $product->setStoreId($storeId);
  91. $product->setPrice($price);
  92. $this->productResourceModel->saveAttribute($product, 'price');
  93. }
  94.  
  95. $this->objectManager->create('MagentoCatalogModelProduct')
  96. ->load($product->getId())
  97. ->setStoreId($storeviewId)
  98. ->setStatus($storeStatus)
  99. ->setDescription('Store description')
  100. ->setName(null) // Use default
  101. ->setPrice($price) // Store price
  102. ->setTaxClassId(null) // Use default
  103. ->setVisibility(null) // Use default
  104. ->setCountryOfManufacture(null) // Use default
  105. ->save();
  106.  
  107. $productStoreView = $this->productFactory->create()
  108. ->load($productModel->getId());
  109.  
  110. $productStoreView->setDescription('Desc for store view 1');
  111. $productStoreView->setStoreId(1);
  112. $productStoreView->save();
  113.  
  114. $objectManager = MagentoFrameworkAppObjectManager::getInstance();
  115. $objectManager->create('MagentoCatalogModelProduct')->load(2)->setStoreId(1)->setDescription('english content')->save();
  116. $objectManager->create('MagentoCatalogModelProduct')->load(2)->setStoreId(2)->setDescription('french content')->save();
Add Comment
Please, Sign In to add comment