Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Вывод в определенных категориях по id <meta name="robots" content="noindex,follow">


klest333

Recommended Posts

OpenCart версия 3.0.3.3

 

Подскажите пожалуйста, есть задача вывести <meta name="robots" content="noindex,follow"> в некоторых категориях.

 

Пробую поставить условие в catalog/controller/product/category

if ($this->data['category_id] == {647,456,479} {
                $this->document->setRobots( 'noindex,follow' );
 }

Но категории вообще перестают загружаться.

 

У меня стоит уже доработка чтобы на страницах пагинации в категориях, продуктах, корзине и т.д. выводился <meta name="robots" content="noindex,follow">

И вот теперь нужно еще добавить id определенных категорий.

 

Ниже код модификатора который стоит

<?xml version="1.0" encoding="UTF-8"?>
<modification>
    <name>Robot noindex</name>
    <code>ox_robot_noindex</code>
    <version>2.1.1</version>
    <ocversion>3.0.2.x</ocversion>
    <author>slasoft / OSWorX</author>
    <authorEmail>[email protected]</authorEmail>
    <link>https://osworx.net</link>
    <license>GNU/GPL</license>
    <date>2018.11.13</date>
    <description>Add metat tag noindex, follow to category, information, manufacturer and some special product pages</description>

    <file path="system/library/document.php">
        <operation>
        <search>
            <![CDATA[
                private $scripts = array();
            ]]>
        </search>
        <add position="after">
            <![CDATA[
    /** + robot, noindex */
    private $robots;

    public function setRobots($value) {
        $this->robots = $value;
    }

    public function getRobots() {
        return $this->robots;
    }
            ]]>
        </add>
        </operation>
    </file>

    <file path="catalog/controller/common/header.php">
        <operation>
            <search>
                <![CDATA[
                    $data['base']
                ]]>
            </search>
            <add position="after">
                <![CDATA[
        /** + robot, noindex */
        $data['robots'] = $this->document->getRobots();
                ]]>
            </add>
        </operation>
    </file>

    <file path="catalog/controller/product/{category,manufacturer,special}.php">
        <operation>
            <search>
                <![CDATA[
                    $this->document->setTitle(
                ]]>
            </search>
            <add position="after">
                <![CDATA[
            /** + robot, noindex */
            if( isset( $this->request->get['page'] ) || isset( $this->request->get['limit'] ) || isset( $this->request->get['order'] ) ) {
                $this->document->setRobots( 'noindex,follow' );
            }
                ]]>
            </add>
        </operation>
    </file>

    <file path="catalog/controller/account/{forgotten,login,register}.php|catalog/controller/checkout/{cart,checkout}.php|catalog/controller/information/information.php|catalog/controller/product/{compare,search}.php">
        <operation>
            <search>
                <![CDATA[
                    $this->document->setTitle(
                ]]>
            </search>
            <add position="after">
                <![CDATA[
            /** + robot, noindex */
            $this->document->setRobots( 'noindex,follow' );
                ]]>
            </add>
        </operation>
    </file>

       <file path="catalog/view/theme/*/template/common/header.twig">
        <operation>
            <search>
                <![CDATA[
                    <title>
                ]]>
            </search>
            <add position="before">
                <![CDATA[
{% if robots %}
<meta name="robots" content="{{ robots }}" />
{% endif %}
                ]]>
            </add>
        </operation>
    </file>
</modification>

 

Надіслати
Поділитися на інших сайтах


if ($this->data['category_id] == {647,456,479} {
                $this->document->setRobots( 'noindex,follow' );
 }

 

 

if (in_array($this->data['category_id], [647,456,479]) {
                $this->document->setRobots( 'noindex,follow' );
 }

Надіслати
Поділитися на інших сайтах

6 часов назад, chukcha сказал:

if (in_array($this->data['category_id], [647,456,479]) {
                $this->document->setRobots( 'noindex,follow' );
 }

 

Откуда $this->data у автора?

if (in_array($this->data['category_id'], [647,456,479])) {
		$this->document->setRobots('noindex,follow');
}

или

if (isset($this->request->get['path'])) {
	$parts = explode('_', (string)$this->request->get['path']);
	$category_id = (int)array_pop($parts);
	if (in_array($category_id, [647,456,479])) {
		$this->document->setRobots('noindex,follow');
	}
 }

 

Надіслати
Поділитися на інших сайтах

6 часов назад, buslikdrev сказал:

Откуда $this->data у автора?

это не важно
Я не задумывался на его кодом, а показал код поиска вхождения

Надіслати
Поділитися на інших сайтах

@klest333 мне кажется, вы пошли сложным путем.

Можно ведь просто в блоке с описанием к категории прописать в исходном коде <meta name="robots" content="noindex,follow" />

Если у вас редактор не удаляет теги, то на странице категории соответсвенно и выведется данная конструкция.

image.png.26b7d1c00c215f5dbeb2a8df276f2680.png

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.