magento
Shell, CLI
Szukaj…
Uwagi
Podstawy
- Aby korzystać ze skryptów powłoki, musisz mieć wiersz komend systemu Linux lub połączyć się za pomocą SSH z serwerem.
- Idź do swojej
MAGENTO_ROOT/shell
- Skrypt można uruchomić, wpisując np
php -f indexer.php help
Podstawowe metody powłoki według plików
abstract.php
indexer.php
compiler.php
log.php
Niestandardowe skrypty PHP
Czasami musimy uzyskać dostęp do Magento poza przeglądarką internetową, aby pominąć czasy wykonania lub ustawić różne rzeczy, które nie będą miały wpływu na interfejs.
Są 2 sposoby na załadowanie Magento, ale tylko jeden to Magento. Przeczytaj więcej powyżej w sekcji przykładów.
Używanie powłoki bez rozszerzania Mage_Shell_Abstract
Bootstrapping Magento, dzwoniąc:
require_once 'app/Mage.php';
Mage::app();
// Your code
Jest to najprostszy sposób, ale nie tak naprawdę Magento, ponieważ nie używamy klasy rozszerzającej Mage_Shell_Abstract
- klasy, która po rozszerzeniu zapewnia nam narzędzia do analizowania argumentów wiersza poleceń, wywołuje __applyPhpVariables()
w swoim konstruktorze (funkcja analizuje pliki .htaccess i stosuje ustawienia php do skryptu powłoki).
Używając powłoki w sposób Magento - rozszerz Mage_Shell_Abstract
Sposób Magento
Plik znajduje się w 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();
}
Wykonywanie Reindex z CLI
Wyświetl status:
php indexer.php status
Reindex All
php indexer.php reindexall
Indeks właściwy dla Reindex
php indexer.php --reindex CODE (see list below)
Lista poszczególnych kodów
Indeks | Kod |
---|---|
Cechy produktu | katalog_produktu_atrybut |
Ceny produktów | cena_produktu_katalogowego |
Przepisywanie adresów URL katalogu | katalog_url |
Dane płaskie produktu | katalog_produktu_flat |
Kategoria Dane płaskie | katalog_kategorii_płaskie |
Produkty kategorii | katalog_kategoria_produkt |
Indeks wyszukiwania w katalogu | katalog_wyszukiwania_tekstowy |
Stan magazynowy | cataloginventory_stock |