Как я могу добавить различные мета-открытые графики для домашней страницы и отдельных страниц продукта?


Когда я размещал ссылку на свой сайт в facebook, добавленное изображение состояло из 2 изображений, логотипа и другого. Facebook отобразил первые из них. Поэтому мне нужно было добавить default_head_block.xml file (app/design/frontend/Venustheme/kasitoo/Magento_Theme/layout)

Следующий код:

<meta property="og:type" content="website" />
<meta property="og:title" content="Sitename" />
<meta property="og:description" content="description site lorem ipsum" />
<meta property="og:url" content="http://sitename.ro/" />
<meta property="og:site_name" content="MyOrganic" />
<meta property="og:image" content="http://sitename/pub/media/facebook.jpg" />

Проблема в том, что это переопределяет мета-открытые графики с одной страницы продукта. Которые расположены в

general.phtml in vendor/magento/module-catalog/view/frontend/templates/product/view/opengraph

<meta property="og:type" content="og:product" />
<meta property="og:title" content="<?php echo $block->escapeHtml($block->getProduct()->getName()); ?>" />
<meta property="og:image" content="<?php echo $block->escapeUrl($block->getImage($block->getProduct(), 'product_base_image')->getImageUrl()); ?>" />
<meta property="og:description" content="<?php echo $block->escapeHtml($block->getProduct()->getShortDescription()); ?>" />
<meta property="og:url" content="<?php echo $block->escapeUrl($block->getProduct()->getProductUrl()); ?>" />
<?php if ($priceAmount = $block->getProduct()->getFinalPrice()):?>
    <meta property="product:price:amount" content="<?php /* @escapeNotVerified */ echo $priceAmount; ?>"/>
    <?php echo $block->getChildHtml('meta.currency'); ?>
<?php endif;?>

Где я должен добавить меты для домашней страницы, чтобы правильно работать с метами для отдельных страниц продукта??

Author: Raluca Albu, 2018-01-25

2 answers

Мета-теги можно добавить в файл макета cms_index_index.xml так же, как вы добавили их в файл default_head_block.xml, и тогда они будут применяться только на главной странице.

Пример -

Default_head_block.xml -

<head>
    <meta property="og:image" content="http://example.com/DEFAULTIMAGE.png" />
</head>

Cms_index_index.xml -

<head>
    <meta property="og:image" content="http://example.com/HOMEPAGEIMAGE.png" />
</head>

Приведет к тому, что свойство og:image будет DEFAULTIMAGE.png на каждой странице без явно заданного изображения и HOMEPAGEIMAGE.png на домашней странице.

 6
Author: smstl, 2018-01-25 17:30:49

Мета-теги OG могут быть добавлены в файл макета default_head_block.xml файл, и они будут применены на всех страницах.

<head>

    <meta name="og:title" content="Printing coop is a most famous Digital Printing certer"/>
    <meta name="og:description" content="Printing coop is a most famous Digital Printing certer in Montreal Canada.Professional Printer Services."/>

</head>
 1
Author: Baharuni Asif, 2019-06-28 10:30:42