magento
Shell, CLI
Ricerca…
Osservazioni
Nozioni di base
- È necessario avere una riga di comando Linux o connettersi utilizzando SSH al server per poter utilizzare gli script di shell.
- Vai alla tua
MAGENTO_ROOT/shell
- Lo script può essere eseguito digitando ie
php -f indexer.php help
Metodi di shell core per file
abstract.php
indexer.php
compiler.php
log.php
Script di shell php personalizzati
A volte abbiamo bisogno di accedere a Magento al di fuori di un browser web per omettere i tempi di esecuzione o impostare cose diverse che non influenzeranno il frontend.
Ci sono 2 modi per avviare Magento, ma solo uno è il modo Magento. Leggi di più sopra nella sezione degli esempi.
Utilizzo della shell senza estendere Mage_Shell_Abstract
Avvio automatico di Magento chiamando:
require_once 'app/Mage.php';
Mage::app();
// Your code
Questo è il modo più semplice ma non proprio il modo Magento perché non stiamo usando la classe che estende Mage_Shell_Abstract
- la classe che quando estesa ci fornisce gli strumenti per analizzare gli argomenti della riga di comando, chiama __applyPhpVariables()
nel suo costruttore (la funzione analizza i file .htaccess e applica le impostazioni php allo script di shell).
Usando la shell in modo Magento - estendi Mage_Shell_Abstract
Magento way
Il file risiede in shell/custom.php
<?php
require_once' abstract.php';
class Stackoverflow_Shell_Custom extends Mage_Shell_Abstract
{
protected $_argname = array();
public function __construct() {
parent::__construct();
// Time limit to infinity
set_time_limit(0);
// Get command line argument named "argname"
// Accepts multiple values (comma separated)
if($this->getArg('argname')) {
$this->_argname = array_merge(
$this->_argname,
array_map(
'trim',
explode(',', $this->getArg('argname'))
)
);
}
}
// Shell script point of entry
public function run() {
}
// Usage help
public function usageHelp()
{
return <<<USAGE
Usage: php -f scriptname.php -- [options]
--argname <argvalue> Argument description
help This help
USAGE;
}
}
// Instantiate
$shell = new Stackoverflow_Shell_Custom();
// Initiate script
$shell->run();
}
Esecuzione di Reindex dalla CLI
Visualizza stato:
php indexer.php status
Reindex All
php indexer.php reindexall
Indice specifico di reindicamento
php indexer.php --reindex CODE (see list below)
Elenco dei singoli codici
Indice | Codice |
---|---|
Caratteristiche del prodotto | catalog_product_attribute |
Prezzi del prodotto | catalog_product_price |
L'URL del catalogo riscrive | catalog_url |
Dati piatti del prodotto | catalog_product_flat |
Categoria dati piatti | catalog_category_flat |
Prodotti di categoria | catalog_category_product |
Indice di ricerca del catalogo | catalogsearch_fulltext |
Stato delle scorte | cataloginventory_stock |