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

このタグは、何らかの方法でPHPコードを含む質問に使用されます。したがって、PHP例外が返されるか、エラーレポートが生成されるとすぐに、この質問はPHPのタグが付けられます。

2
Magento 2:製品リポジトリ、フィルターグループ、および「AND」
製品のリストを取得するために製品リポジトリを使用しようとしています。AND条件と組み合わせた2つのフィルターに基づいて取得したいのですが、うまくいかないようです。フィルターグループの仕組みを理解できませんか?または、これは報告されるべきバグですか? 具体的には、(簡単にするために愚かな例)フィルタービルダー、フィルターグループビルダー、および検索条件ビルダーを挿入するコンストラクターがあります。 public function __construct( \Magento\Framework\Api\SearchCriteriaBuilder $searchCriteriaBuilder, \Magento\Framework\Api\FilterBuilder $filterBuilder, \Magento\Framework\Api\Search\FilterGroupBuilder $filterGroupBuilder ) { $this->searchCriteriaBuilder = $searchCriteriaBuilder; $this->filterBuilder = $filterBuilder; $this->filterGroupBuilder = $filterGroupBuilder; } 次に、メソッドの後半で、フィルタービルダーを使用して2つのフィルターを作成します。 $filter1 = $this->filterBuilder->setField('sku') ->setValue('24-MB01') ->setConditionType('eq') ->create(); $filter2 = $this->filterBuilder->setField('sku') ->setValue('WT08-XS-Black') ->setConditionType('eq') ->create(); 次に、フィルターグループビルダーを使用して、これら2つのフィルターで構成されるフィルターグループを構築します。 $filter_group = $this->filterGroupBuilder ->addFilter($filter1) ->addFilter($filter2) ->create(); 次に、検索条件ビルダーを使用して、フィルターグループを設定します $criteria = $this->searchCriteriaBuilder ->setFilterGroups([$filter_group]) ->setPageSize(100) ->create(); …

4
なぜget.phpや `core / file_storage_database`が作成されたのですか?
バージョン1.5または1.6前後から、Magentoのルートフォルダにという名前のファイルがありましたget.php。core/file_storage_dataモデルを使用するこのファイルを使用すると、Magentoシステムの所有者は、ファイルシステムにイメージファイルがなくても、データベースのblob列から直接製品メディアファイルを提供できます。PHPはファイルの送信を処理します #File: get.php function sendFile($file) { if (file_exists($file) || is_readable($file)) { $transfer = new Varien_File_Transfer_Adapter_Http(); $transfer->send($file); exit; } } これは、Magentoの歴史的領域に向かっていますが、なぜこの機能が開発されたのですか?どうやら-少し狂っています。PHPはファイルを提供するための最も効率的な方法ではありませんが、MySQLのBLOBストレージが不安定であることの歴史があり、さらに安定したデータベースブロブの実装では、との仕事に背後の痛みで、私が見ることができるものからVarien_File_Transfer_Adapter_Http追加していませんこれらのファイルへのキャッシュヘッダー。 Magentoがこの機能を開発した理由を知っている人はいますか?それは実際に解決するために設定した目標/問題を達成しますか?誰かがそれを使用していますか?

3
Magentoの新しいカスタムブロックモジュール
Magentoバージョン1.8.1.0を使用しています。 新しいホームページを作成するために使用する新しいカスタムブロックモジュールを作成しようとしています。 名前空間:十字軍 モジュール:CLHomePage ブロックタイプ:十字軍の家 クラス:Qwerty(テスト中のみ) デザインパッケージ:クルセイダー テーマ:デフォルト これは私がこれまでに持っているものです: \ app \ etc \ modules \ Crusader_All.xml <?xml version="1.0"?> <config> <modules> <Crusader_CLHomePage> <active>true</active> <codePool>local</codePool> </Crusader_CLHomePage> </modules> </config> \ app \ code \ local \ Crusader \ CLHomePage \ etc \ config.xml <?xml version="1.0"?> <config> <modules> <Crusader_CLHomePage> <version>0.0.1</version> </Crusader_CLHomePage> </modules> <global> …

1
Magento 2のURLで予約語を使用する
Magento 2で、標準のルーティングを使用して、次の形式のURLに応答するモジュールを作成することは可能ですか? http://magento.example.com/namespace_module/return/index つまり、2番目のパラメーターがPHPの予約済みキーワードであるURL です。上記の問題は、PHPコントローラークラス名を作成することです。 Namespace\Module\Controller\Return\Index そしてReturn名前空間にいることは違法なPHPです。URLの最後のパラメーター(伝統的にアクションと呼ばれていました)が予約済みのキーワードだったかどうか http://magento.example.com/namespace_module/foo/return Magentoでは、次の名前のコントローラークラスを作成できます。 Namespace\Module\Controller\Foo\ReturnAction ただし、これは2番目のパラメーターに対しては機能しません。 標準のMagento 2ルーティング技術を使用してこれを行う方法はありますか? そうでない場合、この動作を実現するためにカスタムルーターオブジェクトを挿入するための一般的に考えられるベストプラクティス、またはこれを回避できる他のいくつかの手法はありますか?(afterプラグインMagento\Framework\App\Router\ActionList?)

1
XML関連の例外をデバッグする方法は何ですか?
私はgvimでMagento 2を使用してコーディングしています。Magento2は初めてです。 私は何度もxml関連のエラーをデバッグするのに苦労しました。しかし、このような状況では私は本当に動揺します。このエラーの原因となっているファイルがどこにあるかはわからず、デバッガーもどちらもわかりません。 次のようにしてください:xmlファイルが無効です。実際には、その下にmodule.xml、routes.xml、config.xml、{layout} .xml、di.xmlまたはview / layout dirsがあるモジュールを作成しました。どのファイルの12/89 / ..行が無効ですか?生成された/マージされたもの?var / generatedに何も見つからず、コマンドラインが機能しなくなったため、迷っています。このエラーが何であるかを見つけるためのデバッグ方法は何ですか? どんな助けでもありがたいです。 致命的なエラー:キャッチされなかったMagento \ Framework \ Exception \ LocalizedException:無効なドキュメント要素 'item':タイプ定義は抽象的です。行:12要素 'item'、属性 'name':キーid-constraint 'itemName'のフィールドのXPath '@n​​ame'は、複数のメンバーを持つノードセットに評価されます。行:89要素 'item':キーアイデンティティー制約 'itemName'のすべてのフィールドがノードに評価されるわけではありません。行:89要素 'item'、属性 'name':キーID制約 'itemName'のフィールドのXPath '@n​​ame'は、複数のメンバーを持つノードセットに評価されます。行:90要素 'item':キーアイデンティティー制約 'itemName'のすべてのフィールドがノードに評価されるわけではありません。行:90 /var/www/html/lib/internal/Magento/Framework/Config/Reader/Filesystem.php:
11 magento2  php  xml  debugging 

4
Magento 2:ストアIDで商品コレクションをフィルタリングする方法
製品ファクトリオブジェクトを使用して、製品を作成し、製品コレクションを取得して、そのコレクションの最初のアイテムを取得できます。 /* var $productFactory \Magento\Catalog\Model\ProductFactory */ $product = $this->productFactory->create()->getCollection()->getFirstItem(); ただし、store_idをコレクションのフィルターに追加しようとした場合 $product = $this->productFactory ->create() ->getCollection() ->addFieldToFilter('store_id', 1) ->getFirstItem(); 次のエラーが表示されます Invalid attribute name: store_id #0 /Users/alanstorm/Sites/magento-2-dev-docs.dev/magento2/app/code/Magento/Eav/Model/Entity/Collection/AbstractCollection.php(1434): Magento\Eav\Model\Entity\Collection\AbstractCollection->_addAttributeJoin('store_id', 'inner') #1 /Users/alanstorm/Sites/magento-2-dev-docs.dev/magento2/app/code/Magento/Eav/Model/Entity/Collection/AbstractCollection.php(359): Magento\Eav\Model\Entity\Collection\AbstractCollection->_getAttributeConditionSql('store_id', 1, 'inner') #2 /Users/alanstorm/Sites/magento-2-dev-docs.dev/magento2/app/code/Magento/Catalog/Model/Resource/Product/Collection.php(1489): Magento\Eav\Model\Entity\Collection\AbstractCollection->addAttributeToFilter('store_id', 1, 'inner') #3 /Users/alanstorm/Sites/magento-2-dev-docs.dev/magento2/app/code/Magento/Eav/Model/Entity/Collection/AbstractCollection.php(382): Magento\Catalog\Model\Resource\Product\Collection->addAttributeToFilter('store_id', 1) ... #63 {main} store_idでフィルター処理するために製品リポジトリーを使用しようとすると、同じことが起こります(リポジトリーは内部でコレクションを使用します)。 これはバグですか?または、Magento 2でストア、Webサイト、および製品間の関係が変更され、これが正当なクエリではなくなったのですか?どちらも?どちらでもない?他に何か?

1
\ Magento \ Framework \ Registryはmagento 2.3で非推奨になりました。レジストリを使用してインスタンスを作成する方法は?
/** * Registry model. Used to manage values in registry * * Registry usage as a shared service introduces temporal, hard to detect coupling into system. * It's usage should be avoid. Use service classes or data providers instead. * * @api * @deprecated * @since 100.0.2 */ https://www.mageplaza.com/devdocs/magento-2-registry-register.html 代わりにサービスクラスまたはデータプロバイダーを使用するデモを見せてくれる人はいますか。 …

13
Magento 2:500内部サーバーエラー
以下のMagento dev docsに従いました: 新しい.htmlテンプレートを追加して編集した場合、変更は次のことを行うまで適用されません。pub/ static / frontendおよびvar / view_preprocessingディレクトリ内のすべてのファイルを削除してから、ページをリロードしてください。ファイルを手動で削除するか、CLIでgrunt clean:コマンドを実行できます。MagentoでのGruntの使用の詳細については、Gruntのインストールと構成を参照してください。 しかし、htaccessを介して設定された開発者モードでは、サイトおよび管理URLで内部サーバーエラー500が発生します。クリアするファイルを探してレンダリングする場合、それはキャッシュの問題ですか?
10 magento2  php  error 

3
プログラムで構成可能な製品を作成し、Magento2製品の構成可能な製品に単純な製品を割り当てる
これが私がこれまでに行ったことです。シンプルで構成可能な製品が作成されます。問題は、構成可能な製品に単純な製品を割り当てることができないことです。これがコードです(IDと属性はデフォルトのサンプルデータで動作します)。 //simple product $simple_product = $this->_objectManager->create('\Magento\Catalog\Model\Product'); $simple_product->setSku('test-simple'); $simple_product->setName('test name simple'); $simple_product->setAttributeSetId(4); $simple_product->setSize_general(193); // value id of S size $simple_product->setStatus(1); $simple_product->setTypeId('simple'); $simple_product->setPrice(10); $simple_product->setWebsiteIds(array(1)); $simple_product->setCategoryIds(array(31)); $simple_product->setStockData(array( 'use_config_manage_stock' => 0, //'Use config settings' checkbox 'manage_stock' => 1, //manage stock 'min_sale_qty' => 1, //Minimum Qty Allowed in Shopping Cart 'max_sale_qty' => 2, //Maximum Qty …
10 php  magento2 

1
Magento 2:仮想タイプの命名規則
日付:2015年6月1日(変化するMagento 2の性質を考慮して) Magento 2では、モジュールの構成ファイルで「仮想タイプ」をdi.xml構成できます。これらの仮想タイプを使用すると、特定の注入された依存関係の引数を変更できます。 コアMagento 2コードでは、仮想タイプに2つの命名規則があるようです。最初の例では、仮想型の名前は実際のPHPクラス名と同じように見えます。 #File: app/code/Magento/CatalogRule/etc/di.xml <virtualType name="Magento\Catalog\Pricing\Price\Pool" ... 2番目では、単純なバックスラッシュのない文字列が使用されます #File: app/code/Magento/CatalogSearch/etc/di.xml <virtualType name="advancedSearchFilterList" ... 上記の2つの命名規則に実際的な違いはありますか?つまり、選択した名前virtualTypeはその動作に影響を与えますか、それとも後で使用できるようにタイプを識別するグローバルに一意の文字列です。

2
CMS検出器からMagentoを隠す方法は?
Magentoストアがあり、それをcms検出器から隠したい。私のウェブサイトのCMSを誰にも知られたくないので、私のウェブサイトはMagentoに基づいて構築されています。 http://guess.scritch.org/CMSを検出しているようなWebサイトがいくつかあります。自分のWebサイトのCMSをその監視から隠したいと思います。 WordPressのWebサイトCMSを非表示にする方法はいくつかありますが、Magentoで何も見つかりませんでした


2
Magento 2、phpスクリプトを使用して未使用の画像を削除する方法
製品のパブ/メディアに50,000枚以上の画像があります。 しかし、未使用の画像が非常に多いため、どの製品にも関連付けられていないすべての画像を削除したいと思います。 magento 1.9.xの場合、これは参照リンクにすることができますが、 magento 2.1と同じphpスクリプトが必要です。

10
Magentoは、変更内容に関係なく、古いWebサイトにリダイレクトします。
Magentoサイトで最も奇妙なリダイレクトの問題が発生しています。サイトのコンテンツを別のMagentoサイトから新しいURLにコピーしました。私たちはこれまで問題なくこれを行ってきましたが、何らかの理由で、ページやページをロードしようとするとすぐに、古いWebサイトにリダイレクトされます。 以下は、この苦痛をデバッグするために私の探求でこれまでに行ったすべてのステップです... www.Old-Domain.com =移動した元のサイトのURL www.NEW-Domain.com = Magentoをコピーした新しいサイト。 リダイレクトの問題を解決するためにこれまでに行われた手順: MySQLデータベース全体(すべてのテーブル)で文字列www.Old-Domain.comを検索し、リダイレクトが発生する原因となるものがないことを確認しました。 データベーステーブルのcore_config_data列web/unsecure/base_urlとweb/secure/base_url新しいサイトのURLを更新www.NEW-Domain.com /var/cache/Magento Root からキャッシュファイルをクリアしました サーバーのキャッシュフォルダーをチェックして、権限やその他のエラーが原因でファイルがキャッシュされていないことを確認しました。 検査.htaccess必ずそこに起こっていなかったようにするファイル index.phpファイルも検査し、一部のコンテンツを印刷してからexit()呼び出しを行い、リダイレクトが発生するポイントまでページを徐々に下に移動しました。これは、Mage::run($mageRunCode, $mageRunType);ページが読み込まれてこの行に到達すると呼び出される最後の行です。すぐに古いWebサイトのURLにリダイレクトされます。 何か案は?


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