Як дозволити гостям створювати пости на вашому wordpress сайті

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

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

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

Саме цю функцію виконує плагін DJD Site Post. Спершу ми встановимо і налаштуємо його, а потім активуємо форму. Також ми розглянемо додаткові функції, як наприклад, зміна форми і відкриття доступу користувачам до адмінки WordPress.

Але спочатку нам потрібно встановити і налаштувати плагін DJD Site Post.

Плагін DJD Site Post

Як дозволити гостям створювати пости на вашому wordpress сайті

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

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

Налаштування плагіна

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

Перейдіть в меню Сторінки → Додати нову і створіть нову сторінку з відповідним заголовком. У тілі сторінки введіть наступний шорткод:

Як дозволити гостям створювати пости на вашому wordpress сайті

Тепер перейдіть до налаштувань плагіна в меню Налаштування → DJD Site Post.

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

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

Коли ви закінчите настроювання, натисніть на Save Changes. На сторінці, яку ви створили раніше, повинна з'явитися така форма:

Як дозволити гостям створювати пости на вашому wordpress сайті

Оформляємо форму за допомогою CSS

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

Я вирішив скористатися плагіном Simple Custom CSS. який дозволяє відредагувати і видозмінити стиль теми оформлення або плагіна.

Як дозволити гостям створювати пости на вашому wordpress сайті

Після установки цього плагіна і переходу в меню Зовнішній вигляд → Custom CSS. я зміг налаштувати нашу форму додатково, а саме:

  • видалити заголовок взагалі
  • видалити кордон навколо форми
  • додати більше місця навколо кнопки Add Media button ( «Завантажити медіа-файл»)
  • додати рамку навколо форми
  • зручніше розташувати кнопку «Увійти»

Але врахуйте, що видозміна форми може залежати від обраної вами теми оформлення (я використовував Twenty Fourteen).

Як дозволити гостям створювати пости на вашому wordpress сайті

Вибір підходящої ролі користувача

Плагін DJD Site Post пропонує досить зручну систему, яка дозволяє гостям заходити на сайт. Плюс в тому, що користувачам не потрібно запам'ятовувати логін, а мінус в тому, що гості сайтів не можуть бачити завантажені файли тих, хто зареєстрований.

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

Як дозволити гостям створювати пости на вашому wordpress сайті

Створюємо нову роль користувача

Встановіть плагін Capability Manager Enhanced, а потім натисніть на Користувачі → Capabilities. У правому вікні меню в Create New Role наберіть "Guest Contributor" і натисніть Create. Віджет Select Role to View / Edit повинен змінитися. Якщо немає, то виберіть зі списку вашу нову роль і натисніть на Load.

Ось які можливості ми пропонуємо:

  1. Записи - Редагування
  2. Інші можливості WordPress - Читання
  3. Інші можливості WordPress - Завантаження файл.

От і все. Наша основна задача - надати користувачам такі можливості, які відповідають їхнім запитам і допоможуть у вирішенні їхніх завдань.

Чи потрібно обмежити доступ до Консолі WordPress?

Установка плагіна Remove Dashboard Access дає можливість обмежити доступ до цього всього або ж вибрати частково конкретні розділи.

Як дозволити гостям створювати пости на вашому wordpress сайті

Для того, щоб обмежити доступ до панелі інструментів, потрібно перейти в Налаштування → Dashboard Access.

Як дозволити гостям створювати пости на вашому wordpress сайті

Якщо стандартні права (manage_options) будуть заважати іншим користувачам використовувати адмін-інтерфейс, то ви можете створити додаткові можливості за допомогою Сapability Manager Enhanced:

  1. В меню Користувачі → Capabilities виберіть Administrator в віджеті Select Role to View / Edit і натисніть на Load.
  2. Потім в віджеті Add Capability натисніть на Add.
  3. Прокрутіть вниз до Additional Capabilities і поставте галочку біля «доступу до панелі» і натисніть на Save Changes.

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

Поверніться в налаштування Dashboard Access і знайдіть у випадаючому списку access_dashboard. Натисніть на Allow users to edit their profiles in the dashboard. що означає, що користувачі можуть вносити зміни в свій профіль, міняти пошту. Потім введіть URL в Redirect URL. Це може бути і домашня сторінка. Натисніть на Save Changes і все готово.

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

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

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

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

Якщо ви хочете зробити і те, і те одночасно, то додайте цей код в файл functions.php у вашій темі оформлення:

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

Джерело: wpmudev.org

Чомусь в формі djd-site-post кнопка "додати мультимедійний" з'являється тільки для адмінській учеткі, для юзерскій її немає. Але і для адмінській вона не працює. Підкажіть, де шукати проблему?