PluginProbe
FluentCart A New Era of eCommerce – Faster, Lighter, and Simpler / trunk
FluentCart A New Era of eCommerce – Faster, Lighter, and Simpler vtrunk
1.6.6 1.6.5 1.6.4 1.6.3 1.6.2 1.6.1 1.6.0 1.5.4 1.5.5 1.5.3 1.5.2 1.5.1 1.5.0 1.4.2 1.4.1 1.4.0 1.3.28 1.3.27 1.3.26 1.3.25 1.3.23 1.3.22 1.3.21 1.3.20 1.3.19 All 49 releases
fluent-cart / app / Hooks / Handlers / ShortCodes / ProductImageShortCode.php

ProductImageShortCode.php in FluentCart A New Era of eCommerce – Faster, Lighter, and Simpler trunk, at app/Hooks/Handlers/ShortCodes/ProductImageShortCode.php

39 lines 984 B
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace FluentCart\App\Hooks\Handlers\ShortCodes;
4
5 use FluentCart\App\Helpers\Helper;
6 use FluentCart\App\Models\Product;
7 use FluentCart\App\Services\Renderer\ProductCardRender;
8 use FluentCart\Framework\Support\Arr;
9
10 class ProductImageShortCode extends ShortCode
11 {
12 protected static string $shortCodeName = 'fluent_cart_product_image';
13
14
15 public function render(?array $viewData = null)
16 {
17 $data = $viewData ?? $this->shortCodeAttributes ?? [];
18
19 $product = null;
20 $isDefault = Helper::toBool(Arr::get($data, 'is_default', false));
21
22 if ($isDefault) {
23 $product = fluent_cart_get_current_product();
24 } else {
25 $productId = Arr::get($data, 'product_id', false);
26 if ($productId) {
27 $product = Product::query()->find($productId);
28 }
29 }
30
31 if (!$product) {
32 return;
33 }
34
35 (new ProductCardRender($product))->renderProductImage();
36 }
37 }
38
39