O preço é definido no nível do produto simples no Magento 2 (e produtos configuráveis herdarão o preço especial dos produtos simples abaixo dele).
A maneira mais rápida de fazer isso corretamente seria usar a API REST dentro de um script. Esta é a melhor maneira se você é iniciante - o Magento criou isso como uma interface para integração externa que deve ser usada sempre que possível.
http://devdocs.magento.com/swagger/index_20.html#!/catalogProductRepositoryV1
O terminal correto é PUT / V1 / products / {sku} de catalogProductRepository -
Observe que você precisa inserir o código de armazenamento temporário no URL de chamada, conforme descrito aqui.
http://devdocs.magento.com/guides/v2.0/rest/rest_endpoints.html
Aqui está uma boa postagem sobre o uso de um script com a API REST
GET ou SET Preço especial do produto usando a API REST
Outra opção é importar um CSV de várias lojas usando a funcionalidade de importação do Magento 2 - isso é melhor se você não estiver familiarizado com o desenvolvimento do Magento / PHP:
Aqui está um artigo sobre isso:
https://www.alexcorradi.org/blog/a-guide-on-how-to-import-export-products-in-magento-2
Caso contrário, se você tiver um ambiente de teste e estiver mais confiante com a codificação, poderá criar seu próprio script para atualizar:
Dentro de uma classe, você terá:
protected $action;
public function __construct(\Magento\Catalog\Model\Product\Action $productAction) {
$this->action = $productAction;
}
public function updatePrice($productIds, $data, $storeId) {
$this->action->updateAttributes($productIds, $data, $storeId);
}
depois, para executá-lo, use o seguinte;
$specialPrice = null; // OR '' can't remember off the top of my head which clears it - perhaps either.
$data = ['special_price' => $specialPrice];
$storeId = 1; //whatever store id you like
$productIds = [1,2,3,4,5,6,7]; //whatever product ids you wish to change.
$this->updatePrice($productIds, $data, $storeId);
executar para cada loja.
Desculpas por qualquer erro, estou apenas digitando pela memória. Execute primeiro em um ambiente de teste!
Use regras de preço de catálogo. Marketing> Regras de preço de catálogo
Dessa forma, você pode definir os preços de venda por todas as lojas ou selecionar lojas e é fácil atualizar e ativar ou desativar em massa.
Você pode definir as condições para corresponder a todos os tipos de combinações: categoria / fabricante / tamanho / cor / sku / mpn
Também é possível criar atributos no back-end que você pode usar para regras de preço de catálogo. por exemplo. Eu tenho um atributo 'temporada' com opções suspensas como 2017-4, que são produtos de inverno.
Portanto, faço uma regra de preço de catálogo para: Fabricante = Billabong, Categoria = Camisas, Temporada = 2017-4 e aplico 20% de desconto em produtos que atendem a esses critérios. E você pode definir os sites em que a regra é aplicada, bem como as datas em que deseja que as regras sejam executadas.
Você também pode usar cores ou tamanhos em suas regras. Isso se torna muito vantajoso quando o produto não muda de nome há alguns anos e há uma colorway antiga da qual você deseja se livrar, você pode definir apenas a combinação de uma cor e / ou tamanho que estará à venda, enquanto o restante da produtos configuráveis mantêm o preço normal.
fonte