Stellen Sie NOINDEX, NOFOLLOW für bestimmte Produkte ein


17

Mein Magento-Shop bietet Folgendes, damit Google / Suchmaschinen die gesamte Website crawlen können.

<meta name="robots" content="INDEX,FOLLOW" />

Ich brauche jetzt einige bestimmte Produkte:

<meta name="robots" content="NOINDEX,NOFOLLOW" />

damit google sie nicht crawlt / indexiert. Ist das möglich? Produkte würden zufällig sein (dh nicht alle aus einer Kategorie), daher muss ich in der Lage sein, dies bei Bedarf Produkt für Produkt zu tun.

Ich weiß, ich könnte es auf einer URL-Basis tun wie:

<?php
$currentUrl = Mage::helper('core/url')->getCurrentUrl();
if ($currentUrl == 'xxxxxxx')
{
    <meta name="robots" content="NOINDEX,NOFOLLOW" />
}
else
{
    <meta name="robots" content="INDEX,FOLLOW" />
}
?>

Aber es könnte im Laufe der Zeit Hunderte / Tausende von diesen geben.

Antworten:


23

Wenn Sie in Magento Admin ein Produkt bearbeiten, gehen Sie zur Registerkarte designund fügen Sie Folgendes hinzu custom layout:

<reference name="head">
      <action method="setRobots"><meta>NOINDEX,NOFOLLOW</meta></action>
</reference>

+1, aber er hat gesagt, es könnte Tausende von Produkten sein ...
paj

1
@paj stimmt, aber die Produkte sind zufällig, daher ist dies die einzige saubere Option.
Sander Mangel

Sollte es nicht <value>NOINDEX,NOFOLLOW</value>statt sein <meta>NOINDEX,NOFOLLOW</meta>?
Arvind07

18

Sie können das Ereignis controller_action_layout_generate_blocks_afterwie folgt beobachten:

public function setRobots($observer) 
{
     $controller = $observer->getAction();
     $fullActionName = $controller->getFullActionName();
     if ($fullActionName == 'catalog_product_view') { //if on product page
          $product = Mage::registry('product'); //access the current product if needed
          if (your condition here) { //condition to set the robots to noindex, nofollow
              $observer->getLayout()->getBlock('head')->setRobots('NOINDEX,NOFOLLOW');
          }
     }
}

Wenn "Ihre Bedingung hier" ein benutzerdefiniertes Attribut sein könnte, können Sie den benutzerdefinierten Attributwert schnell für Tausende von Produkten in großen Mengen importieren.
Paj

@paj. Sicher. Es kann alles sein. Ein Produktattribut, eine Konfigurationseinstellung.
Marius
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.