Създаване на нови полета за коментари в WordPress

Кой е най-добрият начин за създаване на нови полета?

Отиваме в секцията „Добавки“ на административния панел и виждаме нашия плъгин:

Вече може да се активира, но в момента е "празен" и все още не изпълнява никакви функции.

Кодът работи чудесно, но ако не е необходимо да променяте външния вид на полетата по подразбиране, тогава той може да бъде опростен, а именно, добавете само вашето собствено поле:

Създайте полета за всички потребители

създаване

полета

Тези. в резултат на това трябва да покажете полетата в момента, в който се задейства едно от събитията: comment_form_logged_in_after или comment_form_after_fields.

За да покажем 5 радио бутона за оценка, изпълняваме цикъл. Тази част от кода може да бъде променена за вас, например вместо 5, посочете 10.

Запазване на данни от полета в предния край

Обърнете внимание, че дезинфекцираме полетата чрез sanitize_text_field() за защита.

меню

Валидиране на задължителните полета

Показване на съдържанието на метаполета в предния край

Можете да промените кода на формуляра и да добавите необходимите данни там чрез филтъра comment_text.

Две опции за показване на рейтинга

Обмислете 2 опции за това как може да се покаже оценката.

Оценка на звезди от собствени снимки

В първия вариант ще покажем изображения на звезди, които трябва да бъдат под формата на снимки в папката на приставката:

Ако например потребителят постави четири, тогава пътят до изображението ще бъде: http://site.ru/wp-content/plugins/extend-comment/images/4star.gif . Естествено, снимките трябва да съществуват.

Оценяване на звезди от шрифта на иконата на Dashicons

Втората опция е същата според алгоритъма, но тук ще използваме собствената функция на WordPress wp_star_rating(), която сама ще добави красиви икони със звезди:

В предния край функцията wp_star_rating() не го правиработи, трябва да се свърже. Трябва също да включите шрифтовете „dashicons“.

Шрифтът „dashicons“ е 45,3 Kb без gzip компресия и 28,3 Kb с активирана сървърна компресия. Колко място ще заемат вашите снимки? Кой начин да изберете зависи от вас.

Показване на метаполета в админ панела

Получава данни за метаполе.

wp_nonce_field() извежда валидиращо (защитно, еднократно) скрито поле за формуляра, подобрявайки сигурността.

Изчиства съдържанието на мета полетата с esc_attr() и показва. Не проверява нищо. Ако няма данни, полето ще бъде празно.

  • При изобразяване на радио бутони, проверява коя стойност е избрана и маркира html с атрибута checked='checked' с помощта на функцията checked().
  • меню

    Запазване на метаполета в админ панела

    Тук се свързваме с куката edit_comment и правим следното:

    Нека проверим nonce кода и ако проверката е неуспешна, спрете изпълнението на функцията.

  • Нека проверим прехвърлените данни за всяко поле и ако някое поле ги няма, ще изтрием самото метаполе, за да не заема място в базата данни. Ако има поле, ние го актуализираме и не забравяйте да го почистите за безопасност.
  • меню

    Единственото правило на добрите маниери е изтриването на данните, създадени от плъгина, в този случай нашите мета полета. В крайна сметка, ако премахнете приставката, тогава данните от приставката ще останат безполезни за никого.

    Вече ви казахме как правилно да деинсталирате приставка за WordPress, така че ще създадем файл uninstall.php в корена на приставката и ще напишем в него:

    Изход от средната оценка

    В тази статия разгледахме: