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

Добавить исключение в php


Recommended Posts

Здравствуйте. Подскажите, кто в php понимает что нужно добавить в код, что бы сделать исключение для фильтра, у фильтра урлы все начинаются /?ocf=, то есть что бы noindex не применялся для страниц с ?ocf=

<?php
    $url = $_SERVER['REQUEST_URI'];
    if (strpos($url,'?') !== false) {
    echo '<meta name="robots" content="noindex, follow" />' . "\n";
    } else {
    echo '<meta name="robots" content="index, follow" />';
}
?>

 

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


Как я и ожидал от своих кривых рук ничерта не получилось))) С if isset($this->request->get[ocf], выходит ошибка

Сделал следующую конструкцию, не знаю насколько это правильно, но в любом случае работает... Остался нюанс, у фильтра есть пагинация и её нужно как то убрать из индексации, то есть что бы пагинация была noindex.

<?php
    $url = $_SERVER['REQUEST_URI'];
    if (strpos($url,'?') !== false and strpos($url,'?ocf') !=true) {
    echo '<meta name="robots" content="noindex, follow" />' . "\n";
    } else {
    echo '<meta name="robots" content="index, follow" />';
}

 

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


23.10.2022 в 18:02, aka75 сказал:

Как я и ожидал от своих кривых рук ничерта не получилось))) С if isset($this->request->get[ocf], выходит ошибка

Сделал следующую конструкцию, не знаю насколько это правильно, но в любом случае работает... Остался нюанс, у фильтра есть пагинация и её нужно как то убрать из индексации, то есть что бы пагинация была noindex.

<?php
    $url = $_SERVER['REQUEST_URI'];
    if (strpos($url,'?') !== false and strpos($url,'?ocf') !=true) {
    echo '<meta name="robots" content="noindex, follow" />' . "\n";
    } else {
    echo '<meta name="robots" content="index, follow" />';
}

 

Это дичь.

Если ошибка $this->request->get['ocf']

Значит условие где-то в index.php или в шаблоне, или кавычки не установили

Значит isset($_GET['ocf'])

 

Змінено користувачем buslikdrev
Надіслати
Поділитися на інших сайтах

23.10.2022 в 22:48, buslikdrev сказал:

Это дичь.

Если ошибка $this->request->get['ocf']

Значит условие где-то в index.php или в шаблоне, или кавычки не установили

Значит isset($_GET['ocf'])

 

нет, сам код  с ошибкой

if isset($this->request->get[ocf]

Где скобки? Где апострофы

Код был дан только как толчок к решению

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

23.10.2022 в 19:02, aka75 сказал:

Как я и ожидал от своих кривых рук ничерта не получилось))) С if isset($this->request->get[ocf], выходит ошибка

Сделал следующую конструкцию, не знаю насколько это правильно, но в любом случае работает... Остался нюанс, у фильтра есть пагинация и её нужно как то убрать из индексации, то есть что бы пагинация была noindex.

<?php
    $url = $_SERVER['REQUEST_URI'];
    if (strpos($url,'?') !== false and strpos($url,'?ocf') !=true) {
    echo '<meta name="robots" content="noindex, follow" />' . "\n";
    } else {
    echo '<meta name="robots" content="index, follow" />';
}

 

<?php
  //check if isset get parameter ocf or page
  if(isset($_GET['ocf']) || isset($_GET['page'])){
  	echo '<meta name="robots" content="noindex, nofollow" />' .PHP_EOL;
  }else{
  	echo '<meta name="robots" content="index, follow" />';
  }

?>

 

нюанс!!!! если у фильтра есть пагинация, и он сохраняет гет параметр фильтрации в запросе, то пагинация и так попадает под проверку.
т.е. не надо делать проверку на пагинацию по сколку и так есть параметр ?ocf в запросе, а для него исключение есть

 

site.com/products/phones/?ocf=brand_1&page_=2

Змінено користувачем SevenTM
Надіслати
Поділитися на інших сайтах


26.10.2022 в 12:20, SevenTM сказал:
<?php
  //check if isset get parameter ocf or page
  if(isset($_GET['ocf']) || isset($_GET['page'])){
  	echo '<meta name="robots" content="noindex, nofollow" />' .PHP_EOL;
  }else{
  	echo '<meta name="robots" content="index, follow" />';
  }

?>

 

неверно

'ocf'
может быть внутренним параметром (его может не быть в $_GET )
$this->get = $this->clean($_GET);

использование $_GET - только в исключительных случаях

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

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

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

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

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

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

Вхід

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

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

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

Important Information

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