Commit c058aa71b4402ff132989fa7cebb2077d6d35073
1 parent
c83e81f5
Namespaces
Showing
2 changed files
with
12 additions
and
5 deletions
Show diff stats
CatalogUrlManager.php
... | ... | @@ -4,7 +4,6 @@ |
4 | 4 | |
5 | 5 | use artweb\artbox\ecommerce\models\Category; |
6 | 6 | use artweb\artbox\ecommerce\models\Product; |
7 | - use artweb\artbox\ecommerce\models\ProductSearch; | |
8 | 7 | use artweb\artbox\ecommerce\models\ProductVariant; |
9 | 8 | use yii\web\HttpException; |
10 | 9 | use yii\web\UrlRuleInterface; |
... | ... | @@ -106,6 +105,7 @@ |
106 | 105 | public function createUrl($manager, $route, $params) |
107 | 106 | { |
108 | 107 | |
108 | + | |
109 | 109 | if (!in_array($route, $this->route_map)) { |
110 | 110 | return false; |
111 | 111 | } |
... | ... | @@ -140,13 +140,18 @@ |
140 | 140 | break; |
141 | 141 | |
142 | 142 | case 'catalog/product': |
143 | + | |
143 | 144 | if (!empty( $params[ 'product' ] )) { |
144 | - $product_alias = is_object($params[ 'product' ]) ? $params[ 'product' ]->alias : strtolower( | |
145 | - $params[ 'product' ] | |
146 | - ); | |
145 | + $product_alias = strtolower($params[ 'product' ]); | |
147 | 146 | unset( $params[ 'product' ] ); |
148 | 147 | } |
149 | - $url = 'product/' . $product_alias; | |
148 | + | |
149 | + if (!empty( $params[ 'variant' ] )) { | |
150 | + $variant_sku = strtolower($params[ 'variant' ]); | |
151 | + unset( $params[ 'variant' ] ); | |
152 | + } | |
153 | + | |
154 | + $url = 'product/' . $product_alias . '/' . $variant_sku; | |
150 | 155 | |
151 | 156 | if (!empty( $params ) && ( $query = http_build_query($params) ) !== '') { |
152 | 157 | $url .= '?' . $query; | ... | ... |
models/ProductImage.php