Magento

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

4
管理者の配送先住所ボックスにカスタム属性を表示するにはどうすればよいですか?
チェックアウトページにカスタム値を含むドロップダウンカスタムフィールドを追加しました。また、属性値をデータベースに保存しますが、注文の配送先住所には表示しません。それを表示する方法はありますか? InstallSchema.php $connection->addColumn( $installer->getTable('quote_address'), 'mob_type', [ 'type' => \Magento\Framework\DB\Ddl\Table ::TYPE_TEXT, 'nullable' => true, 'default' => NULL, 'length' => 255, 'comment' => 'Mob Type' ] ); $connection->addColumn( $installer->getTable('sales_order_address'), 'mob_type', [ 'type' => \Magento\Framework\DB\Ddl\Table ::TYPE_TEXT, 'nullable' => true, 'default' => NULL, 'length' => 255, 'comment' => 'Mob Type' ] ); $installer->endSetup(); プラグイン …

3
SOAP呼び出しのパフォーマンスを改善する
Magento 2.1のパフォーマンスに問題があります 私の店には、90.000の製品があります。これらの製品を石鹸に加えました。これを行ったとき、各記事(製品?)(要求>応答)で約7秒かかりました。要約すると、すべての製品を初期化するのに数日かかりました。 現在、すべての製品がショップにあります。数週間のうちに、記事(製品)に関するいくつかのことを更新する必要があります。石鹸でこれを再度行うと、同じ時間がかかります。更新を行うと、ショップは使用できなくなります。リクエストとレスポンスの例はこちら:https : //pastebin.com/aqnMJk98 https://pastebin.com/UAh0h8Zz サーバーには、12コアのCPU、24 GBのRAM、およびSSDが搭載されています。Apache2 PHP7-fpmおよびMYSQLを使用したUbuntu 16.04の実行。 更新プロセスを見ると、MySQLの5つのコアが100%PHPで少し動作しており、残りはアイドル状態です。使用するRAMはごくわずかiotopであり、SSDが退屈していると言います。 データベースのパフォーマンスを見て、Magentoがデータベースへの追加プロセスで数千のコマンドを実行したことを確認しました。これでいい? Magento CSVインポートで更新すると、はるかに高速になります。 このMagento2を高速化するにはどうすればよいですか?この状況では、このショップでうまく機能することは不可能です。

3
Magento 2:モデルとデータモデルの違い
Magento 2がサービスコントラクトアーキテクチャの一部としてデータモデルを導入したことは承知しています。データモデルは通常、モジュールのApi / Data /で定義されたインターフェイスを実装します。 しかし、Magentoは古いモデルも保持しているようです。 モジュール顧客の例を見てみましょう。 Api / Data / CustomerInterface.phpで定義されたデータモデルインターフェイス 上記のインターフェースはModel / Data / Customer.phpに実装されています データモデルには、顧客変数のすべてのゲッター関数とセッター関数があります。 上記に加えて、Model / Customer.phpもあります。これにはゲッターとセッターの機能もあります。これは、ResourceModel(Model / ResourceModel / Customer.php)に接続するMagento 1モデルに似ています。 Model / ResourceModel / CustomerRepository.phpでは、さまざまな関数がMagnento 1モデルからデータを収集し、それらをデータモデルに転送してから、データモデルを返します。 なぜ古いモデルが必要なのですか?データモデルがResourceModelに直接接続できないのはなぜですか?

3
プログラムで顧客を作成する
一部の顧客をプログラムで作成したいのですが、WebサイトIDを保存したいときに問題があります。 複数のウェブサイトIDがあります: 0 => admin 1 => germany 2 => hungary 3 => romania これは私のコードです: $customer = Mage::getModel("customer/customer"); $customer->setWebsiteId(3); $customer->setStoreId(1); ..... $customer->save(); 顧客を保存するとAdmin、ウェブサイトのドロップダウンから値が選択されます。私がウェブサイトIDに与える値(たとえば12321)に関係なく、Admin値を取得しました。どうして ? ありがとう。

1
Magento 2モーダルボタンによるカテゴリツリーレンダラー入力の追加
Uicomponentフォームを使用して、カスタムフォームのカテゴリ入力を配置しようとしています。 ドロップダウンを作成できますが、ボタンを作成してそこから新しいモーダルを開くにはどうすればよいですか? uicomponentを使用してボタンを作成し、そこからモーダルを開くことはできますか。私は、ボタンたい代わりの新しいカテゴリー I、追加する製品の選択]ボタンをおよびshow追加したいリストから製品のを選択し、グリッド内のカテゴリ。 カテゴリ入力を作成するためのxmlは次のとおりです。 <field name="parent"> <argument name="data" xsi:type="array"> <item name="options" xsi:type="object">Magento\Catalog\Ui\Component\Product\Form\Categories\Options</item> <item name="config" xsi:type="array"> <item name="label" xsi:type="string" translate="true">Parent Category</item> <item name="componentType" xsi:type="string">field</item> <item name="formElement" xsi:type="string">select</item> <item name="component" xsi:type="string">Magento_Catalog/js/components/new-category</item> <item name="elementTmpl" xsi:type="string">ui/grid/filters/elements/ui-select</item> <item name="dataScope" xsi:type="string">data.parent</item> <item name="filterOptions" xsi:type="boolean">true</item> <item name="showCheckbox" xsi:type="boolean">false</item> <item name="disableLabel" xsi:type="boolean">true</item> <item name="multiple" xsi:type="boolean">false</item> <item name="levelsVisibility" …

2
XMLデータを修正して再試行してください。要素 'referenceBlock':この要素は予期されていません
XMLデータを修正して再試行してください。要素 'referenceBlock':この要素は予期されていません。Expectedは(referenceContainer、container、update、move)のいずれかです。ライン1 [ デザイン] -> [ レイアウト更新XML]を使用してページタイトルを削除しようとしたときにこのエラーが発生しました。 このブロックを削除するために使用したコード: <referenceBlock name="page.main.title" remove="true"/> referenceContainerは正常に動作しますが、referenceBlockのみで問題が発生します
13 magento2 

1
Magento2 Rest API注文フロー
注文のためにmagento WebサイトにREST API呼び出しを行っています。以下は私の呼び出しのシーケンスです。 カートを作成する rest/V1/guest-carts/ カートを入手 rest/V1/guest-carts/bae0af147b83f1561f66cc4e3c97916e 商品をカートに追加する rest/V1/guest-carts/24/items 請求情報の追加、支払い方法の設定、注文 rest/V1/guest-carts/24/payment-information このシーケンスでは、注文は注文ステータス「保留」で配置されます。支払いを処理し、請求書を生成するために支払いゲートウェイ(PayPalなど)が関与している場合、APIを介して支払いがどのようにキャプチャされるのか疑問に思います。 支払いをキャプチャするための上記のフローに欠落しているAPIはありますか?

3
Magento 2:支払い方法選択のイベントオブザーバー
フロントエンドチェックアウトページの利用可能な支払い方法リストから支払い方法が選択されたときにオブザーバーを呼び出す必要があるカスタム拡張機能に取り組んでいます。 誰がこれにどのイベントオブザーバーを使用すべきか教えてもらえますか?カスタム関数を呼び出して、カートの小計に料金を追加する必要があります。

1
tryブロックとcatchブロックの両方に同じコードを配置する正当な理由はありますか?
ファイル:app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Datetime.phpでは、render()メソッド内で、tryブロックとcatchブロックの両方でまったく同じコードが実行されているようです。例外はまったく処理されません。私はこのようなコードを書く理由(もしあれば)を知りたいです: try { $data = Mage::app()->getLocale() ->date($data, Varien_Date::DATETIME_INTERNAL_FORMAT)->toString($format); } catch (Exception $e) { $data = Mage::app()->getLocale() ->date($data, Varien_Date::DATETIME_INTERNAL_FORMAT)->toString($format); }



3
Magento 2でプログラムでCMSブロックを追加する方法は?
インストール/アップグレードスクリプトを使用してCMSブロックを追加する必要があります。以下のスクリプトに見られるように、「通常の」CMSページを追加する方法をすでに理解しています。しかし、Magento 2のコード(Googleまたはここ)にCMSブロックを追加する方法を見つけることができないため、非常に困っています。 namespace [Vendor]\[Module]\Setup; use Magento\Cms\Model\Page; use Magento\Cms\Model\PageFactory; use Magento\Framework\Setup\ModuleContextInterface; use Magento\Framework\Setup\ModuleDataSetupInterface; use Magento\Framework\Setup\UpgradeDataInterface; class UpgradeData implements UpgradeDataInterface { /** * Page factory. * * @var PageFactory */ private $pageFactory; /** * Init. * * @param PageFactory $pageFactory */ public function __construct(PageFactory $pageFactory) { $this->pageFactory = $pageFactory; } /** * …

1
Magento2:カスタム支払い方法フィールドを追加する最良の方法は何ですか?
カスタム支払い方法フィールド(magento / offline-payment-methodsの "po_number"など)を使用して、Magento 2で新しい支払い方法を設定しました。フロントエンドは完全に正常に動作しています(フィールドの表示、検証など)。 ただし、Magentoを注文したい場合、WebAPI要求は次のエラーをスローします。 「プロパティ\ "CustomField \"には、クラス\ "Magento \ Quote \ Api \ Data \ PaymentInterface \"に対応するセッターがありません。 Magentoは、getPoNumberやsetPoNumberなどのメソッドが定義されているコア支払いインターフェースに対してカスタムフィールドを検証しているようです。 私はすでに拡張属性を介してカスタムフィールドを追加しようとしました: <extension_attributes for="Magento\Quote\Api\Data\PaymentInterface"> <attribute code="custom_field" type="Vendor\Module\Api\Data\MethodInterface[]" /> </extension_attributes> 特定のメソッドでインターフェースを作成しました: <?php namespace Vendor\Module\Api\Data; use Magento\Framework\Api\ExtensibleDataInterface; interface MethodInterface extends ExtensibleDataInterface { public function setCustomField($customField); public function getCustomField(); } しかし、これは機能しません。Magentoは、コアの支払いインターフェイスに対して引き続き検証します。 ここでの質問は、Magentoでカスタム支払い方法フィールドを受け入れる方法です。ポインタは大歓迎です:)

6
Magento 2のチェックアウトプロセスから会社フィールドを削除するにはどうすればよいですか?
Magento 2のチェックアウトプロセスから会社フィールドを削除するにはどうすればよいですか?テンプレートを探していましたが、見つかりませんでした。 更新:レイアウトまたはテンプレートを使用してこのフィールドを削除する方法はありますか?

3
ページを更新するまでMagento 2管理パネルが永久にハングする
Magento 2を使用して以来、この厄介な問題が繰り返し発生しています。 管理パネルにログインするか、管理パネル内の別のページに切り替えます ページの読み込みが開始され、時々部分的に表示されますが、その後永久にハングアップします(少なくとも数分間)ブラウザコンソールでのリクエスト。 F5ぶら下がっているときに押すと、ページがほぼ瞬時に読み込まれます(少なくともほとんどの場合) 管理パネルやコードに変更を加えずにナビゲートするだけでこの動作が発生するため、イベントとは関係がないようです。ただし、無効化されたキャッシュとの相関関係が見られました。 この問題の原因は何ですか?一般的に言えば管理パネルが機能するため、これはパーミッションやクッキーの典型的な問題だとは思わない。 Linuxでは、Magentoは開発者モードで実行されています。

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