Встановлення плагінів на автоматі у преміум темі WordPress
Думаю ті хто колись качали теми для WordPress або купували їх на таких біржах як themeforest, помічали що багато тем після встановлення та активації просять встановити для них необхідні плагіни. Сьогодні ми поговоримо про бібліотеку Активація плагіна TGM яка дає можливість встановлювати плагіни після активації теми, дізнаємося як у преміум темах усі плагіни ставляться на автоматі. Плагіни можна буде встановлювати як із репозиторію WordPress, так і з інших зовнішніх джерел, також можна буде встановлювати плагіни які розробляли ви та поклали у вашу тему. Клас цієї бібліотеки встановлює та активує плагіни на основі WordPress API, а це означає, що проблем при оновленні бути не повинно.
Як настроїти TGM Plugin Activation
Налаштування ми будемо проводити на стандартній темі TwentyEleven, але ви можете скористатися й іншою темою, перевірте тільки щоб у вашій темі у файлі style.css, був доданий коментар виду: Текстовий домен: двадцять одинадцять. Нижче у шкірі ми будемо його використовувати у змінній $theme_text_domain = «двадцять одинадцять»;.
Для початку нам необхідно завантажити бібліотеку з сайту розробників або з GitHub і покласти в корінь нашої теми файл class-tgm-plugin-activation.php та папку плагіни з усім її вмістом.
Після того як необхідні скопійовані файли нам потрібно підключити наш клас до шаблону. Підключення класу здійснюємо через файл functions.php.
У файл functions.php, у верхній частині додаємо код виклику функції встановлення обов'язкових плагінів:
1 2 |
require_once dirname(__FILE__).'/class-tgm-plugin-activation.php'; add_action('tgmpa_register','my_theme_register_required_plugins'); |
Нижче додамо код самої функції:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
function my_theme_register_required_plugins(){ $plugins = array( /* установка плагинов из папки темы, которые вы поставляете в комплекте */ array( 'name' => 'TGM Example Plugin', // имя плагина 'slug' => 'tgm-example-plugin', // Имя плагина (совпадает с именем папки плагина) 'source' => get_stylesheet_directory().'/plugins/tgm-example-plugin.zip', // источник плагина 'required' => false, // 'required' - плагин обязательый? нужно ли го активировать поле установки? ), /* установка плагинов на автомате из репозитория wordpress */ array( 'name' => 'Edit Howdy', 'slug' => 'edit-howdy', // слуг можно посмотреть в ссылке к плагину // https://wordpress.org/plugins/edit-howdy/ - edit-howdy ), array( 'name' => 'Evanto dashboard', 'slug' => 'evantodashboard', 'source' => get_stylesheet_directory().'/plugins/evantodashboard.zip', // источник плагина 'required' => false, ), ); $theme_text_domain = 'twentyeleven'; // текстовый домен темы $config = array( /*domain => $theme_text_domain, // текстовый домен, точно такой как указан в вашей теме*/ /*dafault_path => '', // Абсолютный путь по умолчанию к папке плагинов*/ /*menu => 'install-my-theme-plugin', // Menu slug*/ 'settings' => array( /*'page_title' => __('Install Required Plugins', $theme_text_domain)*/ /*'menu_title' => __('Install Plugins', $theme_text_domain)*/ /*'instructions_install' => __( 'The %1$s plugin is required for this theme. Click on the big blue button below to install and activate %1$s.', $theme_text_domain ), // %1$s = plugin name */ /*'instructions_activate' => __( 'The %1$s is installed but currently inactive. Please go to the <a href="%2$s">plugin administration page</a> page to activate it.', $theme_text_domain ), // %1$s = plugin name, %2$s = plugins page URL */ /*'button' => __( 'Install %s Now', $theme_text_domain ), // %1$s = plugin name */ /*'installing' => __( 'Installing Plugin: %s', $theme_text_domain ), // %1$s = plugin name */ /*'oops' => __( 'Something went wrong with the plugin API.', $theme_text_domain ), // */ /*'notice_can_install' => __( 'This theme requires the %1$s plugin. <a href="%2$s"><strong>Click here to begin the installation process</strong></a>. You may be asked for FTP credentials based on your server setup.', $theme_text_domain ), // %1$s = plugin name, %2$s = TGMPA page URL */ /*'notice_cannot_install' => __( 'Sorry, but you do not have the correct permissions to install the %s plugin. Contact the administrator of this site for help on getting the plugin installed.', $theme_text_domain ), // %1$s = plugin name */ /*'notice_can_activate' => __( 'This theme requires the %1$s plugin. That plugin is currently inactive, so please go to the <a href="%2$s">plugin administration page</a> to activate it.', $theme_text_domain ), // %1$s = plugin name, %2$s = plugins page URL */ /*'notice_cannot_activate' => __( 'Sorry, but you do not have the correct permissions to activate the %s plugin. Contact the administrator of this site for help on getting the plugin activated.', $theme_text_domain ), // %1$s = plugin name */ /*'return' => __( 'Return to Required Plugins Installer', $theme_text_domain ), // */ ), ); tgmpa( $plugins, $config ); } |
Якщо ви все зробили правильно, то побачите повідомлення про те, що необхідно встановити плагіни, які є обов'язковими для даної теми, повідомлення буде такого виду.
Натискаємо на кнопку Почніть установку плагінів і у вас з'явиться вікно зі списком ваших плагінів.
У вікні ми можемо бачити, що пункт Edit Howdy відображається як посилання, при натисканні ви зможете почитати про цю плагін, тому що ми його встановлюємо з репозиторію. Інші плагіни будуть неактивними, оскільки встановлюватимуться з папки теми.
Запустимо автоматичне встановлення плагінів
- Виберіть плагіни, які необхідно встановити,
- Виберіть дію “install”,
- Натисніть застосувати.
Якщо все зробили правильно, то у вас 2 плагіна встановляться і один виведе помилку (Під час встановлення інформаційної панелі Evanto сталася помилка: Завантаження не вдалося. Надана неправильна URL-адреса..). Помилка з'явилася тому, що в нашу тему ми не додавали файл плагіна Evanto dashboard.
Залишилося тільки відзначити всі необхідні плагіни та активувати їх.
Якщо все зробили правильно, то ви отримаєте повідомлення (Наступні плагіни успішно активовано: Редагувати Привіт і плагін прикладу TGM).
Якщо ви не встановили всі плагіни і вирішили робити установку по одному, при цьому ви втратили вікно установки, то ви завжди зможете повернутися на сторінку установки через меню адміністратора у розділі Зовнішній вигляд -> Встановіть плюсіни.
От і все, пробуємо встановлювати свої плагіни! Успіхів у розробці зручних та якісних тем для WordPress.
/*
- Базовий курс з веб-дизайну;
- Верстка сайтів;
- Загальний курс CMS WordPress та продовження курсу з розробки шаблонів;
- Розробка сайтів на PHP.