Szukam najszybszej i niezawodnej metody masowej aktualizacji atrybutów. Poniżej znajdują się metody, o których wiem, ale nie wiem, z którymi powinienem się zdecydować. $store_id = 0; Mage::getSingleton('catalog/product_action')->updateAttributes( array($product_id), array('attribute_code' => $attribute_code), $store_id ); lub $product->setData($attribute_code, 1234); $product->getResource()->saveAttribute($product, $attribute_code);
Przede wszystkim jest to może pytanie, na które już udzielono odpowiedzi, ale nie znalazłem nic na ten temat. To nie jest problem, ale pytanie o najlepszy sposób zarządzania plikiem config.phpw Magento 2. W rzeczywistości nasz config.phpnie jest wersjonowany (domyślnie w .gitignorepliku M2 ), więc nie ma go w naszym repozytorium. …
Chcę zmodyfikować plik css pub/static/frontend/Magento/luma/en_US/css/styles-l.css. Początkowo ten plik nie znajduje się w folderze pub / static i jest obecny w vendor/magento/theme-frontend-blank/web/css/styles-l.less (it's styles-l.less) Kiedy używam zawartości statycznej za pomocą php bin/magento setup:static-content:deploy, tworzone są 2 pliki w pub / static z nią powiązane. 1. pub/static/frontend/Magento/luma/en_US/css/styles-l.less 2. pub/static/frontend/Magento/luma/en_US/css/styles-l.css Jestem programistą wspieranym …
To pytanie dotyczy dobrych praktyk programistycznych w Magento. Muszę pokazać (w liście produktów kategorii) produkt wraz z powiązanymi produktami w miniaturach. Więc edytowałem mypackage/mytheme/template/catalog/product/list.phtmlcoś takiego <?php $related=$_product->getRelatedProductIds(); if(count($related)>0){ echo '<div class="a'.$ap.'"></div>'; echo '<div class="li_p"><ul>'; foreach($related as $rela){ $rela_nom=Mage::getModel('catalog/product')->load($rela); echo '<li><a href="'.$rela_nom->getProductUrl().'"> <img src="'.$this->helper('catalog/image')->init($rela_nom, 'small_image')->resize(20).'" width="20" height="20"> </a><li>'; } echo '</ul></div>'; …
W pliku: app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Datetime.phpw ramach render()metody wydaje się, że dokładnie ten sam kod jest uruchamiany zarówno w blokach try and catch. Wyjątek w ogóle nie jest obsługiwany. Jestem ciekawy, jakie są powody (jeśli w ogóle) pisania takiego kodu: try { $data = Mage::app()->getLocale() ->date($data, Varien_Date::DATETIME_INTERNAL_FORMAT)->toString($format); } catch (Exception $e) { $data …
Stworzyłem własny moduł CRUD, który zawiera wbudowaną akcję edycyjną podobną do tej dla stron CMS. Wszystko działa OK, ale kiedy uruchamiam phpsniffer ze standardem EcgM2 , otrzymuję to ostrzeżenie: Modelowa metoda LSD save () wykryta w pętli Jak mogę tego uniknąć? Uwaga: to samo ostrzeżenie pojawia się, gdy „powącham” plik …
Staram się znaleźć najlepszy sposób renderowania HTML przez AJAX w Magento 2. Sposób 1: Korzystanie z kontrolera bez układu Plik Foo/Bar/Controller/Popin/Content.php <?php namespace Foo\Bar\Controller\Popin; use Magento\Framework\App\Action\Action; use Magento\Framework\App\Action\Context; /** * Class Content */ class Content extends Action { /** * Content constructor. * * @param Context $context */ public function …
Zastanawiałem się, jaki jest właściwy sposób wdrożenia rozszerzalnego modelu EAV. Widzę Magento\Catalog\Model\Product, że metoda getExtensionAttributes()jest implementowana w następujący sposób: public function getExtensionAttributes() { $extensionAttributes = $this->_getExtensionAttributes(); if (!$extensionAttributes) { return $this->extensionAttributesFactory->create('Magento\Catalog\Api\Data\ProductInterface'); } return $extensionAttributes; } Ale w innych, takich jak modele klientów lub kategorii, jest to po prostu public function …
Mam niestandardową tabelę z odniesieniem do produktu product_id. Teraz chciałbym wyświetlić informacje o produkcie (SKU, nazwa) w siatce wewnętrznej bazy danych , ale nie jestem pewien, jaka jest najlepsza praktyka, aby to zrobić? Moje najlepsze przypuszczenie SKUbrzmi następująco: $collection->join( 'catalog/product', 'product_id=`catalog/product`.entity_id', array('product_sku' => 'sku') ) (kod z _prepareCollection() metody w …
Jeśli mam logikę polegającą na aktualizacji wielu obiektów modelu, które zaktualizują kilka tabel w bazie danych, jak zapewnić transakcję bazy danych, aby zapewnić integralność danych?
Jest coś takiego jak coding standarddla Magento 1 , nazywanego ECGtam , gdzie należy unikać wielu rzeczy lub metod, których nie należy stosować. Spróbujmy utworzyć listę, która obejmie wszystkie przypadki, które zgłaszają „błędy” lub „ostrzeżenia” w kodzie. Poniżej znajduje się lista wszystkich możliwych ostrzeżeń. Będę aktualizować ten post w regularnych …
Obecnie próbuję ulepszyć kilka modułów pod względem wydajności. Niektórzy z was mogą znać użycie walk()metody zbierania, która jest bardzo przydatna, aby uniknąć bezpośredniego przechodzenia między produktami. Ponadto dzięki @Vinai można również użyć delete()metody zbierania . Zauważyłem jednak, że rodzime pliki Magento 1 nie zawsze używają żadnej z tych metod usuwania. …
Istnieje rozszerzenie innej firmy, które przepisuje określoną klasę podstawową Magento. Nie powinno mieć znaczenia, czy jest to blok, pomocnik czy model, ale w tym przypadku jest to model. Teraz napotykam, że to przepisywanie jest złe i chciałbym je wyłączyć bez zmiany rozszerzenia strony trzeciej. Dlatego piszę niestandardowe rozszerzenie, które zależy …
Powiedzmy, że chcę opracować rozszerzenie Magento, które łączy się, powiedzmy, z pakietem wykresów Open Source lub galerią obrazów lub czymkolwiek innym, co NIE jest częścią samego rozszerzenia. Po pobraniu (oddzielnie od rozszerzenia) biblioteka innej firmy jest dostarczana jako pojedynczy plik .zip ze wszystkimi plikami .php, .js, .html i .css. Czy …
Wewnątrz mojego niestandardowego modułu dodałem plik Vendor/Theme/view/layout/default.xml którego używam do zastąpienia wielu globalnych szablonów witryny za pomocą szablonów / bloków / układów z niestandardowego modułu. Załączam również własną globalną stylistykę, która istnieje w view/webkatalogu w tym module. Czy zamiast tego powinienem używać motywu? Czy przemawia za tym jeden wzorzec projektowy …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.