Як додати свій текстовий блок перед формою коментарів у WordPress

Блок коментування у сайтах на системі CMS WordPress можна віднести до одних із найважливіших частин ресурсу. Коментарі (або ж відгуки) допомагають створити зворотній зв’язок із вашими читачами, та досягти більшого залучення. Тож, інколи буває необхідно розширити цей дефолтний функціонал та, наприклад, додати якийсь свій текст, коротке повідомлення, зауваження, тощо. І в сьогоднішньому практичному уроці ми розглянемо як це можна легко зробити.

 

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

Навіть якщо ви не знайомі з PHP, чи ще не редагували раніше файли шаблону WordPress, — це не проблема і не повинно викликати труднощів. Вам лише потрібен доступ до файлів сайту на сервері (наприклад, через FTP-клієнт, або ж з допомогою SSH доступу, чи навіть через панель керування хостингом, типу cPanel, DirectAdmin, ISPConfig, тощо). А редагувати вам потрібно файли у активній темі в папці /wp-content/.

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

За відображення та функціонал розділу коментування у сайтах на двигуні ВордПрес відповідає файл теми comments.php. Відповідно, будемо вносити зміни саме до цього файлу (по можливості редагуйте файли в дочірній темі).

Код всередині цього файлу буде приблизно наступним (відмінності можуть бути і залежать від використовуваної теми):

<?php
/**
* The template for displaying comments
*/// ...
?>
<div id="comments" class="comments-area">
  <?php
  // перевірка на наявність коментів
  if (have_comments()) { ?>
    <h3 class="comments-title">Блок коментарів</h3>
    <?php
    // ...
  }
  ?>
  <?php // підключення шаблону для форми коментування ?>
  <?php comment_form(); ?>
</div>

 

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

У першому випадку це може бути щось типу цього (додаємо простий текстовий абзац):

<?php
// ...
?>
<div id="comments" class="comments-area">
  <?php
  // ...
  ?>
  <p class="custom-comments-text">Кастомний текстовий блок</p>
  <?php
  // ...
  ?>
</div>

 

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

<?php
// ...
?>
<div id="comments" class="comments-area">
  <?php
  // …
  // додаємо/змінюємо примітку перед формою коментування
  add_filter('comment_form_defaults', 'sebweo_custom_text_before_commentform');
  function sebweo_custom_text_before_commentform( $defaults )
  {
    $defaults['comment_notes_before'] = '<p class="custom-comments-text">Кастомний текстовий блок</p>';
    return $defaults;
  }
  // ...
</div>

 

Цим ми змінимо дефолтне значення примітки (у якій, в основному, говориться про позначки для обов’язкових полів). Після цього форма коментарів буде виглядати приблизно так:

 

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

В даному прикладі ми з допомогою фільтра змінили дефолтний текст примітки. Для цього ми внесли зміни до змінної масиву полів форми 'comment_notes_before'. Подібним чином ви можете модифікувати інші значення масиву, наприклад:

  • Поля форми: 'author', 'email', 'cookies', 'comment_field'
  • Текст-примітка після форми: 'comment_notes_after'
  • ID форми: 'id_form'
  • Текст заголовку перед формою: 'title_reply'
  • Текст на кнопці надсилання форми з коментарем: 'label_submit'

 

 

От бачите, — це і справді було легко! Лише кілька рядків коду і ваші читачі, безсумнівно, побачать вашу важливу нотатку. Це може бути кастомне повідомлення про обов’язкові поля форми, якесь важливе оголошення, вказівка на політику конфіденційності, тощо.

 

Recent Posts

Я знайшов ідеальний подарунок для сестри на 8 березня: історія мого пошуку

Привіт, мене звати Олег, і я хочу поділитися з вами своєю історією про те, як…

2 дні ago

Стильні квадратні годинники для чоловіків на кожен день

Корпус у вигляді квадрата – це не лише данина класиці, а й сучасний акцент у…

3 дні ago

Білл Гейтс

Люди завжди переоцінюють зміни за тиждень, і недооцінюють можливі досягнення за рік Білл Гейтс  

5 днів ago

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

Однією із чудових особливостей платформи WordPress є внутрішній пошук. Проте, функція пошуку в CMS ВордПрес…

1 тиждень ago

Основні завдання болотного екскаватора: де і для чого він використовується

Болотний екскаватор – це спеціалізована техніка, призначена для роботи в умовах підвищеної вологості, на болотистих…

2 тижні ago

Чому пластинчасті теплообмінники є оптимальним вибором для промисловості

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

2 тижні ago