删除关键字magento并在为空时隐藏说明

删除关键字magento并在为空时隐藏说明,magento,keyword,Magento,Keyword,我想从我的magento存储中删除所有关键字元标记,并在为空时隐藏所有discrypion标记 这可以通过local.xml实现吗?我尝试了以下方法,但无效: <default> <reference name="head"> <action method="removeItem"> <type>meta</type> <name>keywords<

我想从我的magento存储中删除所有关键字元标记,并在为空时隐藏所有discrypion标记

这可以通过local.xml实现吗?我尝试了以下方法,但无效:

<default>
    <reference name="head">
        <action method="removeItem">
            <type>meta</type>
            <name>keywords</name>
        </action>
    </reference>
</default>

元
关键词

为什么不将app/design/frontend/base/default/template/page/html/head.phtml复制到:

app/design/frontend//default/template/page/html/head.phtml并执行以下操作:

  • 删除以下行:

      <meta name="keywords" content="<?php echo htmlspecialchars($this->getKeywords()) ?>" />
    
        <meta name="description" content="<?php echo htmlspecialchars($this->getDescription()) ?>" />
    

    这不可能通过layout.xml实现,您必须将模板文件page/html/head.phtml复制到主题中,并按照@Sander Pham的建议进行更改

    M2 If you want to remove all the meta tag completely, you can achieve this by plugin. I have created a module for this hope this will help:
    
    创建Vendor/RemoveMetaTag/registration.php

    <?php
    \Magento\Framework\Component\ComponentRegistrar::register(
        \Magento\Framework\Component\ComponentRegistrar::MODULE,
        'Vendor_RemoveMetaTag',
        __DIR__
    );
    

    我尝试尽可能多地使用local.xml。但这项工作也很出色。。。。谢谢:o)
    
    <?php
    \Magento\Framework\Component\ComponentRegistrar::register(
        \Magento\Framework\Component\ComponentRegistrar::MODULE,
        'Vendor_RemoveMetaTag',
        __DIR__
    );
    
    <?xml version="1.0" ?>
    <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
        <module name="Vendor_RemoveMetaTag" />
    </config>
    
    <?xml version="1.0"?>
    <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
        <type name="Magento\Framework\View\Page\Config">
            <plugin name="removeMetaTag" type="Vendor\RemoveMetaTag\Plugin\PageConfig\RemoveMetaTag" sortOrder="1000"/>
        </type>
    </config>
    
    Vendor/RemoveMetaTag/Plugin/PageConfig/RemoveMetaKeywords.php
    
    <?php
    namespace Vtn\RemoveMetaTag\Plugin\PageConfig;
    
    class RemoveMetaTag {
        public function __construct(
            \Magento\Framework\App\Request\Http $request
        )
        {        
            $this->request = $request;
        }
    
        public function afterGetMetadata($subject, array $metaData) {
            $pathInfo = $this->request->getPathInfo();
            $pageId = str_replace("/cms/page/view/page_id/","",$pathInfo);
    
            if ($pageId == "your_page_id") {
                return [];
            }
            return $metaData;
        }
    }