Magento

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



2
バックエンドからのフロントエンドでの自動ログイン
次のシナリオを参照してください。 フロントエンドユーザーがカスタムエンティティに対してアクションを実行できるカスタムモジュールがあります。(詳細はあまり重要ではありません)。 要求は、管理者が(パスワードを持たずに)顧客アカウントでフロントエンドにログインし、顧客に対してこれらのアクションを実行できるようにすることです。 バックエンドからフロントエンドセッションを使用することはできず、フロントエンド用の永続的な自動ログインリンクを作成したくないので、これは大きなセキュリティホールになる可能性があるため、これまで私がやったことです。 顧客エンティティに空の属性を追加します。(それを呼び出しましょうlogin_key) ランダム文字列が生成されて属性に保存される管理ページにリダイレクトするボタンを顧客編集ページのバックエンドに追加しますlogin_key。 同じアクションで、管理者をこのようなフロントエンドURLにリダイレクトしautologin/index/index/customer_id/7/login_key/ajkshdkjah123123ます(前の手順で生成された値)。 フロントエンドURLでlogin_key、特定の顧客の顧客IDと一致する場合、セッションで顧客オブジェクトを設定し(ログインした状態で)login_key、URLが将来機能しないように削除します。 これでうまくいく。つまり、選択した顧客としてログインしますが、自動ログインに使用されるリンクが再度機能しません。 欠点は、2人の管理者がほぼ同時に「自動ログイン」ボタンをクリックすると、1人がログインに失敗することですが、これは許容できるリスクです。 私の主な懸念は、これが(それではなく)大きなセキュリティ問題かもしれないということです。誰かがこのアプローチで何か間違ったことを見ることができますか?またはより良いものを提案しますか? 顧客アカウントはWebサイトごとに分離できるという事実は無視してください。これは重要ではなく、簡単に管理できます。

4
Magento 2-list.phtmlによるカスタム製品コレクションのレンダリング
カテゴリページ(フロントエンド)の製品グリッドは、catalog_category_view.xmlのレイアウトを介してレンダリングされます。 カスタム製品コレクションがあるとしましょう ProductRepositoryInterface::getList($searchCriteria) method カスタムブロッククラスで、このコレクションをレンダリングしたい。レンダリングされた結果は、フロントエンドに製品グリッドとして表示される必要があります(カテゴリページと同様)。 これはどのように行うことができますか? 調査catalog_category_view.xmlすると、製品コレクションのレンダリングを担当する2つの重要な行があります。 <block class="Magento\Catalog\Block\Category\View" name="category.products" template="Magento_Catalog::category/products.phtml"> <block class="Magento\Catalog\Block\Product\ListProduct" name="category.products.list" as="product_list" template="Magento_Catalog::product/list.phtml"> これらのテンプレートファイルにカスタム製品コレクションを提供して、コレクションをレンダリングするにはどうすればよいですか? 私がこれについて間違っている場合、私を修正してください。 これは私のブロックコードがどのように見えるかです: <?php namespace Mod\Mod1\Block; use Magento\Framework\View\Element\Template; class Main extends Template { protected $_filterBuilder; protected $_filterGroupArray; protected $_filterGroupBuilder; protected $_searchCriteriaBuilder; protected $_productRepository; protected $_productFactory; protected $_list; public function __construct( \Magento\Framework\View\Element\Template\Context $context, \Magento\Catalog\Api\ProductRepositoryInterface $productRepository, …



4
magento 2でコレクションmysqlクエリを印刷するにはどうすればよいですか?
そこではgetSelect()->__toString();、コレクションの印刷クエリのMagentoの1で利用可能です。以下の例のように $products = Mage::getModel(‘catalog/product’) ->addAttributeToFilter(‘status’, array(‘eq’ => 1)); echo $products->getSelect()->__toString(); magento 2で利用可能な方法はありますか?これを見つけました->printLogQuery(true);が、うまくいきません。 更新:以下はコードです。ベストセラー製品を入手しようとしています。その作業は完璧ですが、デバッグ用のクエリを出力したいです。 $this->_collection->getSelect() ->joinLeft( 'sales_order_item', 'e.entity_id = sales_order_item.product_id', array('qty_ordered'=>'SUM(sales_order_item.qty_ordered)')) ->group('e.entity_id') ->order('qty_ordered '.$this->getCurrentDirectionReverse());

4
解決済み-Magento 2-管理者にログインできない(エラーメッセージなし)がログイン画面で止まる
これは質問ではなく、かなり古いが繰り返し発生する問題への回答です。Magento 1.9をセットアップしていた頃、これに苦労していたことを覚えています。私はそれをどのように修正したかを完全に忘れていたので、今回は誰かがそれを必要とする場合に備えてここで私の答えを文書化しています。 問題文 基本的に、Magento 2.1ストアをセットアップし、すべてのサーバー要件を満たし、SSLを追加し、Webサイト、ストアおよびストアビューをセットアップし、ストア構成を埋めて、突然管理パネルにログインできなくなったことに気付きました。エラーはなく、ブラウザコンソールには何もありません。ブラウザChrome / Firefoxにも問題はありません。また、セッションとキャッシュをクリアして利用できないようにします。セッションとキャッシュ設定をさかのぼって答えを見つけましたが、ドキュメントに従っていましたが、まだ機能しません。

2
スクラッチからmagento 2でカスタムモジュール開発を作成する方法
magento 2でカスタムモジュール開発をゼロから作成する方法は次のとおりです。 1.モジュールの作成方法 2.データベースのインストールおよびアップグレード方法 3.モジュール、ビュー、コントローラーレイヤーの作成方法 4.すべてのモジュールコンポーネントの統合をテストする方法 6.Magento CLIコマンドの作成方法 7.Magento 2でスケジュールされたタスクを設定する方法 8.メニューエントリの作成方法 9. ACLリソースの作成方法 カスタムテーブルを使用してMagentoでWeb APIを実装する方法 11. adminでカスタムグリッドを作成する方法 UIコンポーネントを使用してフォームを作成し、グリッドに保存してリダイレクトする方法 ソースコードをすべての人と共有したい
15 magento2  grid  crontab  cli  webapi 

1
Magento 2.1に新しいコンポーネントタイプの問題が追加されました
私はと呼ばれる新しいフォーム要素の種類を追加したCompany\Module\Data\Form\Element\PdfButtonことがあるとき、version EE 2.0.7及び(オーバーライドすることで追加のカスタムタブで、この要素を使用しMagento\Catalog\Block\Adminhtml\Product\Edit\Tabs、製品の編集管理ページの)。 Magento EE 2.1にアップグレードすると、カスタムタブが消えました。表示するために、製品ページに新しいタブを作成する修飾子を追加しました。ベンダーファイルの修飾子をコピーして新しいタブを追加し、モジュールに挿入しました。 ただし、カスタム要素を使用する場合。そのため、メタ配列のchildrenフィールドに次のコードを追加しました。 $children[$website['id']] = [ 'arguments' => [ 'data' => [ 'config' => [ 'dataType' => Form\Element\DataType\Number::NAME, 'componentType' => Form\Field::NAME, 'formElement' => Form\Element\Wysiwyg2::NAME, 'description' => __($website['name']), 'tooltip' => $tooltip, 'sortOrder' => $sortOrder, 'dataScope' => 'website_ids.' . $website['id'], 'label' => "Pdf Upload", 'valueMap' => [ 'true' …


2
Magento 2での例外処理
Magento 1では、例外をキャッチして、exception.logファイルにログを記録することができました。Mage::logException($e); 今、Magento 2では、できますcatch (\Exception $e)が、キャッチされた例外をどうすればいいですか?にログインするにはどうすればよいexception.logですか?または、これを処理する一般的な方法は何ですか?

7
Magento 2で.phtmlファイルをオーバーライドする方法
製品の詳細ページをカスタマイズしたいので、次の場所にあるいくつかの.phtmlファイルをオーバーライドする必要がありました。 だから、私は知りたい、または.phtmlファイルをオーバーライドする方法vendor\magento\module-catalog\view\frontend\templates\productvendor\magento\module-theme\view


4
magento2.2.2のインストール時の500内部サーバーエラー
WAMPを使用してローカルWindows環境にMagento 2.2.2をインストールしようとしています。ただし、500 Internal Server Errorが発生します。以前のバージョンのhtaccessファイルを置き換えると、機能します。それが問題でしょうか? 書き換えエンジンがオンで、モジュールがロードされています。 エラーログ: Invalid command '<IfVersion', perhaps misspelled or defined by a module not included in the server configuration 私はLoadModule version_module modules/mod_version.soそれを機能させるために有効にしようとしましたが、今ではインストールが実行されると、その間にコンソールでfalse数秒後に応答します。更新しようとすると、残りのインストールが開始されますが、インストールを完了するには数回更新する必要があります。このプロセス中にMagentoが正常にインストールされたかどうかはわかりません。 管理者にアクセスすると動作しますが、コンソールJSエラーが発生します。フロントエンドはまだCSSなしでロードされます。 私はそれを数回インストールしようとしましたが、このエラーが発生するたびに

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