Come ottenere da codice le informazioni di un prodotto su Magento

Se a scopo di debug oppure per lo sviluppo di codice personalizzato hai la necessità di prelevare informazioni da un prodotto in particolare, puoi farlo utilizzando le funzioni messe a disposizione da Magento ed ottenere i dati di cui hai bisogno.
- Leggi l'articolo, ti bastano solo 2 minuti, 26 secondi
Sei di fretta? Scarica il PDF e consultalo quando vuoi!
Sommario
1 Creiamo il file PHP esterno |
2 Carichiamo il prodotto |
3 Informazioni principali |
4 Commenti |
Creiamo il file PHP esterno
Per iniziare, bisogna creare un file PHP che inizializzi Magento e le sue funzioni, ti consiglio di farlo nella root del tuo spazio FTP. Se non sai come fare, leggi l’articolo Eseguire il codice Magento in un file PHP esterno.
Carichiamo il prodotto
La prima cosa da fare, ovviamente, è caricare il model relativo al prodotto che ti interessa. Per farlo, è necessario istanziare l’oggetto che Magento utilizza per i prodotti e richiamare il metodo che si occupa di caricare le informazioni del prodotto desiderato tramite ID:
// Carica il prodotto con ID 10 $_product = Mage::getModel( 'catalog/product' )->load( 10 );
oppure tramite SKU:
// Carica il prodotto con SKU sku12345 $_product = Mage::getModel( 'catalog/product' )->loadByAttribute( 'sku', 'sku12345' );
Ora che il tuo prodotto è stato caricato, puoi prelevarne le informazioni che ti occorrono.
Informazioni principali
Ecco un elenco di funzioni per ottenere i dati relativi al prodotto precedentemente caricato:
Nome e URL prodotto
// Nome del prodotto $product_name = $_product->getName(); // URL del prodotto $product_url = $_product->getProductUrl();
Descrizione prodotto
// Descrizione completa $product_description = $_product->getDescription(); // Descrizione breve $product_short_description = $_product->getShortDescription();
Prezzo di vendita
// Prezzo $product_price = $_product->getPrice(); // Prezzo speciale $product_special_price = $_product->getSpecialPrice();
URL immagini
// Base image $product_base_image_url = $_product->getImageUrl(); // Small image $product_small_image_url = $_product->getSmallImageUrl(); // Thumbnail $product_thumbnail_url = $_product->getThumbnailUrl();
Quantità in giacenza
// Giacenza disponibile $stock = Mage::getModel( 'cataloginventory/stock_item' )->loadByProduct( $_product ); $quantity = $stock->getQty();