オープングラフプロトコルメタタグを動的に生成する方法
-
22-10-2019 - |
質問
<meta property="og:url" content="<?php echo "http://". $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];?>"/>
<meta property="og:description" content=""/>
<meta property="og:title" content=""/>
<meta property="og:image" content=""/>
でテストしました head.phtml
ファイルですが、ような製品属性を取得する方法がわかりません sku
, color
と images
.
でテストしました $this->helper('catalog/image')->init($_product, 'image')
で見つかりましたmedia.phtml
メタタグで空白のページを取得しますが、製品ビューの画像は正常に動作しています。
それは私をたくさん混同します。
解決
これをレイアウトファイルの1つに追加する必要があります。
<catalog_product_view>
<reference name="head">
<block type="core/template" name="open-graph" as="open-graph" template="opengraph/product.phtml" />
</reference>
</catalog_product_view>
これで、ファイルを作成する必要があります opengraph/product.phtml
あなたの中のテーマ(app/design/frontend/{package}/{theme}/template/
)次のコンテンツを使用してください。
<?php $_product = Mage::registry('current_product'); ?>
<?php if ($_product) : ?>
<meta property="og:url" content="<?php echo "http://". $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];?>"/>
<meta property="og:description" content="<?php echo htmlspecialchars($_product->getDescription())?>"/>
<meta property="og:title" content="<?php echo htmlspecialchars($_product->getName())?>"/>
<meta property="og:image" content="<?php echo $this->helper('catalog/image')->init($_product, 'image')?>"/>
<?php endif;?>
含める必要がある場合 sku
また color
そこにあなたはそれらのようにそれらを取得することができます:
$sku = $_product->getSku();
$color = $_product->getAttributeText('color');
完了したらキャッシュをクリアします。
所属していません magento.stackexchange