Все в купі - Апдейт PR, спам атака, як прибрати рубрику з головною в wp. Як прибрати (відключити) коментарі у WordPress Як виключити рубрики з головної сторінки wordpress

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

Довгоочікуваний апдейт PageRank від Гугла

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

Найцікавіше, є в мене інший сайт, молодий і майже порожній - там лише 20 статей в індексі. Трафік у районі 20-30 осіб на добу, беків немає, коментарів немає. Коротше я його просуванням не займався взагалі, тільки наповнюю потихеньку. Так ось він отримав PR 2, де логіка я досі зрозуміти не можу.

Вихваляйтеся, у кого ще PR додався (зменшився) 🙂

сайт піддався спаму атаці

Останній тиждень на мій блог йде масована спам атака – по 700-800 спам коментарів щодня приходить із різних ip. Таке в мене було всього одного разу рік підлогу тому і швидко закінчилося, але зараз щось затягнулося.

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

Пишу ще один рекомендований огляд

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

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

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

Тімур вирішив продати свій блог wpget.ru. Тиц 30 PR 2 трафік 200 чол/доба в середньому, 300+ статей в індексі, сайт заробляє на продажі посилань. Зараз ставка на телдері всього 12 тисяч, це дуже дешево за такий сайт насправді, були б вільні гроші сам би купив)

Шкода звичайно що продає, але якщо набридло і ніякого задоволення блогерство не приносить то воно того не варто, краще і справді знайти заняття цікавіше для себе.

Як прибрати рубрику або запис з головної сторінки блогу wordpress та RSS стрічки

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

Власне ось сам код:

function hidecategory($query) (
if ($query->is_feed || ($query->is_home && !(is_paged())))
($query->set("cat","-24");)
return $query; )
add_filter("pre_get_posts","hidecategory");

24 це моя цифра, ви повинні будете вставити свою.

Вставляється цей код у functions.php. Суть його наступна – ви припустимо хочете приховати якусь рубрику, для цього дізнаєтесь її номер ID. Дізнатися його можна при редагуванні рубрики, ID буде написано в адресному рядкубраузер. Наприклад для моєї рубрики «Новини сайту» ID буде 24

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

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

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

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

Це завдання можна вирішити декількома способами:

  • За допомогою внесення невеликого фрагмента коду файл functions.php (поговоримо про нього);
  • За допомогою складнішого перепрограмування коду шаблону (такі мануали не пишу, це формат мого блога);
  • За допомогою плагіна "Simply Exclude" (про нього я розповім наприкінці)

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


2. А тепер кожен код по порядку ( як виключити записи):

Код виключення записів (постів) із головної сторінки сайту за ID


if ($query->is_home)
($query->
return $query; )

Даний варіант коду допоможе вам прибрати будь-який запис з головної сторінки вашого блогу, незалежно від того, в якій категорії вона знаходиться, тобто він виключає не всю категорію, а лише цей конкретний пост!

Код виключення записів (постів) із rss фіду WordPress блогу за ID

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

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

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

Існують і спеціальні плагіни, які здатні затримувати на певний час публікацію статті у фіді! У будь-якому випадку використовувати цю функцію чи ні вирішувати вам. Мені якось знадобилося написати невеликий пост для вузького кола людей, я виключив його з головної та з фіда, потім і зовсім зняв з публікації та вилучив. В принципі було завдання і я його вирішив у такий спосіб!

Копіюєте код, вставляєте в самий верх файлу functions.php, вказуєте id поста і готове!

Як не виводити записи на сторінках архіву або категорії ID

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

Для видалення постів із категорій, необхідно лише поміняти is_archive на is_category

Як виключити записи (пости) з результатів пошуку по блогу з ID

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

Як це буде працювати, наприклад, з пошуком від Яндекса або Google пошуком я не перевіряв. Пізніше я працюю над цим і зроблю невеликий апдейт посту, або напишу в коментах. Я знаю тільки що добре буде працювати зі стандартною функцією пошуку двигуна WordPress. У вас у всіх віджет такий є - "Пошук по Блогу"!

Як виключити пост з головною, rss фіда та результатів пошуку відразу по ID

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

Ну ось, чудово! Щойно ще раз усе перевірив, кожен код чудово виконує свою роботу. Останній варіант коду виключає будь-який пост, ID якого ви підставите, виключає з головної сторінки вашого блогу (стрічки анонсів статей), rss стрічки (фіда) та результатів пошуку по блогу!

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

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

Вам за бажанням, потрібно буде тільки змінювати наступні змінні в другому рядку, що в дужках - is_feed is_home is_search is_archive is_category

Якщо щось не зрозуміло, питайте!

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

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

3. Наступний цикл варіантів коду (виключення категорій):

Варіанти виключення категорій з головної, фіда та пошуку за ID

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

Як виключити категорію з головної сторінки Блога WordPress


if ($query->is_home)
($query->
return $query; )

Як виключити категорію з RSS стрічки (фіда) Блога WordPress

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

Як не показувати категорію в архівах статей блогу

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

Як виключити категорію з результатів пошуку за Блогом WordPress

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

Як виключити категорію з rss стрічки, головної сторінки та результатів пошуку

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

Як виключити категорію з головною та фіда Блога WordPress

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

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

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

Якщо ви приховуватимете їх вручну, вам необхідно лише перейти на вкладку «Всі записи» в консолі блогу і по черзі наводити на них курсором, дивитися id і вставляти їх у код. Кілька тисяч айдішників звичайно помітно збільшать код, але навіть такий він буде набагато простіше ніж код всього плагіна, який ще й використовує Базу даних.

4. Заключна частина нашого практичного керівництва (виняток за тегом, виключення плагіном):

Як виключити записи (видалити) з певним тегом з головної, фіда (rss стрічки) та результатів пошуку за його ID

Для цього ми будемо використовувати наступний код:

function exclude_post($query) (
if ($query->is_home) (
$tags = array("3", "7", "13"); // id тегів
$query->set("tag_not_in", $tags);)
return $query;)
add_filter("pre_get_posts","exclude_post");

Такий зразок виключить статтю звідусіль.

function exclude_post($query) (
if ($query->is_feed || ($query->is_home || ($query->is_search)))
($tags = array("3", "7", "13"); // id тегів
$query->set("tag_not_in", $tags);)
return $query;)
add_filter("pre_get_posts","exclude_post");

Для того щоб виключати тільки з фіда або тільки з результатів пошуку, в перший варіант коду, в другому рядку, підставляйте вже знайомі вам значення is_feed is_home is_search is_archive is_category

Ще один корисний момент! Ви можете додати кілька різних варіантів коду у файл functions.php та закоментувати ті, якими користуватися не збираєтесь.

Розглянемо з прикладу:

Виділяємо потрібний фрагмент коду → тиснемо праву кнопку мишки та вибираємо → «Коментувати блок» → /*код*/ (виконано у текстовому редакторі PHP Expert Editor 4.3)

На прикладі програми Notepad plus plus:

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

Добрий день друзі!

Якщо у вас виникла проблема, як відключити коментарі WordPress на вашому веб-сайті, то ви потрапили за адресою.

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

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

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

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

Відключаємо коментування нових статей

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

Робиться все просто через адмін-панель WordPress. Спочатку заходимо до пункту "Налаштування - обговорення" та забороняємо залишати коментарі до нових статей.

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

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

Відключення коментарів для всіх існуючих записів

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

  1. Заходимо до списку всіх записів через пункт "Записи – всі записи";
  2. Виділяємо всі записи чек-боксом;
  3. Вибираємо зміну всіх записів;
  4. Забороняємо коментарі та оновлюємо налаштування.

Скріншот клікабельний. Можете подивитися його у повному розмірі.

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

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


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

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

Робиться все аналогічно, як і зі статтями, лише переходимо в пункт "Сторінки - всі сторінки".

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

Розглянемо як відключати коментарі до певних статей.

Прибираємо коментарі у певних записах та сторінках

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

Зробити це можна:

  • через перелік всіх записів;
  • через редактор запису.

Через список всіх записів потрібно зайти у властивості статті та прибрати чек-бокс з пункту "Дозволити коментарі".

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


Знизу поля для введення тексту має бути блок з такою самою назвою, де можна забрати чек-бокс і заборонити відвідувачам спілкуватися на сайті.


Те саме стосується і сторінок.

Для закріплення невелике відео за вищеописаною інформацією.

Залишився останній і, мабуть, найскладніший крок.

Забираємо форму коментарів із сайту

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

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

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

Для початку я завжди рекомендую піти у файли сторінок (page.php) та одиночного запису (single.php) та подивитися на наявність у них коду, що виводить форму. Якщо така є, то просто її видалити і проблема вирішена. У моєму шаблоні код виводиться повністю з усіма полями (введення імені, e-mail, сайту та повідомлення).

Цілком можливо, що у вас така сама структура побудови шаблону. Тоді ви йдете в ці файли і шукаєте приблизно такий код як на скріншоті вище (клікабельний). Код завжди буде схожий і в ньому буде велика наявність слів "comment".

Якщо він є, то знаходите його початок і кінець і видаляєте до чортової...

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

Код форми знаходиться десь в іншому файлі (наприклад, comments.php, comments-template.php). Але цей код все одно виводиться в одиночний запис та сторінки. У шаблоні Twentyfourteen це реалізовано в такий спосіб.


У цьому випадку код також має наявність слів "Comment". Можна його видалити, але в цьому немає потреби, оскільки цей код не виводить форму при відключеному обговоренні.

Може бути така ситуація, що у файлі одиночного запису (single.php) та сторінки (page.php) ви не знайдете жодного схожого коду як у першому, так і в другому випадку. Тоді форма виводиться разом із контентом. Це трохи ускладнює завдання, тому що в деяких шаблонах контент може виводитись дуже складними функціями. У цьому випадку я пропоную піти в файл comments.php, comments-template.php (або подібні до них) і шукати форму там.

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

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

На цьому все, друзі. Доки.

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