Magento

Magento eコマースプラットフォームのユーザー向けのQ&A

2
magento2にbootstrap.jsを追加する方法
私はmagento2テーマにブートストラップjsを含めようとしています。しかし、問題はブートストラップjsをテーマに含めることです。そのタイムコンソールは、ブートストラップがjQueryを必要とするというエラーを出します。 その後、どうすればいいですか?誰でも助けてくれますか?
13 magento2  jquery 

4
layout.xmlのブロックの削除プロセスをキャンセルします
ブロックの削除を元に戻したい。 ブロックはで削除されます vendor/magento/theme-frontend-blank/Magento_Checkout/layout/checkout_index_index.xml <referenceBlock name="minicart" remove="true"/> <referenceContainer name="header.panel" remove="true"/> <referenceBlock name="top.search" remove="true"/> <referenceBlock name="catalog.compare.link" remove="true"/> <referenceBlock name="catalog.topnav" remove="true"/> <referenceContainer name="footer-container" remove="true"/> ドキュメントによると、1つを削除することができremove=falseます。 だから私は私のテーマでファイルを作成しました Magento_Checkout/layout/checkout_index_index.xml <referenceBlock name="minicart" remove="false"/> <referenceContainer name="header.panel" remove="false"/> <referenceBlock name="top.search" remove="false"/> <referenceBlock name="catalog.compare.link" remove="false"/> <referenceBlock name="catalog.topnav" remove="false"/> <referenceContainer name="footer-container" remove="false"/> しかし、これは機能しません。このgithubの問題によると、これはバグではありません 編集: また、関連するフォーラム投稿もあります
13 magento2  layout 


4
Magento 2でCSSファイルを配置/順序付ける適切な方法は何ですか?
でMagentoの2 DevDocそれは言います CSSファイルを含めるには、レイアウトファイルの<head>セクションに<css src = "<path> / <file>" media = "print | <option>" />ブロックを追加します。 ただし、CSSファイルの順序にどのように影響を与えることができるかについては述べていません。そして、親テーマを持つカスタムテーマにこの方法でCSSファイルを追加すると、ファイルは<head>セクションの一番上に追加され、その下に他の多くのCSSファイルが追加されます。低く、親テーマまたは拡張機能のルールを簡単にオーバーライドすることはできません。 Magento 1にも同様の問題があり、回避策がありました。きれいな人もいれば、そうでない人もいた。 Magento 2の<head>の下部にあるカスタムテーマのCSSファイルを注文する最良の方法は何ですか?可能であれば、カスタムテーマのMagento 2レイアウトガイドラインに準拠していますか?
13 magento2  layout  css  head 

4
Magento 2:構成設定に応じてブロックを削除
特定の構成フラグがに設定されてtrueいる場合にのみ、特定のページ(フロントエンドまたはバックエンド)からブロックを削除しようとしています。 例を見てみましょう。管理ダッシュボードから 名前dashboardを持つブロックを削除したい。 ブロックはモジュールのadminhtml_dashboard_index.xmlファイルで定義されますMagento_Backend: <referenceContainer name="content"> <block class="Magento\Backend\Block\Dashboard" name="dashboard"/> </referenceContainer> アダムの答えのおかげで、私はこれをadminhtml_dashboard_index.xml <body> <referenceBlock name="dashboard" remove="true" /> </body> しかし、パスdashboard/settings/removeを使用した構成設定に値がある場合にのみ、ノッチを取り、このブロックを削除します1。 レイアウトxmlアプローチは素晴らしいでしょうが、オブザーバーアプローチも取ります。

1
整合性制約違反:1062キー 'UNQ_SALES_FLAT_INVOICE_INCREMENT_ID'のエントリが重複しています
私は商人が次のエラーで失敗したいくつかの支払い取引の失敗の根本原因を追跡するのを手伝っています(重い注文日中に) SQLSTATE [23000]:整合性制約違反:1062キー 'UNQ_SALES_FLAT_INVOICE_INCREMENT_ID'のエントリ '51986'が重複しています UNQ_SALES_FLAT_INVOICE_INCREMENT_IDインデックスは、上で一意のキーであるincrement_id列sales_flat_invoiceのテーブル。increment_idエラー(51986)で言及されているものをこの表で見ると、これを含む請求書がすでにincrement_idあり、別の顧客が注文したものであることがわかります。 これに関連する私の2つの質問 Magento CE 1.9.0.1では通常、請求書IDはどこで作成されますか? ほぼ同時注文の請求書​​IDが競合するストックMagento CE 1.9.0.1に既知の問題はありますか? インクリメントID 51986は、ストアにインストールされているインクリメントIDを変更するための何らかの拡張機能があることを意味しますが、そのパスを深く進む前に、これに対する既知の科学w / r / tがないことを確認したいと思います。

6
Magento 2のログファイルに配列変数を印刷するにはどうすればよいですか?
配列変数の内容をログファイルに出力しようとしています。 Magento 1では、以下を使用できました。 Mage::log(print_r($arr, 1), null, 'logfile.log'); Magento 2では、クラスファイルに次のコードを記述しました。 protected $_logger; public function __construct(\Psr\Log\LoggerInterface $logger) { $this->_logger = $logger; } private function getValuesAsHtmlList(\Magento\Framework\Object $object) { $options = $this->getOptions($object); //$this->_logger->addDebug($options ); $this->_logger->log(100,null,$options); } キャッシュをクリアした後にコードを実行すると、Debug.log&system.logファイルに配列の内容が表示されません。 誰かがそれについて考えているなら共有してください。
13 magento2  log 

1
Magento 2アンインストールモジュール
どうやら、Magento 2は、モジュールをアンインストールする際にdbスキーマの変更を許可するアンインストールスクリプトをサポートしているようです(horay !!)。 ここで説明したように、これは composerを介してインストールされたモジュールでのみ機能します。 (将来、すべてのモジュールで機能することを願っていますが、それは別の問題です)。 というモジュールがあるとしましょうTesting_Demo。 このモジュールは、アンインストール時に削除したい3つのことを行います。 というテーブルを追加しますtesting_demo。だから私はそれを落とす必要があります。 という製品属性を追加しますdemo。これは削除する必要があります system->configurationテーブルに保存されるかもしれないかもしれないいくつかの設定があるcore_config_data。これらすべての設定にはパスがありますtesting_demo/...。したがって、これらも削除する必要があります。 モジュールのアンインストールスクリプトはどのようになりますか?



1
Magento 2 getTableの動作
TL; DR: Magento 2にgetTableは、リソースコレクションモデルからメソッドを作成して、2つの異なるパラメーターに対して同じテーブル名を返す方法はありますか? 詳細な説明 Magento 1の例から始め ますmodule_entiti1_entity2。 このconfig.xmlようなテーブルをこのように宣言する必要がありました <module_resource> <class>....</class> <entities> <entity1_entity2> <table>module_entiti1_entity2</table> </entity1_entity2> </entities> </module_resource> 次に、たとえば次のようなリソースコレクションモデルからテーブル名を取得できます。 $collection->getTable('module/entity1_entity2'); しかし、必要であれば、同じテーブルに複数のエイリアスを使用できます。 私のconfig.xmlセクションが <module_resource> <class>....</class> <entities> <entity1_entity2> <table>module_entiti1_entity2</table> </entity1_entity2> <entity2_entity1> <table>module_entiti1_entity2</table> </entity2_entity1> </entities> </module_resource> 2つの方法でテーブルを取得できます。 $collection->getTable('module/entity1_entity2'); $collection->getTable('module/entity2_entity1'); Magento 2では、上記のようなテーブル宣言はもうありません。 このようにテーブル名を取得できます$collection->getTable('module_entity1_entity2')。 パラメーターがパラメーターmodule_entity2_entity1と同じテーブル名を返すようにmagentoに指示する方法はありますmodule_entity1_entity2か?

4
Magento 2でプログラムで顧客を追加する方法は?
Magento 2でプログラマチックに顧客を作成する必要があります。ドキュメントはほとんど見つかりませんでした。基本的に、次のコードを「Magento 2」に変換する必要があります。 $websiteId = Mage::app()->getWebsite()->getId(); $store = Mage::app()->getStore(); $customer = Mage::getModel("customer/customer"); $customer ->setWebsiteId($websiteId) ->setStore($store) ->setFirstname('John') ->setLastname('Doe') ->setEmail('jd1@ex.com') ->setPassword('somepassword'); try{ $customer->save(); }

1
クレジットメモ-デフォルトで返される商品は0
クレジットメモの私の典型的な使用例は、価格の調整(配送料の調整、礼儀割引など)です。トータルリターンのために使用することはまれです。 Magentoのデフォルトの動作は、CreditMemoがすべての製品を返品し、すべての配送料を返金するということです。返品がある場合でも、送料が返金されることはまれです。 CreditMemoのデフォルトが$ 0(製品の払い戻しなし、配送料の払い戻しなし)の場合、管理者は払い戻し対象を明示する(デフォルトでは何もしない)方が良い(そして安全です)。それ以外の場合、たとえば、配送料の払い戻しを目的としたクレジットメモを作成し、注文全体を払い戻すのは簡単です! CreditMemoを$ 0にデフォルト設定することをサポートする構成またはカスタマイズはありますか?
13 creditmemo 

2
動的カスタムオプションを見積品目、注文品目にコピーする
catalog_controller_product_viewイベントで呼び出される製品詳細ページに動的カスタムオプションを追加するオブザーバーがあります。これにより、お客様は既存のライセンスコードのドロップダウンから選択できます。 public function addLicenseOptions(Varien_Event_Observer $observer) { $product = $observer->getEvent()->getProduct(); if ($product->isSubscriptionProduct()) { $optionModel = Mage::getModel('catalog/product_option') ->setTitle('License Code') ->setProductId($product->getId()) ->setStoreId($product->getStoreId()) ->setId('license_code') ->setType('drop_down') ->setPrice(null) ->setPriceType(null) ->setIsRequire(true); $customer = Mage::getSingleton('customer/session')->getCustomer(); if ($customer->getId()) { $linksPurchased = Mage::getResourceModel('downloadable/link_purchased_collection') ->addFieldToFilter('customer_id', $customer->getId()); if ($linksPurchased->count() > 0) { foreach ($linksPurchased as $linkPurchased) { $valueModel = Mage::getModel('catalog/product_option_value') ->setTitle($linkPurchased->getData('key_code')) ->setProduct($product) …

2
無効なメールアドレス「admin@eternal.florist」
こんにちは、私はこの新しい派手なドメイン名を購入しましたが、今は困っています。Magentoの管理者にメールアドレスを保存するように設定しようとしていました。上記のエラーが発生しました。私は何をしますか? (DBでも変更しようとしました。しかし、それを保持するテーブルが見つかりません)
13 email 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.