ホームページ  >  記事  >  バックエンド開発  >  Magento がホームページからの製品ページのナビゲーションを修正_PHP チュートリアル

Magento がホームページからの製品ページのナビゲーションを修正_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 16:57:16860ブラウズ

この記事は、Magento を友達に紹介するためのものです。トップページから製品がカテゴリ製品リストから製品詳細ページに入る場合、パンくずリスト ナビゲーションにはカテゴリ パスが含まれます。ホームページの商品ページ、または検索結果などに入力された場合は表示されません。おそらくMagentoが製品を複数のカテゴリに分類することをサポートしているためだと思います。いずれにせよ、製品ページにはカテゴリ パスが存在せず、ユーザー エクスペリエンスはあまり良くありません。

修正方法は、app/code/core/Mage/Catalog/Helper/Data.phpファイルを見つけます

ローカルコードプールにコピーをコピーします

app/code/local/Mage/Catalog/Helper/Data.php
getBreadcrumbPath 関数の先頭に、次のコード ロジックを追加します。

代码如下 复制幣
getBreadcrumbPath()
    {
        if (!$this->_categoryPath) {
            $path = array();
            //日付を追加 2013-04-07 产品页面包チップ导航修正
            if ($this->getProduct() && !$this->getCategory()) {
                $_categoryIds = $this->getProduct()->getCategoryIds();
                rsort($_categoryIds);
                if ($_categoryId = $_categoryIds[0]) {
                    $_category = Mage::getModel('カタログ/カテゴリ')->load($_categoryId);
                    Mage::register('current_category', $_category);
                }
            }
            //終了日 2013-04-07
           
            if ($category = $this->getCategory()) {
                $pathInStore = $category->getPathInStore();
                $pathIds = array_reverse(explode(',', $pathInStore));
                $categories = $category->getParentCatalog();
                // カテゴリパスのパンくずリストを追加します
                foreach ($pathIds を $categoryId) {
                    if (isset($categories[$categoryId]) && $categories[$categoryId]->getName()) {
                        $path['category'.$categoryId] = array(
                            'ラベル' => $categories[$categoryId]->getName(),
                            'リンク' => $this->_isCategoryLink($categoryId) ? $categories[$categoryId]->getUrl() : ''
                        );
                    }
                }
            }
            if ($this->getProduct()) {
                $path['product'] = array('label'=>$this->getProduct()->getName());
            }
            $this->_categoryPath = $path;
        }
        $this->_categoryPath を返す;
    }

まず、現在のページが製品ページであるかどうかを判断し、カテゴリ情報がない場合は、製品が属するカテゴリ ID を取得します。Magento では、製品を複数のカテゴリに追加できます。たくさんあるので、幸運なカテゴリを 1 つ選んでください

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/631527.html技術記事この記事では、ホームページから商品ページのパンくずナビゲーションの実装を修正するためにMagentoを友達に紹介します。商品がカテゴリ商品リストから商品詳細ページに入ると、パンくずナビゲーション...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。