Skip to content

Commit d02891f

Browse files
committed
Improved syntaxis
1 parent d1fa92a commit d02891f

File tree

4 files changed

+25
-6
lines changed

4 files changed

+25
-6
lines changed

.gitignore

100644100755
File mode changed.

Block/Product.php

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,14 @@
66

77
namespace Osaka\StructuredData\Block;
88

9-
use Magento\Backend\Block\Template\Context;
10-
use Magento\Catalog\Helper\Data;
119
use Magento\Catalog\Block\Product\View;
1210

1311
class Product extends View
1412
{
13+
14+
/**
15+
* @return string
16+
*/
1517
public function getStructuredJsonData(): string
1618
{
1719
$productBasicInformation = $this->getProduct();
@@ -25,11 +27,28 @@ public function getStructuredJsonData(): string
2527
$structuredData .= '"sku": "'.$productBasicInformation->getSku().'",' . "\n\r";
2628
$structuredData .= '"description": "'.$shortDescription.'",' . "\n\r";
2729
$structuredData .= '"image": ["'.$productBasicInformation->getMediaConfig()->getMediaUrl($productBasicInformation->getImage()).'"]' . "\n\r";
28-
2930
$structuredData .= "}";
3031

32+
return $structuredData;
33+
}
34+
35+
/**
36+
* @return string
37+
*/
38+
public function getStructuredJsonDataAsArray(): string
39+
{
40+
$productBasicInformation = $this->getProduct();
3141

42+
$shortDescription = trim(preg_replace('/ +/', ' ', preg_replace('/[^A-Za-z0-9 ]/', ' ', urldecode(html_entity_decode(strip_tags($productBasicInformation['short_description']))))));
3243

33-
return $structuredData;
44+
$structuredData = [];
45+
$structuredData["@context"]= "https://schema.org/";
46+
$structuredData["@type"]= 'Product';
47+
$structuredData["name"] = $productBasicInformation->getName();
48+
$structuredData["sku"] = $productBasicInformation->getSku();
49+
$structuredData["description"] = $shortDescription;
50+
$structuredData["image"] = array($productBasicInformation->getMediaConfig()->getMediaUrl($productBasicInformation->getImage()));
51+
52+
return json_encode($structuredData);
3453
}
3554
}

Model/ProductManagement.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ class ProductManagement implements \Osaka\StructuredData\Api\ProductManagementIn
1515
*/
1616
public function getProduct($param)
1717
{
18-
return 'hello api GET return the $param ' . $param;
18+
1919
}
2020
}
2121

view/frontend/templates/custom_tab.phtml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,5 @@
99

1010
$currentProduct = $block->getProduct();
1111
echo '<script type="application/ld+json">';
12-
print_r($block->getStructuredJsonData());
12+
echo $block->getStructuredJsonDataAsArray();
1313
echo '</script>';

0 commit comments

Comments
 (0)