タグ付けされた質問 「magento2」

Magento 2に関する一般的な質問。マイナーバージョンに固有ではありません。このタグを使用してMagento 1と区別します。特定のバージョンに問題がある場合は、代わりに適切な「Magento-2.x」タグを使用してください。Magento 2のマイナーバージョン間の機能は異なる場合があります。

5
Magento2:CSSファイルを変更するためのベストプラクティス
cssファイルを変更したいpub/static/frontend/Magento/luma/en_US/css/styles-l.css。 最初、このファイルはpub / staticフォルダーに存在せず、 vendor/magento/theme-frontend-blank/web/css/styles-l.less (it's styles-l.less) を使用して静的コンテンツを展開するとphp bin/magento setup:static-content:deploy、それに関連するpub / staticに2つのファイルが作成されます。 1. pub/static/frontend/Magento/luma/en_US/css/styles-l.less 2. pub/static/frontend/Magento/luma/en_US/css/styles-l.css 私は支援を受けた開発者であり、モジュールの開発中にpub / staticに存在するものはすべて削除する傾向があります(.htaccessを除く)。だから私には、直接変更するのに最適なオプションではないようですpub/static/frontend/Magento/luma/en_US/css/styles-l.css。 その場合、上記のCSSファイルを変更するためのベストプラクティスは何ですか? 1.変更するpub/static/frontend/Magento/luma/en_US/css/styles-l.lessか、または 2.pub/static(開発中に)すべてを削除できるという理解が間違っているためpub/static/frontend/Magento/luma/en_US/css/styles-l.css、変更する必要があり、削除しないでください。

3
Magento 2:バックエンドとフロントエンドの状態/キャッシュの同期
Magento 2には、バックエンドとフロントエンドのローカルストレージ間の状態を管理するためのシステムまたは抽象化がありますか? リダイレクトURLを介してユーザーの放棄されたカートを復元する機能の移植に取り組んでいます。簡易形式では、次のようなURL http://magento.example.com/restore/the/cart?identifier=sdkfjh48v237g5 識別子のエンコードされたquote_idに基づいて、現在のユーザーのカートに見積もりをロードします。 Magento 1では、これは比較的簡単でした。ユーザーのCheckoutセッション情報を正しい見積もりIDで更新する必要がありました。ただし、Magento 2はローカルストレージのしわを追加します。 Magento 2フロントエンドjavascriptアプリケーションは、ブラウザのローカルストレージデータベースに情報をキャッシュするようです。これには、ミニカートを構築するための情報が含まれます。これが意味することは、エンドユーザープログラマー(私)がバックエンドのセッションセッションIDを変更したとしても、ミニカートには古いカートデータが表示されます。 これは、バックエンドとフロントエンド全体でアプリケーションの状態を管理するための単一のAPIを知らない(または持っている?)ことから生じる問題の一例です。特定の問題のために、JavaScriptを含むHTMLページをエンドポイントでレンダリングして、ローカルストレージを手動でクリアし、ユーザーを別のページにリダイレクトしましたが、これはひどいハックのように感じます。 フロントエンドとバックエンドの間でデータを管理するためのMagento 2にAPIはありますか? バックエンドの処理中に、フロントエンドのローカルストレージキャッシュを無効にする必要があるようなことをしたシステム全体に信号を送る標準的な方法はありますか? 自動的に実行され、残りのjavascriptアプリケーションがアクセスする前にローカルストレージを操作できる新しいRequireJSモジュールをページに挿入する方法はありますか?


2
Magento 2:プラグインクラスに名前を付けない場合の結果 `\ Plugin`
Magento 2で終わらないプラグインクラスを使用した場合の結果はあります\Pluginか?ドキュメントは示唆このクラスは、名前で終わるべきであること\Plugin。 プラグインのクラスまたはその仮想タイプの名前。この要素を指定するときは、次のスキーマを使用します:\ Plugin。 ただし、これに従わないコードプラグインがいくつかあります。 <!-- #File: app/code/Magento/Weee/etc/frontend/di.xml--> <plugin name="weee-app-action-dispatchController-context-plugin" type="Magento\Weee\Model\App\Action\ContextPlugin"/> \Pluginクラス名に使用しないことによるプログラム上の影響はありますか?または、これは単なる_Observer規則ですか?Magento 1のクラス名規則に似ていますか?
14 magento2  plugin 

10
Magento 2 StyleSheetが読み込まれない
magento 2を正常にインストールしましたが、フロントエンド側と管理者側のスタイルが読み込まれていません。adminにログインした後でも、not found(404)ページが表示されます core_config_dataのベースURL:http ://localhost.com/magento2/



2
チェックアウトフォーム-クラス内の複数の要素をラップする方法-Magento 2
div内で2つのチェックアウトフォーム要素をどのようにラップしますか? たとえば、これらの国と郵便番号/郵便番号フィールドをのクラスでdivにラップしたいexample-class場合、どうすればよいでしょうか? 私が試したこと 私はそれらを子として追加することでこれを達成しようとしました<item name="shippingAddress" xsi:type="array">が、それはフロントエンドでエラーを引き起こすだけです。内部.example-classにラベルのない空白のテキスト入力を取得しましたが、フロントエンドにエラーがありました。 エラー: Cannot read property 'indexedOptions' of undefined これは私の簡単な試みです: Magento_Checkout / web / template / shipping-address / form.html <div id="shipping-new-address-form" class="fieldset address"> <div class="testing"> <!-- ko foreach: getRegion('example-class') --> <!-- ko template: getTemplate() --><!-- /ko --> <!--/ko--> </div> <!-- ko foreach: getRegion('additional-fieldsets') --> <!-- ko …

1
Magento 2:定義済みのフィルター値を使用して管理グリッドを読み込むにはどうすればよいですか?
事前定義されたフィルターを使用して、管理者にカスタムグリッドへのリンクを作成したい。グリッドはUIリストコンポーネント(XML)でform_id作成され、次のように設定された列があります。 <column name="form_id"> <argument name="data" xsi:type="array"> <item name="config" xsi:type="array"> <item name="filter" xsi:type="string">textRange</item> <item name="label" xsi:type="string" translate="true">Form id</item> </item> </argument> </column> グリッドは正常に機能します。フィルターを適用でき、すべてがうまく機能します。グリッドはXHRリクエストで適切に更新されます。 しかし...ある時点でフィルターの値を事前に定義できるようにしたい。たとえば、ID = 3でフィルターされたときにグリッドを開くことができます。 そのため、XHRリクエストと同じURLパラメーターを使用してページをロードし、必要なパラメーターのみを追加するだけで済みます。 ?namespace=form_response_listing&search=&filters[placeholder]=true&filters[form_id][from]=3&filters[form_id][to]=3&paging[pageSize]=20&paging[current]=1 と同様: ?filters[form_id][from]=3&filters[form_id][to]=3 両方とも成功しませんでした。では、URLを使用してフィルターを事前に入力するにはどうすればよいですか? 編集: これが他の質問と重複しているかどうかはわかりません(以下のコメントに記載されています)。私の場合、グリッドのコレクションとして仮想タイプを使用しています。 <virtualType name="Vendor\Module\Model\ResourceModel\Response\Grid\Collection" type="Magento\Framework\View\Element\UiComponent\DataProvider\SearchResult"> <arguments> <argument name="mainTable" xsi:type="string">vendormodule_form_response</argument> <argument name="resourceModel" xsi:type="string">Vendor\Module\Model\ResourceModel\Response</argument> </arguments> </virtualType> したがって、グリッドウィジェット用の物理的なBlockクラスを持っているのではなく、XMLをリストするUIコンポーネントで純粋に作成されています。 それにもかかわらず、言及された質問が私のユースケースに役立つかどうかとにかくチェックします。
14 magento2  admin  grid  filter 

5
Magento 2開発者モードは静的ファイルを自動的に再生成しません
開発者モードでMagento 2.0.2をインストールしていますが、CSSを変更するたびに静的ビューファイルを再生成するように強制する方法がまだわかりません。 実行して、開発者モードになっていることを確認しました php bin/magento deploy:mode:show で、このページには、その開発者モードは、キャッシュの静的ビューファイルを無効にすると言うが、それは私にとってはそうではありません。 このソリューションでdi.xml言及されているように編集しようとしましたが、Magentoの動作は変わりませんでした。 静的ビューファイルを自動的に再生成するようにmagentoに指示するにはどうすればよいですか?

6
Magento 2:登録フォームに住所フィールドを表示する方法
顧客登録フォームに住所フィールドを表示したい(デフォルトの請求先住所に保存する)Magento 1での操作方法は知っていますが、Magento 2には驚かされます。 magento 1のようなxmlファイルの更新 <customer_account_create> <reference name="customer_form_register"> <action method="setData"><key>show_address_fields</key><value>1</value></action> </reference> </customer_account_create>

3
Magento2-ホームページにブロックコンテンツを表示する方法
ホームページにブロックコンテンツを表示する方法は? サンプルデータなしでmagento2をインストールした後、「Magento Luma」テーマを選択し、「Home Page Block」ブロックを追加して、サンプルストアからコードをコピーしました。 しかし、ホームページには何も表示されません、サンプルストアのようにホームページに私のcmsブロックを表示する方法は? 私の家 サンプルストア

1
Magento 2 ui_componentフォームで顧客属性を表示
ui_componentフォームを作成しました。 顧客の詳細を表示する必要がある場合は、顧客編集と同じです。 しかし、私はcustomer_entityテーブルから彼らのデータを表示することができます。 DataProvider.php public function getData() { if (isset($this->loadedData)) { return $this->loadedData; } // {Vendor}\{Module}\Model\GridFactory // Returns Customer Resource Model $items = $this->gridFactory->create()->getCollection(); $items->getSelect()->join('customer_entity_text as second', 'main_table.entity_id = second.entity_id'); //print_r($items->getData()); exit; foreach($items as $contact){ $this->loadedData[$contact->getEntityId()]['contact'] = $contact->getData(); } return $this->loadedData; } (顧客属性)customer_entity_textを表示するために、テーブルをファクトリに結合しましたstatus。 現在、My Second属性はfiletypeです。にありますcustomer_entity_varchar。まず、別の結合を追加することを考えましたが、それは良い方法ではないと思います。 それで、これに対する解決策はありますか?Customer Attributeフォームに両方を表示する必要があります。 ui_component <field name="value"> …

4
Magento 2はcron:run CLIコマンドなしで特定のCronを実行しますか?
長い話を短くすると、典型的なものを使用している場合、xdebugはcronファイルのブレークポイントで確実に停止しません。 php bin/magento cron:run Xdebugはすべて適切にセットアップされており、動作することもありますが、85%の時間で動作せず、phpstormで接続のリッスンをオフにするまでCLIでハングします。 どういうわけか1つのcronファイルを実行する方法はありますか?理想的ではないxdebugで適切にテストするには、cronファイルの内容を別のコンソールコマンドに実際にコピーして貼り付ける必要がありました。 Magento 1.xでは、AOEスケジューラを使用して、Xdebugでcronジョブをテストするために使用しました。管理者に移動し、目的のチェックボックスをオンにし、ドロップダウンから実行を選択すると正常に機能しました。 私は次のようなものを使用したいと考えています: php bin/magento modulename:cronjob スケジュールされていない場合でも、常にcronを実行する必要があります。
14 magento2  cron  cli  xdebug 

7
Magento 2のリダイレクトコントローラー
カスタマーダッシュボードに新しいカスタムタブを追加しました。カスタムフォームが正常に実行された場合、顧客のメインページにリダイレクトする必要がありますcustomer/account。これどうやってするの?

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