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

カスタムモジュールの開発に関する質問

1
Magento2:異なる種類のcomposer.jsonファイル
Magento2では、さまざまなベンダーがモジュールに名前を付けるために、以下に示すさまざまなcomposer.json形式に従っています。 第一: "autoload": { "files": [ "registration.php" ], "psr-4": { "Amit\\SamplePage\\": "" } } 2番目: "extra": { "map": [ [ "*", "Amit/SamplePage" ] ] } 1.それらと私が従うべきものの違いは何ですか? 2. registration.phpを使用してモジュールを登録すると、なぜcomposer.jsonすべてのモジュールで必要なのですか?

3
Magento 2:どの拡張メカニズムを選択しますか?
コントローラーを拡張するには、設定の使用とプラグインの使用の2つの方法があります。しかし、私はそれを理解していません、どちらが良いのか、そしてプラグインと比較して好みの利点/欠点です。 <preference for="Magento\Checkout\Controller\Index\Index" type="mymodule\Helloworld\Controller\Index\Index" /> <type name="Magento\Catalog\Model\Product"> <plugin name="getname-test-module" type="mymodule\Helloworld\Model\Plugin\Product" sortOrder="10"/> </type>

2
カスタムPDFを作成するためのベストプラクティスは?
請求書PDFなどの新しいカスタムを作成するためのベストプラクティスはありますか? 独自のレイアウトとテーブルを備えた別のカスタムPDFが必要です。 そして、これが私の問題です。これまでMagentoでPDFを作成したことがなかったため、これをどこからどのように開始するかについて多くの質問があります。 私が持っている唯一のものは、モデルとコレクションを備えた新しいモジュールです。 テンプレートにphtmlファイルが必要ですか、それともZend_Pdfのモデルに属していますか?

4
ヘルパーvsモデル?どちらを使用すればよいですか?
私はmagentoでInstagram APIを使用しています。Instagramで私たちの店をフォローしている場合、私はInstagramフォロワーにクーポンを提供しています。 curlを使用して、PHPでInstagramへのAPI呼び出しを行っています。現在、カスタムモジュール内のヘルパー関数でAPI呼び出しをラップしています。代わりに、これらの呼び出しをモデル内の関数でラップする必要がありますか? 例えば。現在のユーザーが私のアカウントをフォローしているかどうかを確認するために、InstagramへのAPI呼び出しを行っています。それで、私のコントローラーでは、コントローラーにfollowステータスを返すヘルパー関数を呼び出しています。コントローラで、必要に応じてモデルを更新します。 これらのAPI呼び出しをヘルパー関数内に配置することは正しいですか?モデルではなくヘルパーをいつ使用しますか? <?php class Company_SocialCoupons_InstagramController extends Mage_Core_Controller_Front_Action { public function followAction() { $status = Mage::helper('socialcoupons/instagram')->getFollow(); if ($status == 'follows') { // 1. ADD DATA TO MY DATABASE using my custom model // - Ex. Mage::getModel('socialcoupons/instagram')->setInstagramId(*IGID*), etc. // 2. CREATE COUPON // 3. EMAIL COUPON TO CUSTOMER } …

4
ブロックのモジュールlayout.xmlを使用してCSSおよびJSを<head>に追加する
あらすじ グループ化された製品ビューと単純な製品ビューにブロックを追加したいと思います。このブロックには、ホバー状態の便利なツールチップがいくつかあります。私は、1つのjqueryプラグインと1つのcssスタイルシートを持つ小さなライブラリを使用しています。 これらの2つのリソースを、これらのページのみのmagentoのに含めたいと思います。 ノート カスタムテーマを実行しています。 キャッシュは無効です。そして 私のファイルは/jsディレクトリ内にあります。 これまで… それでもlayout.xml、モジュールで使用する方法の1つであることがわかっていました。最初はこれが機能しなかったのでconfig.xml、レイアウト要件についてMagentoに通知するために内部に追加の設定が必要だと思いました-これも機能しませんでした。 動作しませんでした私が何を意味するか私の資産がロードされなかった、です。 下記の添付ソースを見つけてください。 app / code / local / Vendor / Rating / etc / layout.xml &lt;?xml version="1.0"?&gt; &lt;layout&gt; &lt;default&gt; &lt;reference name="head"&gt; &lt;action method="addJs"&gt; &lt;script&gt;vendor/qtip/jquery.qtip.min.js&lt;/script&gt; &lt;/action&gt; &lt;action method="addCss"&gt; &lt;stylesheet&gt;vendor/qtip/jquery.qtip.min.css&lt;/stylesheet&gt; &lt;/action&gt; &lt;/reference&gt; &lt;/default&gt; &lt;/layout&gt; app / code / local / Vendor / Rating …

4
Magentoの学習用にどのような興味深いモジュールを開発する必要がありますか?
しばらくの間、私はMagentoを勉強しています。かなりの数のモジュールを実行しましたが、それでももう少しトレーニングが必要だと思いますが、できるだけ多くのものを扱うために厳密に行うための興味深いモジュールは考えられません。 これが私が作成したいくつかのモジュールです:ブログ、管理者の電子メール通知、関連製品、製品ビューポップアップ。 それで、誰も私がまだ触れていないこと、または興味深い考え方を学ぶ必要があるモジュールを提案できますか? この質問には、このサイトに必要な100%のQ / A回答フォームが含まれていない場合がありますが、いくつかの提案が得られることを願っています ありがとうございました。 シモンズ:すべてが厳密に教育目的のためです、私はMagentoのすべてのインとアウトを学びたいです。

2
契約条件の検証(カスタムモジュール)
次のように、T&Cチェックボックスを支払い方法の下に移動し、概要div内の注文ボタンを配置できるようにするカスタムモジュールを作成しました。 これで、支払い方法を選択するたびに、利用規約のチェックボックスをオンにして[注文]を押すと、次のポップアップが表示されます。 私は以下を試しましたが、残念ながら運がありません: Magento 2-チェックアウトでの契約条件の位置の移動 注文を送信した後のAjaxペイロード: モジュールなしでチェックアウトを使用する場合、ペイロードのコンテンツ(支払い情報)は次のようになります。 extension_attributes: {agreement_ids: ["1"]} agreement_ids: ["1"] 私のカスタムモジュールを使用しているとき、それは次のとおりです: extension_attributes: {agreement_ids: [""]} agreement_ids: [""] したがって、それは空です...これはおそらく問題のようです。どうすれば修正できますか? コード module.xml &lt;?xml version="1.0" ?&gt; &lt;config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd"&gt; &lt;module name="Vendor_Checkout" setup_version="1.0.0"&gt; &lt;sequence&gt; &lt;module name="Magento_Checkout"/&gt; &lt;/sequence&gt; &lt;/module&gt; &lt;/config&gt; checkout_index_index.xml &lt;page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd"&gt; &lt;head&gt; &lt;css src="Vendor_Checkout::css/checkout.css"/&gt; &lt;/head&gt; &lt;body&gt; &lt;!-- Disabling the T&amp;C checkbox …

1
モジュールにカスタムヘルパーを追加する方法
Magento 2モジュールで新しいヘルパーを作成する方法、またはコアヘルパーを上書き/書き換える方法 module.xmlカスタムモジュールに依存関係を追加しようとしましたが、ヘルパークラスがまったく読み込まれません。 以下は私のmodule.xmlです。 &lt;?xml version="1.0"?&gt; &lt;config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd"&gt; &lt;module name="Company1_Module1" schema_version="1.0.0" setup_version="1.0.0"&gt; &lt;sequence&gt;Magento_Directory&lt;/sequence&gt; &lt;/module&gt; &lt;/config&gt;

1
Magentoのオブザーバーを使用して総計に新しい合計を追加しますか?
Magentoの総計にいくつか追加します。したがって、チェックアウトページでは、注文レビューセクションは次のようになります。 この追加料金は、いくつかの条件によって異なります。 私の質問は、チェックアウトページで総計を変更するにはどうすればよいですか?このために私がしたことは、モジュールを作成することです。私のコードを見てください: app / code / local / Locwiseship / Customprice / etc / config.xml &lt;?xml version="1.0"?&gt; &lt;config&gt; &lt;modules&gt; &lt;Locwiseship_Customprice&gt; &lt;version&gt;1.0.10&lt;/version&gt; &lt;/Locwiseship_Customprice&gt; &lt;/modules&gt; &lt;global&gt; &lt;events&gt; &lt;!-- Création éventuelle du lien de parrainage lors de la commande --&gt; &lt;sales_quote_collect_totals_after&gt; &lt;observers&gt; &lt;set_custom_price_locwiseship&gt; &lt;type&gt;singleton&lt;/type&gt; &lt;class&gt;Locwiseship_Customprice_Model_Sales_Quote_Address_Total_Mytotal&lt;/class&gt; &lt;method&gt;collect&lt;/method&gt; &lt;method&gt;fetch&lt;/method&gt; &lt;/set_custom_price_locwiseship&gt; &lt;/observers&gt; &lt;/sales_quote_collect_totals_after&gt; &lt;/events&gt; &lt;/global&gt; …

1
古いmagento / magento2-samplesモジュールのフォーク
MagentoのGitHubアカウントは、 https://github.com/magento/magento/magento2-samples このリポジトリには、Magento 2モジュールの構築方法の約20の例が含まれていました。ただし、このプロジェクトは削除されました。理由は? これらのモジュールの一部のプラクティスは放棄され、すべてのモジュールが実行されたわけではありませんが、これは、Magento 2を学習および操作する開発者にとって、歴史的かつ実用的な重要なリソースでした。 リポジトリの公開フォークが利用可能かどうか誰かが知っていますか?

5
モジュールの外部.jsファイルコードをテンプレート[phtml]ファイルに移動する
以下のコードを持つカスタムモジュールがあります app/design/frontend/rwd/Theme1/layout/aitcg.xml &lt;action method="addJs"&gt;&lt;script&gt;aitoc/aitcg/Aitcg/View/Abstract.js&lt;/script&gt;&lt;/action&gt; 我々は、この.JSファイルにPHPコードを使用することはできません、我々はからのコード存在を移動することができますどのような方法がありAbstract.js、一部には、ファイル.phtmlのファイルは? 編集する 私はラファエルの答えに従い、コードを次のように変更しました: &lt;block type="aitcg/template" name="aitcg_js_styles1" template="aitcg/js_styles1.phtml" /&gt; しかし、それでもAbstract.Jsファイルの結果はjs_styles1.phtmlに表示されません レイアウトファイル:http : //pastebin.com/BZGRaiDH js_styles1.phtml:http : //pastebin.com/m85q9eMh onclickボタン=を試していますonclick="setproductlogin('&lt;?php echo $_product-&gt;getEntityId()?&gt;');setrequestlogin();"が、これは.JSファイルでは機能しないため、.jsコードを.phpコードにコピーしようとしているだけです。 &lt;script&gt; _getControlPanelHtml: function() { if (this.config.editorEnabled) { return '&lt;div id="aitcg-control-panel"&gt;' + '&lt;button id="submit-editorApply-{{rand}}" onclick="setproductlogin('&lt;?php echo $_product-&gt;getEntityId()?&gt;');setrequestlogin();"&gt;SAVE DESIGN&lt;/button&gt;' + '&lt;button id="submit-editorReset-{{rand}}" &gt;{{reset_text}}&lt;/button&gt;' + '&lt;/div&gt;'; } return ''; }, &lt;/script&gt; …

1
Magento 2お客様がニュースレターを購読しているかどうかを確認する
このカスタムxmlエクスポート/インポートを開発しています。magento 2で、顧客がニュースレターを購読しているかどうかを確認するにはどうすればよいですか?現在、私は顧客のファクトリーをロードしています。 \Magento\Framework\App\ObjectManager::getInstance()-&gt;create('Magento\Customer\Model\Customer'); しかし、これはニュースレターに関する情報を提供しません私がロードしなければならない別のモデルがありますか?

6
Magento 2のカスタムモジュールにアクセスしようとすると404ページが見つかりませんというエラー
ベンダーフォルダー内に2つのカスタムモジュールを作成しました。これは私のレイアウト構造です。 -app -code -Company -Blog -HelloWorld -Controller -Hello -World.php -registration.php -etc -module.xml -frontend -routes.xml どちらも有効です。 これはroutes.xmlHelloWorldモジュールの私のコードです。 &lt;?xml version="1.0"?&gt; &lt;config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/routes.xsd"&gt; &lt;router id="standard"&gt; &lt;route id="helloworld" frontName="helloworld"&gt; &lt;module name="Company_HelloWorld"/&gt; &lt;/route&gt; &lt;/router&gt; &lt;/config&gt; これは私のコードですmodule.xml: &lt;?xml version="1.0"?&gt; &lt;config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd"&gt; &lt;module name="Company_HelloWorld" setup_version="1.0.0"&gt; &lt;/module&gt; &lt;/config&gt; これは私のregistration.phpファイルです: &lt;?php \Magento\Framework\Component\ComponentRegistrar::register( \Magento\Framework\Component\ComponentRegistrar::MODULE, 'Company_HelloWorld', __DIR__ ); これは私のコントローラーコードです: …


7
Magentoの学習リソース
私はmagentoを初めて使用し、MVCの概念はありませんが、それに取り組むための仕事が与えられました。つまり、それを理解して仕様を実装することです。今、magentoの「ビースト」を本当に理解したいので、あまりにもストレスを感じています。私はTuts + Magento Fundamentalをフォローしてき ました。「Hello World」は現実の世界に注ぐお茶ではないため、すべてが曖昧です。私は本当に詳細なチュートリアルが必要です。 モデル、コントローラー、ビューがどのように連携してデータをフィードし、特定のhtml要素に機能を提供するか、データをフィールドにマップする方法を知りたい。 追加メニューを作成し、それにリンクする方法。 「Hello関数」だけでなく、モデル、コントローラ、リソースなどのより実用的な方法は何ですか。 どのように適用するためにどの方法を知っているか、私たちが言うときのために依頼するかgetABC()など 優れた機能を備えたストアを作るためのポイントはたくさんあります。それをすぐに終わらせるのは速すぎないことは理解していますが、それを学び、自分自身を誇りに思うことで眠りを失うのはあまりにも熱心です。私はかなり新しいですMagentoへのブロック、ヘルパー、コントローラーなどの作成に関するかなりの知識がありました。「Magento Fundamentals」で説明されているように、hello worldとだけ言うモジュールを作成するためにMagentoによって設定された例にもまだ疑問があります。プロフィールのようなユーザー情報の表示、それを更新する方法、ユーザーが注文した製品や履歴などを取得するなど、Magentoを学ぶためのライフアプローチ。フォームの作成中に自分の値を正しいフィールドにマッピングするにはどうすればよいですか?例:名:名姓:姓住所:住所など それらは、ブロック、またはコントローラーのどこに配置されますか?レイアウトを作成してフォームを作成するにはどうすればよいですか?私はそのようなことを知ってloadLayoutおりrenderLayout、レイアウトを生成しますが、そのフォームまたはレイアウトのフィールドを使用して必要なフィールドにマップする方法、または次のような異なるアクションを実行できるカスタムメニューを表示する方法 アカウント概要アカウント履歴注文履歴 等私が言ったように、私はMagentoUの「Magento Fundamentals」をフォローしており、これらの質問に答えられないようです。 編集:私はMVCを理解していない可能性がありますか?私はツリーハウスとLyndaに従ってtutsを探していますが、MVC PHP tutsはありません。ASP.net tutのみ。MVCのこのリンクを見つけましたが、それだけの価値がある場合のみですか? 更新:多くのリンクを調査した後、モデルとコントローラーが使用されている理由にまだ混乱しています。ログインしたユーザーに顧客またはダッシュボードに関する情報をどのようにマッピングできますか?提供された例にはgetProduct(1)などの例があり、どのIDを検索して使用し、それに対して機能するかをmagentoがどのように認識するかを示します。つまり、どのようなデータが1.モデル、2。コントローラ、3。に格納されているかを参照します。参照は、XMLで既に定義されているブロックを取得するために使用されますが、実際の実例は良いでしょう。

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