Quantcast
Channel: Programação – Tiago Sampaio
Viewing all articles
Browse latest Browse all 12

Como criar um produto no Magento via PHP

$
0
0

Olá galera,

Há algum tempo venho recebendo questionamentos sobre como criar produtos no Magento através de scripts.

Bem, os questionamentos foram tantos que resolver postar um tutorial aqui em meu blog mostrando como se faz.

Logo abaixo vocês encontram o código que cria o produto simples no Magento:

<?php
	/* Criamos uma Nova Instância do Model Mage_Catalog_Model_Product */
	$product = Mage::getModel('catalog/product');

	/* Atribuímos todas as informações necessárias para que o produto seja criado */
	$product->setSku('ABCD1234') /* O Sku do produto */
			->setAttributeSetId(4) /* ID do grupo de atributos */
			->setTypeId('simple')
			->setName('O nome do meu produto')
			->setCategoryIds(array(35))  /* IDs das categorias, no meu caso 35 */
			->setWebsiteIDs(array(1)) /* WebsiteId, o frontend padrão é 1 */
			->setDescription('Full description here')
			->setShortDescription('Short description here')
			->setPrice(39.99); /* Qualquer valor do tipo decimal */

	/* Atribuímos os valores aos atributos personalizados que criamos via painel */
	$product->setHeight('valor_customizado')
			->setWidth('valor_customizado')
			->setDepth('valor_customizado')
			->setType('valor_customizado');

	/* Atributos padrões do Magento */
	$product->setWeight(4.0000)
			->setVisibility(Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH)
			->setStatus(1)
			->setTaxClassId(0)
			->setStockData(array(
			    'is_in_stock' => 1,
			    'qty' => 99999
			)
	);

	/* Data de criação do produto */
	$product->setCreatedAt(strtotime('now'));

	try {
	    $product->save();
	} catch (Exception $e) {
	    // Tratamento de erro
	}
?>

Bem, esta é uma forma bem simples de se criar um produto no Magento e é claro que existem várias outras opções, porém opções mais específicas ficam para um próximo post, ok?

Um grande abraço e até logo!

Tiago Sampaio


Viewing all articles
Browse latest Browse all 12