Виключити з пагінації деякі рубрики Wordpress. Як виключити записи та категорії з головної сторінки WordPress, rss стрічки, категорій та архівів без плагінів

На головній сторінці, а також на сторінках рубрик, архівів і в результатах пошуків, як правило, потрібна посторінкова навігація (так само відома як пагінація). Блоги на WordPress не є винятком, вони також використовують пагінацію, коли результати виведення інформації розбиваються на кілька сторінок.

Раніше для реалізації цієї можливості використовували сторонні плагіни, або спеціальні функції, які розміщувалися у файлі functions.php. Однак з виходом WordPress версії 4.1 функція пагінації була вбудована в ядро ​​CMS, і тепер для реалізації посторінкової навігації достатньо внутрішніх функцій WordPress і немає необхідності додавати сторонній код або плагіни.

Я писав раніше про подібне поліпшення з боку WordPress щодо тега TITLE - https://aboutwordpress.ru/post/wordpress-title/.

Що таке пагінація

Пагінація – це розбиття інформації на сторінки. Також під цим поняттям маються на увазі порядкову нумерацію сторінок, що позначаються цифрами, розташованими внизу, вгорі або збоку сторінки.

WP-PageNavi - плагін пагінації WordPress

Найпопулярнішим плагіном пагінації для WordPress є WP-PageNavi. Чесно кажучи, він настільки добре справляється з поставленим завданням пагінації, що обговорювати і порівнювати інші плагіни немає жодного сенсу.

Пагінація WordPress - плагін WP-PageNavi

Пагінація wordpress без плагіна

Для того, щоб зробити пагінацію на сайті без плагінів, ми скористаємося вбудованою WordPress функцією the_posts_pagination(). У потрібному місці необхідно вставити наступний код (як правило це файли index.php, category.phpі їм подібні):

Результатом роботи функції the_posts_pagination() буде приблизно такий HTML код:

Видаляємо заголовок H2 з пагінації

Відразу впадає у вічі H2-заголовок «Навігація по записам». Якому здебільшого не місце на сайті. Щоб його позбутися додамо наступний код у файл functions.php:

/* Видаляємо H2 з пагінації */ add_filter("navigation_markup_template", "my_navigation_template", 10, 2); function my_navigation_template($template, $class)( return "

"; }

Налаштовуємо сторінки пагінації

За промовчанням the_posts_pagination() відображає першу та останню сторінку, а також по одній сторінці навколо поточної. Всі інші замінюються крапкою. Цю поведінку можна змінити за допомогою аргументів:

  • show_all – показувати всі сторінки
  • end_size - кількість сторінок на початку та наприкінці списку
  • mid_size - кількість сторінок зліва та праворуч від поточної сторінки

Наприклад так:

2, "end_size" => 2,)); ?>

Стилі пагінації CSS

Page-numbers ( padding: 1% 2%; box-shadow: 0 0 10px #ccc; margin: 0 1% 0 0; background: #fff; border-radius: 3px; )

Виглядати посилання на сторінки пагінації за таких стилів будуть наступним чином:

…як це зробити? …загалом, не складно. І коли завдання полягає саме в забороні відображення тієї чи іншої категорії, то це блаженство ми за кілька хвилин обробимо.

Однак є заковика, -

…вирішуючи завдання заборони показу рубрики у віджеті, виникає похмура зв'язка з нею, а саме питання: як налаштувати показ категорій у потрібному та логічному порядку, але не хаотично!?


…слід міцно поміркувати. …і чітко визначитися зі своїми потребами. Але про все по порядку: а у фіналі дам досконале та геніальне рішення фільтрації категорій…

використовуючи легкість коду У реалізації подібних заборон/дозволів потрібного/не потрібного контенту блогу варто мати на увазі деяку перспективу розвитку вашого сайту, щоб не зіткнутися з іншим супутнім «сюрпризом» бути чи не бутиперебудові блогу в майбутньому - або в редагуванні файлів, або в заміні плагінів.

Адже завжди існує альтернатива: чи використовувати плагін (їх кількість «…як махорки…» не завжди гуд), чи прописати код у файл функцій – f unctions.php (непогано, але не вирішує завдання однозначно)!?

Визначайтесь!

Я ж показав можливу технедостатність необдуманого початку ведення блогу, тепер же пропоную можливі способи логічного рішення:

Якщо вам всього потрібно приховати якусь певну категорію вордпресівського віджету, який за замовчуванням присутній в утробі будь-якого нового сайту, то це просто.

Відкриваємо файл про який говорилося functions.php і кудись у його фінал розкодування) перед тегом?> прописуємо ось цей лихий кодований-фільтр.

//КІД ВИКЛЮЧЕННЯ РУБРИК start function ext_widget_categories($args)( $exclude = "39"; $args["exclude"] = $exclude; return $args; ) add_filter("widget_categories_args","ext_wid //КІД ВИКЛЮЧЕННЯ РУБРИК end

Цифра 39 вказує ID рубрики, який фільтрується, як марний ринок на сайті.

Можна вказувати кілька, через кому.

…Все, одне із питань закрите.

як приховати показ підрубрики у віджеті

Рішення у варіанті коду трохи нижче, який забороняє/дозволяє виведення імен певних підрубрик (дочірніх записів блогу).

//код виведення єдино пiдрубрик рубрики з вказаним ID=7 start function ext_widget_categories($args)( $args["child_of"] = 7; return $args; ) add_filter("widget_categories_args","ext_widget_catego //код виведення єдино підрубрик рубрики із зазначеним ID=7 end

Аргументацію цих кодів можна об'єднати.

Ну ось!! ми досягли повного контролю управлінням ПОКАЗА у віджеті «Рубрики» всіх ваших категорій.

…але — проте, кажемо ми! Часто буває так, що через деякий час, відкривши сторінку сайту, з гіркотою виявляється ще один недолік: рубрики в віджеті сайдбара розташовані не в логічному порядку (безладно) - вибагливість професіоналізму, що знається.

У цьому випадку також потрібно вибирати з кількох симпатичних варіантів:

змотаємось у депозиторій плагінів Вордпрес - шлях: консоль/плагіни/додати плагін/…встановити/активувати… таке диво Category Order and Taxonomy Terms Order.

Технічний переклад цитати до плагіна:
Замовити Категорії та всі терміни таксономії (користувацькі ієрархічно) та дочірні терміни, використовуючи перетягування Сортований Javascript можливості.
Плагін не має плутаних налаштувань: всього потрібно навести курсор на «записи» зліва в консолі, і розглянути пункт Taxonomy Order …

Все парадоксально просто: шляхом перетягування дощечок налаштовуйте оптимальну для себе послідовність відображення імен рубрик.

До мінусів «плагінного» способу належить таке: не можна заборонити показ певних категорій.

Отже, доведеться використовувати код запропонований вище, або ж плагін показаний нижче.

Забороняємо виведення деяких рубрик за допомогою плагіна NS Category Widget

…заскочимо знову ж таки в депозиторій WordPress і скачаємо плаг NS Category Widget - цей «ривок» нам подарує до наявного віджету «Рубрики» ще один, але більш витонченого настрою: тобто звичайний віджет слід видалити або сховати в «неактивні», а налаштувати цей просунутий варіант керування контентом: його показом/забороною.

Переходьте в його налаштування і задавайте свої правила: по id категорії, значущості ієрархій тощо регулювання… Все просто!

Плагін дозволяє використовувати безліч одиниць віджетів на потрібних рівнях сторінок, до яких і налаштування індивідуальні на відміну від стандартного «рубрикатора», яких виведи хоч десяток, але налаштування «верхнього» коду поширяться на кожен: це і є мінус здатності поєднати стандартний віджет «рубрики» і описаний код на самому початку статті… І коли ви маєте на увазі користуватися кількома варіантами віджетів рубрик, то все-таки варто завантажити плагін NS Category Widget.

АЛЕ! у просунутому немає простішого і тоншого порядку сортування категорій - це його мінус. Така плутанина!

Рішення за вами…

Якщо ви щось побачили в статті для себе корисне, здорово!

Здрастуйте, хлопці!

Сьогодні буде стаття технічної тематики, яка покаже, як виключити записи із головної сторінки сайту під керуванням WordPress.

Також дізнаєтесь, як виключити цілі категорії, а не лише конкретні записи. Покажу безліч варіантів як з плагінами, так і без них. Загалом, як завжди.

У яких випадках застосовувати?

Потреба виключити деякі записи, тобто їх анонси, з головної сторінки здебільшого існує на персональних блогах, коли, крім великих якісних статей, для постійної аудиторії варто ще наповнювати ресурс простими SEO оптимізованими статтями.

Такі статті навряд чи будуть корисні для засідателів блогу, оскільки вони вже все це знають. Щоб не засмічувати головну сторінку непотрібними анонсами, доцільніше не показуватиме їх. Водночас, їх варто додавати на сайт, щоб залучати нову аудиторію на ресурс з пошукових систем. Відображення їх також потрібно, але робити це варто на сторінках рубрик та архівів, щоб новачки їх могли знайти, скориставшись навігацією по розділах сайту.

Наприклад, цю статтю ви не знайдете на головній сторінці мого блогу на жодній їхній сторінці пагінації (посторінкової навігації). В той же час, анонс статті видно у рубриці "Корисне" та на сторінці карти сайту "Всі статті".

Без плагіна

Спосіб без плагіна завжди кращий, але в даному випадку він буде не в пріоритеті, тому що для виключення якоїсь статті доведеться щоразу вносити правки у файл шаблону, який у вас встановлений. Але все ж таки я покажу кілька різних варіант реалізації такого рішення, тому що цілком реально, що вас це влаштує.

Нижче я даватиму різні шматки коду, які варто розміщувати у файлі шаблону functions.php.

Виняток конкретних записів з ID

У такому варіанті немає потреби приховувати цілі рубрики з видимості на головній, як це роблять багато за допомогою різних плагінів. Варто лише у коді додавати ID потрібних записів.

function exclude_post($query) ( if ($query->is_home) ($query->

if ($query -> is_home )

( $query -> // id записи (поста)

return $query; )

У рядку 3 числа 1 та 2 є ID записами, які не відображатимуться на домашній сторінці. Прописувати потрібно через кому.

ID запису, сторінки та категорії дізнаєтеся в адресному рядку браузера під час перегляду через редактор.

Наступний варіант дозволить виключити запис із RSS стрічки.

Виняток із RSS стрічки

Такий код дозволить виключити анонси з стрічки новин і не надсилати їх по базі e-mail, якщо використовуєте сервіс підписки та анонсування за допомогою Feedburner.

function exclude_post($query) ( if ($query->is_feed) ($query->set("post__not_in", array(1, 2));) // id запису (поста) return $query; ) add_filter(" pre_get_posts", "exclude_post");

function exclude_post ($query) (

if ($query -> is_feed )

( $query -> set ("post__not_in" , array (1 , 2 ) ) ; ) // id записи (поста)

return $query; )

add_filter ("pre_get_posts", "exclude_post");

Додавання записів у разі і в інших відбувається аналогічно.

Виняток із рубрик та архівів

Для виключення записів зі сторінок рубрик варто використовувати наступний код.

function exclude_post($query) ( if ($query->is_category) ($query->set("post__not_in", array(1, 2));) // id запису (поста) return $query; ) add_filter(" pre_get_posts", "exclude_post");

function exclude_post ($query) (

if ($query -> is_category )

( $query -> set ("post__not_in" , array (1 , 2 ) ) ; ) // id записи (поста)

return $query; )

add_filter ("pre_get_posts", "exclude_post");

Цей код можна модифікувати та застосувати виняток із архівів. Потрібно у 2-й будівництві замінити функцію is_category на is_archive.

Виняток із сторінки пошуку

Такий варіант також може бути потрібним, якщо якісь записи не варто показувати відвідувачам, коли вони користуються пошуком по сайту. Наприклад, це можуть бути різні статті новин, які не несуть контенту за тематикою сайту.

function exclude_post($query) ( if ($query->is_search) ($query->set("post__not_in", array(1, 2));) // id запису (поста) return $query; ) add_filter(" pre_get_posts", "exclude_post");

function exclude_post ($query) (

if ($query -> is_search )

( $query -> set ("post__not_in" , array (1 , 2 ) ) ; ) // id записи (поста)

return $query; )

add_filter ("pre_get_posts", "exclude_post");

Комбінування кількох варіантів

Можна поєднати всі вищенаведені варіанти та виключити записи зі всіх типів сторінок відразу або вибірково на необхідні.

Якщо добре подивитися на всі коди, то у 2й будівництві можна побачити умову, в якій заданий параметр типів сторінок для відключення відображення в них анонсів записів:

  • is_search
  • is_category
  • is_feed
  • is_home

Можна комбінувати всі варіанти і виключити записи звідусіль або на деяких сторінках. Наприклад, для винятків із рубрик та головної варто розмістити у файлі functions.php наступний код.

function exclude_post($query) ( if ($query->is_category || ($query->is_home)) ($query->set("post__not_in", array(1, 2));) // id записи (поста ) return $query;) add_filter("pre_get_posts","exclude_post");

function exclude_post ($query) (

if ($query -> is_category || ($query -> is_home ) )

( $query -> set ("post__not_in" , array (1 , 2 ) ) ; ) // id записи (поста)

return $query; )

add_filter ("pre_get_posts", "exclude_post");

У 2-му рядку з умовою (if - якщо) прописані параметри для категорій (is_category) або головного (is_home).

Зауважу, що кожен наступний параметр прописується всередині попереднього через 2 вертикальні риси і знаходиться у своїх дужках. Тобто, подивившись на попередній код, побачите, що друга умова для головної сторінки укладена у свої дужки і знаходиться всередині загальних дужок, які обертають першу умову для категорій.

Якщо варто додати якесь 3е умова, наприклад для сторінок архівів, то варто його додати всередині дужок з умовою для головної (is_home) і прописати через 2 вертикальні риси. Насправді це виглядає так.

function exclude_post($query) ( if ($query->is_category || ($query->is_home || ($query->is_archive))) ($query->set("post__not_in", array(1, 2)) );) // id записи (поста) return $query; ) add_filter("pre_get_posts","exclude_post");

function exclude_post ($query) (

if ($query -> is_category || ($query -> is_home || ($query -> is_archive ) ) )

( $query -> set ("post__not_in" , array (1 , 2 ) ) ; ) // id записи (поста)

return $query; )

add_filter ("pre_get_posts", "exclude_post");

Таким же принципом додавайте для виключення інші типи сторінок.

Наступним варіантом виключення записів є виключення цілих рубрик (категорій).

Виняток цілих категорій

Це дуже зручно для ледарів, коли можна просто створити якусь категорію і додавати туди всі записи, що не потребують відображення певних типів сторінок.

Структура коду практично аналогічна. У ньому лише змінюється параметр, який задає виключення посту чи категорії. У раніше розглянутих випадках в останньому рядку було встановлено параметр виключення запису exclude_post. У новому коді його варто замінити exclude_cat.

function exclude_cat($query) ( if ($query->is_home) ($query->set("cat","-1, -2, -3");) // id категорії return $query; ) add_filter( "pre_get_posts", "exclude_cat");

function exclude_cat ($query) (

if ($query -> is_home )

($query -> set ("cat", "-1, -2, -3");) // id категорії

return $query; )

add_filter ("pre_get_posts", "exclude_cat");

Як бачимо, останній рядок зазнав змін і третій рядок, де змінено параметр, що зчитує ID рубрики. ID в даному випадку прописується через рису, але так само через кому.

Принцип побудови умови для типів сторінок аналогічний розглянутим варіантам раніше, де показував з прикладу виключення конкретних постів. Варто змінювати 2-й рядок, додаєте необхідні параметри для категорій, пошуку, архівів або RSS-стрічки.

Отже, методи без плагіна ми розглянули. Є ще варіант виключення записів про теги, але сьогодні теги вже не дуже актуальні на 99% ресурсів. Якщо вам потрібна така інформація, то напишіть у коментарях про це, будь ласка. Відразу все додам.

Плагіни

p align="justify"> Плагіни є більш гнучким рішенням в даному питанні, так як за винятком конкретних записів немає потреби щоразу редагувати файл шаблону. Варто бачиш ставити чек-бокс у редакторі потрібних записів при їх публікації або після.

Якщо ж варто виключити спеціальну рубрику, створену під статті, що не вимагають відображення, то краще скористатися одним із наданих кодів.

Плагін Simply Exclude

Завантажити плагін можна як через консоль WordPress за допомогою пошуку, так і з офіційного сайту WordPress.

Після активації він уже працюватиме і можна не налаштовувати його. Але все ж таки рекомендую зробити деякі зміни, щоб робота з його функціями була більш приємною.

Після встановлення та активації відразу переходимо в його налаштування.

Спочатку в налаштуваннях плагіна все виставлено так, що при активації чек-боксу (розглянемо трохи нижче) потрібні сторінки (записи, категорії, сторінки) будуть позначені як "дозволені для відображення". Таким чином, для кожного типу сторінок потрібно буде проставити всі чек-бокси, щоб все відображалося.

Логічніше буде виставити такий варіант, коли активувавши чек-бокс (наприклад, для головної сторінки) він позначатиме статтю або щось інше, як заборонене для відображення.

У налаштуваннях є 3 вкладки, які мають налаштувати параметри для різних типів сторінок:

  • Taxonomies (таксономії) - налаштування для функціонування плагіна в розділах адмін-панелі WordPress: рубрики та мітки;
  • Post types (типи постів) - для типів постів: статті та сторінки;
  • Users – налаштування для користувачів.

Зараз я дам скріншот налаштувань першої вкладки (таксономії) та поясню параметри, які варто виставити.

  • У першому блоці налаштувань "Active" необхідно виставити чек-бокс "Active", щоб плагін додавав потрібні чек-бокси для відключення відображення в рубрики чи будь-які інші типи сторінок;
  • У другому блоці ставимо всі параметри напроти варіанта "Exclude". Він означає, що при включеному чек-боксі в редакторі кожного типу сторінок вона буде прихована від відображення і нові статті будуть за промовчанням відкриті для показу. Якщо встановити параметр "Include only", то поставивши чек-бокс, записи будуть відкриті для показу і нові статті за замовчуванням будуть приховані. Якщо вибрано другий варіант "Include only", то після встановлення плагіна всі записи будуть приховані та потрібно буде виставити варіант "Exclude";
  • У блоці "Show/Hide" ставимо параметр "Show", щоб потрібні чек-бокси відображалися у кожному типі сторінок для можливості відключення чи дозволу відображення.

Такі ж параметри варто проставити і на інших 2-х вкладках налаштувань плагіна Simply Exclude.

Наприклад, ось скріншот вкладки "Post types".

Звичайно ж, можна вимкнути функціонування деяких функцій, наприклад, на першій вкладці можна деактивувати роботу плагіна для рубрик, якщо ми не збираємося виключати всі записи цілої категорії.

Тепер із приводу роботи самого плагіна. Коли проставили потрібні параметри, можна переходити в редактор кожного типу записів і ставити чек-бокси навпроти сторінок, де потрібно виключити їх відображення.

Наприклад, щоб проставити налаштування для записів, можна перейти в редактор необхідної статті або через всі статті. І там, і там будуть потрібні чек-бокси. У редакторі у правій колонці буде блок "Simply Exclude", що містить 4 чек-бокси для приховування запису та сторінок:

  • Archives - категорій та архівів;
  • Feeds – RSS стрічки;
  • Front/Home – головною;
  • Searches – пошуку.

Проставивши потрібний чек-бокс, приховаєте запис із певного типу сторінок.

У пункті адмін-панелі WordPress "Всі записи" навпроти кожного матеріалу в новій колонці з назвою "Simply Exclude show" також будуть ці 4 чек-бокси. Те саме стосується і рубрик. Буде додано нову колонку з усіма чек-боксами.


Ось і все по цьому плагіну. Встановивши його, ви можете дуже швидко і гнучко змінювати параметри відображення конкретних записів або цілих рубрик без втручання у файли шаблону.

Плагін Exclude Categories

Плагін призначений тільки для приховання цілої рубрики з головної сторінки та RSS-стрічки. Так як цей варіант не вимагає особливої ​​гнучкості (створив один раз рубрику і додає статті), то я рекомендую реалізувати виключення цілої рубрики кодом (див. пункт 2).

Завантажити плагін можете на кнопці нижче.

Після його встановлення перейдіть до налаштувань (Налаштування - Exclude Category) і виберіть необхідну рубрику для виключення її з головної сторінки.

Виняток всіх записів якоїсь рубрики - найпоширеніший варіант. Але я бачу в ньому недолік, тому що на сайт доводиться дуже багато публікувати статті для залучення пошукового трафіку і всі вони будуть з різних питань однієї теми.

А пхати різні матеріали в одну рубрику – не дуже добре.

Такий варіант також часто використовується під час активного продажу посилань на сайті. Власник створює рубрику і всі статті із продажними посиланнями публікує до нього. І це також не дуже добре, тому що зараз веб-майстри вимагають розміщення посилання в одному з основних розділів сайту, щоб воно було хоча б трохи клікабельним і мало ефект при просуванні.

Все, хлопці, на цій ноті закінчую цей докладний мануал, який вам повинен стати в нагоді, якщо ви прийшли за адресою на цю статтю. Сподіваюся, що все у вас буде чудово.

Бажаю прекрасного настрою та чудового вам дня. До зустрічі.

З повагою, Костянтине Хмелеве!

Сьогодні стаття про те, як можна вручну, без використання плагінів виключити рубрики з головної сторінки сайту на Вордпресі.

Існує кілька способів для виключення показів записів із певної рубрики на головній сторінці вашого сайту-блогу. Один з найпростіших, на мій погляд, способів – це додати невеликий шматочок коду у файл functions.php. Цей шматочок коду буде своєрідним фільтром, який позбавить нас необхідності змінювати інші файли теми. За допомогою цього методу не потрібно витрачати час на переробку циклу виведення записів у файлі index.phpчерез query_posts.

Отже, розглянемо з прикладу:

1) Припустимо, нам потрібно видалити записи з рубрики, ідентифікаційний номер якої дорівнює 4, тобто ID=4. Іншими словами, нам потрібно виключити показ записів рубрики, ID якої дорівнює 4, з головної сторінки.

2) Із завданнями визначилися, приступаємо до реалізації – для цього додамо до файлу functions.phpнаступний шматочок коду:

Function removeFromHome($query) ( if ($query->is_home) ($query->

Зберігаємо нами змінений файл functions.phpі бачимо, що на головній сторінці немає записів з рубрики ID=4.

З погляду логіки Вордпрес, головна сторінка — це також будь-яка інша сторінка, яка утворена посторінковою навігацією. Таким чином, пости з виключеної рубрики ID=4 ми не побачимо на сторінці 2, 3 або 4 і так далі.

Якщо такий варіант не підходить, то можна трохи змінити наведений вище код на такий:

Function removeFromHome($query) ( if ($query->is_home && !(is_paged())) ($query->set("cat","-5");) return $query; ) add_filter("pre_get_posts" ,"RemoveFromHome");

Зберігаємо і тепер на кожній сторінці, крім головної, записи з рубрики ID=4 будуть нормально відображатися.

Виключення записів рубрики з результатів пошуку

Якщо у вас виникла необхідність виключення записів рубрики зі сторінки результатів пошуку, то потрібно лише поміняти is_homeна is_search.

Для виключення записів кількох рубрик потрібно перерахувати ID цих рубрик через кому у зазначених вище кодах. Допустимо, потрібно виключити рубрики, ID яких 3,7,8,9. Тоді в коді будуть такі зміни:

Function removeFromFeed($query) ( if ($query->is_feed) ($query->set("cat","-3, -7, -8, -9");) return $query; ) add_filter(" pre_get_posts","removeFromFeed");

Вилучення записів рубрики з RSS стрічки

Як же вчинити, якщо потрібно виключити записи певної рубрики з RSS-стрічки? А вчинити можна дуже просто – використовуємо код нижче:

Function removeFromFeed($query) ( if ($query->is_feed) ($query->set("cat","-4");) return $query; ) add_filter("pre_get_posts","removeFromFeed");

Зберігаємо зміни та бачимо, що у стрічці більше немає записів із непотрібної нам рубрики.

Виключення записів рубрики з RSS стрічки та головної сторінки

Якщо раптом вам потрібно зробити так, щоб на головній сторінці та у стрічці не відображалися записи з певної рубрики, то потрібно використовувати наступний код:

Function removeCat($query) ( if ($query->is_feed || ($query->is_home && !(is_paged()))) ($query->set("cat","-3,-7") ;) return $query;) add_filter("pre_get_posts","removeCat");

У цьому випадку записи рубрик, ID яких дорівнює 3, не будуть відображатися на головній сторінці та в RSS стрічці, але будуть відображатися при відкритті інших сторінок.

Зміни у файл functions.phpможна вносити у будь-яке місце, але не торкаючись коду іншої функції. Найпростіше дописати код в кінці файлу.

Відомо, що пагінація породжує дублювання сторінок. Це, у свою чергу, може призвести до того, що такий сайт може “просісти” у пошуковій видачі. У цьому випадку єдиним виходом із цієї ситуації є зробити так, щоб пошукові роботи не "побачили" того, що десь на сайті є розбиття на сторінки.

Як закрити від індексації пагінацію?

Одним із методів вирішення завдання є додавання директиви noindex на сторінках пагінації. У результаті вони мають виглядати так:

noindex – спеціальна директива, що служить позначення посилань, не бажаних для індексування пошуковими системами. Натикаючись на неї, пошуковий робот відразу зрозуміє, що цю сторінку не потрібно враховувати. Він її просто пропустить, чому вона не буде занесена до списку тих, які слід додати до індексу.

З усіх способів вирішення завдання найбільш коректним і легким для WordPress-користувача є плагін, який у два кліки сховає від пошукових систем пагінацію. Для цього достатньо перейти до адмін-розділу Clearfy Proпотім на вкладці SEOзадіяти опцію Noindex для пагінації.

Крім плагіна Clearfy Pro, Існують і інші, менш зручні, способи закрити від роботів пагінацію. Розглянемо найпопулярніші з них.

Спосіб 1. Файл functions.php

Цей спосіб передбачає внесення спеціального PHP-коду до файлу Вашої активної теми.

Якщо Ви не знаєте, як редагувати functions.php, то в цьому випадку Вам допоможе плагін.

Отже, у його кінець необхідно додати такі рядки:

Function wpschool_noindex_pagination() ( if(is_paged()) echo " "; ); add_action("wp_head", "wpschool_noindex_pagination");

В результаті роботи коду на сторінках пагінації (починаючи з другої) у розділі , буде присутній вказаний вище рядок:

Спосіб 2. Файл robots.txt

Додати noindex для сторінок пагінації можна також через спеціальний файл robots.txt, який знаходиться в кореневому каталозі Вашого сайту. У ньому потрібно дописати наступний рядок:

Disallow: */page/

Цей спосіб аналогічний попередньому і дає той самий результат.