Magento

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

1
「ナビゲーションメニューに含める」がnoに設定されているすべてのサブカテゴリのリストを取得する方法
ナビゲーションメニューに含まれていないすべてのサブカテゴリを取得しようとしましたが、それらはアクティブであり、リストページの現在のカテゴリです。 $children = Mage::getModel('catalog/category')->getCategories(10); //10 current category id このカテゴリコレクションでも、ナビゲーションメニューに含まれるサブカテゴリのみが返されます。 ナビゲーションメニューに含まれていないカテゴリを取得する方法は?

2
いくつかのhtmlタグがcmsページに保存されないのはなぜですか?
ホームページにHTMLを挿入しようとしていますが、ページを保存するとタグが消えてしまい、保存されません。 これは、ページに保存しようとしているHTMLです。 <section class="bottom_sec"> <div class="shop_bottom"> </div> </section> <section class="footer-container"> <figure class="footer-logo"><a href="#"><img src="{{skin url}}images/footer_logo.png" alt="footer_logo" /></a></figure> </section> </section> 保存ボタンをクリックする<section>と、<figure>タグとタグが消え、htmlは次のようになります <div class="shop_bottom"> </div> <p><a href="#"><img src="{{skin url}}images/footer_logo.png" alt="footer_logo" /></a></p> これらのタグをcmsページに保存するにはどうすればよいですか。magentoはこれらのタグを保存できますか?ありがとう...

2
メールテンプレートをデバッグする方法
メールテンプレートの変更に取り組んでいます。 {themeName}/template/email/order/items/order/default.phtml 上記のテンプレートは、ユーザー(guestまたはcustomer)が注文したときにトリガーされます。 上記のテンプレートには、次のような変数があります。 $_item = $this->getItem(); $_order = $this->getItem()->getOrder(); Mage::logまたはなどのデバッグ方法を使用するzend_debug::dumpと、チェックアウトページがハングアップし、注文が処理されません。 それで、私の質問は、ここで電子メールテンプレートをデバッグするために何を使用する必要があるかです。 またecho、常に空の文字列を表示するかarray、変数を保持する配列に使用しました。

2
構成可能製品の関連製品をカタログ価格ルールから除外します
関連する構成可能な製品の単純な製品をカタログ価格ルールから除外しようとしています。これをすべて行う理由は、すでにスーパー属性の構成セクションに-priceを追加しているため、この特定の製品にこれ以上割引を適用したくないからです。 。 catalogrule_productテーブルに保存する製品を除外しようとしましたが、このテーブルは関連する製品を保存していないため、構成可能な製品IDを保存し、それを使用して価格を計算しています。 また、configurable.phpのいくつかの条件を試しましたが、まだ運がありません。 私はこれをするために汚い方法を使いたくありません。これをスマートに行う方法を教えてください。

4
製品のカテゴリを含む完全なURLを常に表示する
Magentoウェブショップ(1.7.0.2)では、URL構造を最適化しようとしています。私たちはすでにいくつかのことを改善することに成功しましたが、1つは成功しませんでした。すべての製品に完全なURL(カテゴリを含む)を使用したいと考えています。例えば: www.website.com/products/best-products/product または:カテゴリページのwww.website.com/products/best-products これは、カテゴリを参照してブレッドクラムを使用する場合は正常に機能しますが、検索する場合は機能しません。次に、常にwww.website.com/productをURLとして使用します。これは、製品が複数のカテゴリに属している可能性があり、検索結果で使用するカテゴリがわからないためです。 これを強制する方法はありますか?それをどうにかして「最初の」カテゴリを使用するために、あるいはあなたが選ぶことができるいくつかのデフォルトのカテゴリを使用するためにさえ?私は開発者なので、コードに変更を加えてもかまいませんが、別の方法やより信頼できる方法がない場合に限ります。ヒントやトリックは大歓迎です、事前に感謝します!

5
製品がフロントエンドに表示されない
写真に示すように、1つのアイテム(製品-ミニカースピーカー)と1つの空のカテゴリスピーカーがあります。 しかし、フロントエンドからこれにアクセスしようとすると、表示されません。参照: および


2
Magentoオブザーバー関数を使用してセッションにデータを保存する
オブザーバー関数を使用して、Magentoセッションまたはレジストリにデータを保存することは可能ですか? Mage::getSingleton('core/session')->setFoo('bar'); //Or 'customer/session', 'admin/session' または Mage::register('foo', 'bar'); 追加しようとした sesson_write_close(); しかし、何とかセッションデータを読み取ることができました。

1
構成はフロントモデルとバックエンドモデルに「依存」します
構成の「依存」機能に問題があります。 通常、<depends>いくつかの構成オプションに追加されますが、指定されたオプションの値が一致しない限り、それは非表示になります。 例えば: <option_one> <label>Option 1</label> ... </option_one> <option_two> <label>Option 2</label> ... <depends><option_one>1</option_one></depends> </option_two 明らかに、いくつかのフィールドが欠けていますが、要点はわかります。オプション2は、オプション1の値が「1」の場合にのみ表示されます。 私の問題は、これをバックエンドモデルとフロントエンドモデルのオプションに適用しようとすると、これに依存しないことです。 <option_three> ... <frontend_model>module/adminhtml_form_field_test</frontend_model> <backend_model>adminhtml/system_config_backend_serialized_array</backend_model> ... <depends><option_one>1</option_one></depends> </option_three> このオプションはオプション1を考慮せず、常に表示されるだけです。 私は何か間違っているのですか、それともバグですか、それとも「設計どおりに機能する」のですか?


3
attribute_codeでattribute_idを検索します
私が見つける必要があるattribute_id属性の値をimage、small_imageとthumbnail。私はデータベース、85、86、87でそれらを知っていますが、ハードコードされた値ではなく、クエリを動的にする必要があります。私が苦労しているのは、属性が格納されているテーブルを見つけることです。チェックcatalog_product_attributeしましたname/codeが、属性の列がありません。 Mage::...PHPコードではなく、SQLクエリとして取得する必要があります。サンプルのSQLクエリコードまたはその他のガイダンスが非常に役立ちます。

1
タイトルサフィックスをホームページからのみ削除
のようなmagentoシステム構成でTitleサフィックスを付けました| Magento site。したがって、これにより、ストア内のすべてのページにサフィックスとしてタイトルが追加されます。 しかし、ホームページのタイトルに移動すると、次のように表示されます Home | Magento site ホームページからのみタイトルサフィックスを削除したいのですが。 だから私はHomeホームページのタイトルのように期待しています。 これを行う方法
8 layout  cms  xml  seo 

2
Magentoセットアップのファイルとフォルダーの権限
Magento wikiから、ファイルとフォルダーの権限が次のように設定されていることがわかりました。 #for magento 1.5+ find . -type f -exec chmod 644 {} \; find . -type d -exec chmod 755 {} \; chmod o+w var var/.htaccess app/etc chmod 550 mage chmod -R o+w media 質問: FTPクライアントを使用してアクセス許可を設定しようとしています。最初の2行はかなり自明ですが、 chmod o+w var var/.htaccess app/etc これは、「その他」クラスに書き込み権限を適用する必要があることを意味するので、varフォルダーなどのフォルダーの権限を775に変更し、.htaccessファイルの権限を664に変更しますか? 同じことがコードの最終行にも当てはまります。 同様のスレッドがあることは承知しておりますが、Wikiで提案されているものと比較して許可がそこにないことを示唆しているため、Wikiをフォローしたいと思います。

4
修正方法:「HEADER ALREADY SENT」とGD2?
これは、デバッグ方法の質問の続きです:ヘッダーはすでに送信され、GD2です。具体的には、次のエラーを修正する方法(ソースを追跡するために以前のデバッグアドバイスを使用して最初の行が追加されていることに注意してください): 2014-02-04T14:26:06+00:00 DEBUG (7): Cannot send headers; headers already sent in /home/.../lib/Varien/Image/Adapter/Gd2.php, line 133 2014-02-05T16:14:32+00:00 DEBUG (7): HEADERS ALREADY SENT: < pre > [0] /home/.../app/code/core/Mage/Core/Controller/Response/Http.php:52 [1] /home/.../lib/Zend/Controller/Response/Abstract.php:766 [2] /home/.../app/code/core/Mage/Core/Controller/Response/Http.php:83 [3] /home/.../app/code/core/Mage/Core/Controller/Varien/Front.php:188 [4] /home/.../app/code/core/Mage/Core/Model/App.php:354 [5] /home/.../app/Mage.php:683 [6] /home/.../public_html/index.php:87 </ pre > その質問は、この問題をデバッグする方法に関するものでした。この質問はそれを修正する方法です。その質問に対する私の「回答」に従って、そしてバニラMagentoインストールでさらにいくつかのテストを行ったところ、これがMagentoコアバグ(v1.7.0.2)のように見えることを確認できます。 これらのログは、標準のMagentoページ/ブロック画像マネージャーを使用して、ページまたは静的ブロックの画像を管理するだけで発生します。再現するには、画像が含まれているページを開きます。ページ上の画像ごとにこれらの1つが記録されます。画像マネージャーを開いて、アップロードされた画像を表示します-表示される画像ごとに別の画像があります。 問題はこの関数にあるようです。私の読書では、CMS画像がフェッチされてダッシュボードに表示されるたびにこのエラーが発生することが最も確実です。 public function display() { header("Content-type: ".$this->getMimeType()); call_user_func($this->_getCallback('output'), …
8 image  header  gd2 

2
コレクション-複数の複数選択属性値のフィルタリング
それはタイプミスではありません。 複数選択属性をフィルター処理するには 'finset'を使用する必要があることを認識しています。しかし、私は一度に複数の値をフィルタリングして、以下を取得しようとしています: Incorrect parameter count in the call to native function 'FIND_IN_SET。 ここにいくつかのサンプルコードがあります: foreach ($options as $option) { // $option[0] contains an attribute ID as a string $attribute = Mage::getModel('catalog/resource_eav_attribute')->load($option[0]); if ($attribute->getFrontendInput() == 'multiselect') { $collection->addAttributeToFilter($attribute->getAttributeCode(), array('finset' => $option[1])); } else { $collection->addAttributeToFilter($attribute->getAttributeCode(), array('in' => $option[1])); } } フロントエンドにあるのはフィールドのセットです。各セットは特定の属性に対応し、各属性値のチェックボックスが含まれています。これらの提出に基づいて、コレクションは選択されたものを除外する必要があります。 …

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