ARCHIVIO: Magento Commerce

set
08
Scritto da: carlo  | Archivio: Magento Commerce, Moduli Per Magento

Magento è senza alcun dubbio il leader del momento del mondo dell'open source. E' la piattaforma di ecommerce con i tassi di crescita più alti e sembra essere completamente in sintonia con tutti le ultime pratiche di ottimizzazione Seo e gli ultimi standard del Web 2.0. Infatti, mi sembra strano che non integri OpenId di default. Sono sicuro che integrare questa funzionalità non dovrebbe essere un grande problema per il team di sviluppatori di Magento, visto che OpenId si sta diffondendo sempre di più. Per coloro i quali non conoscessero OpenId, ricordo che sostanzialmente è un modo di effettuare il login in differenti siti utilizzando sempre la stessa username e password, di fatto eliminandp il bisogno di avere, chessò, 500 username e password differenti. Immaginatevi di poter aprire con la stessa chiave tutte le porte e le finestre della tua casa, del vostro garage, della vostra macchina e del vostro ufficio. Quanto sarebbe più semplice la vostra vita? La buona notizia è che gli sviluppatori di Magento Connect hanno già rilasciato un estensione che permette di effettuare il login con le credenziali che si usano su AOL, Google, Facebook, MySpace Yahoo, ed altri siti. Potete scaricarlo da qui: http://www.magentocommerce.com/magento-connect/amitshah2007/extension/3720/rpx_sign_in RPX Sign In è

set
07
Scritto da: carlo  | Archivio: Guide Per Magento Commerce, Magento Commerce

Ho avuto grandi difficolta nell'aggiornamento di Magento dalla versione 1.3 alla versione 1.4. Non so se le difficoltà sono dovute alla personalizzazione che ho fatto al mio magento, alla grandezza del mio database o cos'altro, maho sbattuto la testa contro la mostruosità di Magento. Di seguito, troverete il percorso che ho seguito dopo che il normale processo di aggiornamento di Magento non è andato a buon fine. Invece di eseguire l'aggiornamento su Magento Connect oppure semplicemente usando un aggiornamento di filesystem per aggiornare il database, ho scelto di mettere su una nuova installazione di Magento e di utilizare l'importazione del profilo per ripristinare il mio store online. Questa è stata la mia procedura. L'ho eseguita su un server locala xxamp e poi ho spostato tutto in una sotto directori del nostro web server e, quando tutto funzionava così come volevo, ho copiato il tutto sulla root in modo che andasse "live". Assicuratevi che il vostro attuale negozio ecommerce sia online, in modo che potete esportare i dati e copiare le impostazioni da lì. 1. Create un database completamente nuovo, un nuovo utente che abbia tutti i permessi di accesso su quel db e appuntatevi le informazioni 2. Crate la cartella per l'installazione 3. Scaricate

set
06
Scritto da: carlo  | Archivio: Guide Per Magento Commerce, Magento Commerce

In questo articolo vi spiegherò come aggiungere attributi per le categorie del vostro negozio Magento. Dal pannello di controllo, è possibile aggiungere soltanto gli attributi ai prodotti. Per aggiungere gli attributi alle categorie, bisogno scrivere una query sql in phpmyadmin oppure, ancora meglio, creando un nuovo modulo personalizzato ed aggiungendo gli attributi alla categoria dal file di setup di mysql del modulo. Con "file di setup di mysql", intendo il file che si trova all'interno della directory NomeSpazio/NometuoModulo/sql/NometuoModulo_setup/ Create un nuovo modulo e scrivete quanto segue nel file di setup di mysql all'interno del vostro modulo.

$installer = $this;
$setup = new Mage_Eav_Model_Entity_Setup('core_setup');
$installer->startSetup();

$setup->addAttribute('catalog_category', 'my_attribute', array(
    'group'         => 'General',
    'input'         => 'text',
    'type'          => 'varchar',
    'label'         => 'My Attribute',
    'backend'       => '',
    'visible'       => 1,
    'required'      => 0,
    'user_defined' => 1,

set
03
Scritto da: carlo  | Archivio: Guide Per Magento Commerce, Magento Commerce

Ecco la procedura per installare una nuova lingua sul vostro Magento Store 1. Scaricare la traduzione desiderata attraverso Magento Connect 2. Dopo averla installata, andare a Sistema > Gestione Negozi > Crea Vetrina. Inserire i dati e Salvare 3. Andare a Sistema > Configurazione > Ambito della Configurazione Corrente (Selezionare la propria lingua dal menu dropdown) e, dalla barra destra, sotto "opzioni Locali", selezionare la lingua desiderata Fonte: fooit.blogspot.com

set
02
Scritto da: carlo  | Archivio: Guide Per Magento Commerce, Magento Commerce

Quando si lavora con grandi quantità di dati, non sempre si può fare tutto manualmente. Immaginate di avere un catalogo con diverse migliaia di prodotti e, per qualche motivo, di doverli cancellare tutti senza intaccare l'organizzazione e la categorizzazione delle categorie. Pensare di cancellare un prodotto alla volta manualmente, può portare rapidamente all'esaurimenento nervoso e/o alla pazzia. Dunque, se dovete cancellare tutti i prodotti senza cancellare alcuna categoria, consigliamo vivamente di utilizzare questo script, che funziona anche con la versione 1.4.0.1 di Magento

SET FOREIGN_KEY_CHECKS = 0;
TRUNCATE TABLE `catalog_product_bundle_option`;
TRUNCATE TABLE `catalog_product_bundle_option_value`;
TRUNCATE TABLE `catalog_product_bundle_selection`;
TRUNCATE TABLE `catalog_product_entity_datetime`;
TRUNCATE TABLE `catalog_product_entity_decimal`;
TRUNCATE TABLE `catalog_product_entity_gallery`;
TRUNCATE TABLE `catalog_product_entity_int`;
TRUNCATE TABLE `catalog_product_entity_media_gallery`;
TRUNCATE TABLE `catalog_product_entity_media_gallery_value`;
TRUNCATE TABLE `catalog_product_entity_text`;
TRUNCATE TABLE `catalog_product_entity_tier_price`;
TRUNCATE TABLE `catalog_product_entity_varchar`;
TRUNCATE TABLE `catalog_product_link`;
TRUNCATE TABLE `catalog_product_link_attribute`;
TRUNCATE TABLE `catalog_product_link_attribute_decimal`;
TRUNCATE TABLE `catalog_product_link_attribute_int`;
TRUNCATE TABLE `catalog_product_link_attribute_varchar`;
TRUNCATE TABLE `catalog_product_link_type`;
TRUNCATE TABLE `catalog_product_option`;
TRUNCATE TABLE `catalog_product_option_price`;
TRUNCATE TABLE `catalog_product_option_title`;
TRUNCATE TABLE `catalog_product_option_type_price`;
TRUNCATE TABLE `catalog_product_option_type_title`;
TRUNCATE TABLE `catalog_product_option_type_value`;
TRUNCATE TABLE `catalog_product_super_attribute_label`;
TRUNCATE TABLE `catalog_product_super_attribute_pricing`;
TRUNCATE TABLE `catalog_product_super_attribute`;
TRUNCATE TABLE `catalog_product_super_link`;
TRUNCATE TABLE `catalog_product_enabled_index`;
TRUNCATE TABLE `catalog_product_website`;
TRUNCATE TABLE `catalog_category_product_index`;
TRUNCATE TABLE `catalog_category_product`;
TRUNCATE TABLE `cataloginventory_stock_item`;
TRUNCATE TABLE `cataloginventory_stock_status`;
TRUNCATE TABLE `cataloginventory_stock`;
INSERT  INTO `catalog_product_link_type`(`link_type_id`,`code`)
VALUES (1,'relation'),(2,'bundle'),(3,'super'),(4,'up_sell'),(5,'cross_sell');
INSERT  INTO `catalog_product_link_attribute`(`product_link_attribute_id`,`link_type_id`,`product_link_attribute_code`,`data_type`)
VALUES (1,2,'qty','decimal'),(2,1,'position','int'),(3,4,'position','int'),(4,5,'position','int'),(6,1,'qty','decimal'),(7,3,'position','int'),(8,3,'qty','decimal');
INSERT  INTO `cataloginventory_stock`(`stock_id`,`stock_name`)
VALUES (1,'Default');
TRUNCATE TABLE `catalog_product_entity`;
SET FOREIGN_KEY_CHECKS = 1;
Speriamo vi possa essere d'aiuto

set
01
Scritto da: carlo  | Archivio: Magento Commerce, Video Guide

Il Video che segue (in Inglese) mostra tutti i passi per creare un Database MySql e un Utente per Magento Commerce, utilizzando il database Widard di cPanel Fonte: screencastworld.com

ago
31

Magento presenta al suo interno la funzionalità per installare automaticamente i moduli aggiuntivi per il vostro negozio online. Sostanzialmente, tutto quello di cui avete bisogno è l'extension code dopo di che lo script installerà l'estensione in pochi click. Con questo tutorial mostreremo nel dettaglio come installare moduli ed estensioni aggiuntivi di Magento attraverso Magento Connect. Inoltre, vi forniremo le instruzioni per aggiornare i moduli e le estensioni di Magento già esistenti. Prima di tutto dovete accedere all'area di amministrazione di Magento. Successivamente andate a Sistema > Magento Connect > Magento Connect Manager

magento-backend
Magento Connect Manager si aprirà in una nuova pagina, dove vi verranno richieste nuovamente le credenziali di accesso. Userete la stessa username e password che avete utilizzato per accedere alla backend magento-connect-manager-login Dopo aver effettuato l'accesso, vi troverete davanti due sezioni: Extensions e Settings. Si raccomanda, per prima cosa, di verificare le opzioni scelte nella sezione Settings
connect-manager-settings
Nella sezione Settings ci sono due opzioni

ago
30
Scritto da: carlo  | Archivio: Guide Per Magento Commerce, Magento Commerce

Recentemente abbiamo installato la versione 1.4.1.1 di Magento in una sottodirectory e abbiamo ottenuto l'errore che segue: “Fatal error: Call to a member function toHtml() on a non-object in /var/www/vhosts/xxx/httpdocs/shop/app/code/core/Mage/Core/Model/Layout.php on line 529" La causa principale di questo errore è molto semplice ed è qualcosa di molto simile ad un bug. Non c'è bisogno di andare nel file php in questione, non c'è nulla da modificare lì. Nelle nuove versioni di Magento è stato cambiato il modo in cui childHtml e quindi i blocchi vengono richiamati. Essi richiedono un nome. Quando viene installato, Magento usa il tema default/default. Ed ecco dove viene fuori l'errore. Nel vostro file default/default/layout/page.xml troverete una riga (probabilmente la 91) che appare così: <block type=”core/profiler” output=”toHtml” /> In reatà dovrebbe essere così: <block type=”core/profiler” output=”toHtml” name=”core_profiler” /> Con l'aggiunta del nome dell'attributo, tutto funziona bene. Dopo la modifica, pulite la cache e vedrete che la vostra nuova installazione di Magento funzionerà alla perfezione

ago
26
Scritto da: carlo  | Archivio: Guide Per Magento Commerce, Moduli Per Magento

Scenario: Hai creato un modulo personalizzato, hai inserito alcuni dati nel tuo database e hai bisogno di mostrarli random, in maniera casuale. Soluzione: La funzione rand() in MySQL serve ad andare a prendere i dati in maniera casuale. All'interno di Magento, si possono selezionare le righe da mostrare in maniera random dalla tabella MySQL utilizzando Zend_Db_Expr(‘RAND()’). Per fare ciò devi creare una nuova funzione nella classe del tuo modulo (NomedelloSpazio/NomeModulo/Model/Mysql4/NomeModulo/Collection.php)

public function setRandomOrder()
{
	$this->getSelect()->order(new Zend_Db_Expr('RAND()'));
	return $this;
}
Ora puoi andare a prendere i dati dalla tabella in maniera random utilizzando la funzione setRandomOrder appena creata. Il codice che segue può essere inserito in un blocco o nel file template del tuo modulo (.phtml)
$collection = Mage::getModel('yourmodule/yourmodule')
					->getCollection()
					->setRandomOrder();

echo "
"; print_r($collection->getData()); echo "
";
Spero vi sia d'aiuto Fonte: blog.chapagain.com

ago
25
Scritto da: carlo  | Archivio: Guide Per Magento Commerce, Magento Commerce

Nel mio articolo precedente, vi avevo parlato di come cambiare il simbolo della valuta attraverso alcune piccole modifiche sul file Zend (lib/Zend/Locale/Data/en.xml). Rimane il metodo più semplice ma, l'effetto collaterale maggiore che si ha con questo metodo è che tutto scompare ad ogni aggiornamento di Magento. Allora, il metodo migliore consiste nel sovrascrivere le classi dei modelli di Magento che sono responsabili del cambiamento del simbolo della valuta. Scenario Avete bisogno di cambiare il simbolo della valuta delle Rupie Nepalesi (da Nrs a Rs). Il simbolo standard delle Rupie Nepalesi è Nrs. Soluzione Create un nuovo modulo e sovrascrivete due classi di modello 1) Mage_Core_Model_Locale_Currency 2) Mage_Core_Model_Locale Il file Config del mio modulo (MyNamespace/MyModule/etc/config.xml)

	

				MyNamespace_MyModule_Model_Locale_Currency
				MyNamespace_MyModule_Model_Locale
MyNamespace_MyModule_Model_Locale_Currency Classe del mio modulo (MyNamespace/MyModule/Model/Locale/Currency.php) In questa classe ho modificato il simbolo della valuta da Nrs a Rs
class MyNamespace_MyModule_Model_Locale_Currency extends Mage_Core_Model_Locale_Currency
{
	/**
     * Creates a currency instance. Every supressed parameter is used from the actual or the given locale.
     *
     * @param  string             $currency OPTIONAL currency short name
     * @param  string|Zend_Locale $locale   OPTIONAL locale name
     * @throws Zend_Currency_Exception When currency