-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathfunctions.php
executable file
·157 lines (156 loc) · 4.96 KB
/
functions.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
<?php
require_once('app/Mage.php'); //Path da class do magento Magento
Mage::app();
//$product_delete = ['00000001']; // Exemplo para o delete
//$product_sku = ['00000001']; // Exemplo para o edit
//$valores = ['10','20'];// Exemplo para o edit
$i = '0';
$acao = $_GET['acao']; // Ação
/* Exemplos para o create com parâmetros vindos da URL.*/
$nome1 = $_GET['nome'];
$sku1 = $_GET['id'];
$descricao1 = $_GET['descricao'];
$desccurta1 = $_GET['desccurta'];
$peso1 = $_GET['peso'];
$preco1 = $_GET['preco'];
/* Exemplos para o delete com parâmetros vindos da URL.*/
$product_delete = [$_GET['id']];
/* Exemplos para o edit com parâmetros vindos da URL.*/
$product_sku = [$_GET['id']];
$valores = [$_GET['preco']];// Exemplo para o edit
Mage::register("isSecureArea", 1); //Setar que essa bosta ta no modo seguro 2 dias pra descobrir isso :s
umask(0);
/* Exemplos para o create com parâmetros fixos.*/
/*
$nome1 = 'teste';
$sku1 = '00000001';
$descricao1 = 'Exemplo de Descrição';
$desccurta1 = 'Exemplo Descrição Curta';
$peso1 = '500';
$preco1 = '5000';
*/
/*
Função de Create -- passa como params os valores do produto.
*/
function create($nome, $sku, $descricao, $desccurta, $peso, $preco) {
try{
$sProduct = Mage::getModel('catalog/product');
$productData=array(
'name' => $nome,
'sku' => $sku,
'description' => $descricao,
'short_description' => $desccurta,
'weight' => $peso,
'status' => 1, // 1 => enabled, 0 => disabled
'visibility' => '4', // 1 => Not Visible Individually, 2 => Catalog, 3 => Search, 4 => Catalog, Search
'attribute_set_id' => 4, // default
'type_id' => 'simple',
'price' => $preco,
'tax_class_id' => 0, // Sem taxa
'page_layout' => 'one_column',
);
foreach($productData as $key => $value)
{
$sProduct->setData($key,$value);
}
$sProduct->setWebsiteIds(array(1));
$sProduct->setStockData(array(
'manage_stock' => 1,
'is_in_stock' => 1,
'qty' => 100000,
'use_config_manage_stock' => 0
));
$categoryIds = array(2,3,5);
$sProduct->setCategoryIds($categoryIds);
$sProduct->save();
echo 'Produto criado';
} catch (Exception $e){
Mage::logException($e);
echo 'erro';
var_dump($e);
}
}
/*
Função de Update -- passa como params o sku do produto e os valores.
*/
function updates($price, $product_id)
{
try {
$product = Mage::getModel('catalog/product');
$productId = $product_id;
$product->load($productId);
if ($product && $product->getId()) {
$product->setPrice(strval($price));
$product->save();
echo 'produto '.$product_id .' editado <br/>';
}
} catch (Exception $e) {
Mage::logException($e);
echo 'produto '.$product_id .' apresentou erro';
}
}
/*
Função de Delete -- passa como params o sku do produto.
*/
function deletes($product_id) {
try {
$product = Mage::getModel('catalog/product');
$productId = $product_id;
$product->load($productId);
if ($product && $product->getId()) {
$product->delete();
echo 'produto '.$product_id .' deletado <br/>';
}
} catch (Exception $e) {
Mage::logException($e);
echo 'produto '.$product_id .' apresentou erro';
}
}
/*
*
* AÇÕES
*
*/
/*
Ação de Create
*/
if($acao == 'create'){
create($nome1, $sku1, $descricao1, $desccurta1, $peso1, $preco1);
}
/*
Exemplo de create
https://consultoria7.com/alimentacao/functions.php?acao=create&nome=Filet Mignon&id=222222&descricao=Corte Alto&desccurta=Estilo Tornedor&peso=2&preco=3100
https://consultoria7.com/alimentacao/functions.php?acao=create&nome=Quibe Frito&id=333333&descricao=Frito em Óleo Vegetal&desccurta=Sem conservantes&peso=1&preco=150
https://consultoria7.com/alimentacao/functions.php?acao=create&nome=Risoto&id=444444&descricao=Ristoto de Calabresa&desccurta=Com alho poró&peso=2000&preco=45.00
*/
/*
Ação de Edição
*/
if($acao =='edit'){
foreach ($product_sku as $sku){
$product_id = Mage::getModel("catalog/product")->getIdBySku( $sku );
updates($valores[$i], $product_id);
$i++;
}
}
/*
Exemplo de edit
https://consultoria7.com/alimentacao/functions.php?acao=edit&id=222222&preco=31.00
*/
/*
Ação de Delete
*/
if($acao == 'delete'){
foreach ($product_delete as $sku){
$product_id = Mage::getModel("catalog/product")->getIdBySku( $sku );
deletes($product_id);
}
}
/*
Exemplo de delete simples
https://consultoria7.com/alimentacao/functions.php?acao=delete&id=222222
Exemplo de delete composto
https://consultoria7.com/alimentacao/functions.php?acao=delete&id=222222,333333
2015-09-23
*/
?>