Активувати плагін через PHPMyAdmin або FTP?


18

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

Чи є спосіб вручну активувати плагін через PHPMyAdmin або через FTP?


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

Відповіді:


32

Я вирішив це, перейшовши через PHPMyAdmin до таблиці "Параметри", а потім рядка active_plugins.

У мене збереглися такі дані (відформатовані для читання):

a:10:{
    i:0;s:49:"1and1-wordpress-wizard/1and1-wordpress-wizard.php";
    i:1;s:29:"acf-repeater/acf-repeater.php";
    i:2;s:30:"advanced-custom-fields/acf.php";
    i:3;s:45:"limit-login-attempts/limit-login-attempts.php";
    i:4;s:27:"redirection/redirection.php";
    i:6;s:33:"w3-total-cache/w3-total-cache.php";
    i:7;s:41:"wordpress-importer/wordpress-importer.php";
    i:8;s:24:"wordpress-seo/wp-seo.php";
    i:9;s:34:"wpml-string-translation/plugin.php";
    i:10;s:38:"wpml-translation-management/plugin.php";
}

Я додав новий рядок (для відсутнього плагіна) і збільшив a:10до, a:11щоб вказати, що зараз у масиві 11 елементів:

a:11:{
    i:0;s:49:"1and1-wordpress-wizard/1and1-wordpress-wizard.php";
    i:1;s:29:"acf-repeater/acf-repeater.php";
    i:2;s:30:"advanced-custom-fields/acf.php";
    i:3;s:45:"limit-login-attempts/limit-login-attempts.php";
    i:4;s:27:"redirection/redirection.php";
    i:5;s:40:"sitepress-multilingual-cms/sitepress.php";
    i:6;s:33:"w3-total-cache/w3-total-cache.php";
    i:7;s:41:"wordpress-importer/wordpress-importer.php";
    i:8;s:24:"wordpress-seo/wp-seo.php";
    i:9;s:34:"wpml-string-translation/plugin.php";
    i:10;s:38:"wpml-translation-management/plugin.php";
}

i:Здається, номер предмета, і завдяки коментарю JHoffmann з'являється s:довжина рядка, що випливає.

Зараз сайт працює, як і раніше!


2
sПозначає рядок і число наступне є довжиною рядка.
JHoffmann

@JHoffmann Дякую за це! Оновлено мою відповідь. Чи можете ви сказати мені, де ви це дізналися? Чи є десь хороший ресурс, який пояснює такі речі? Спасибі.
Джанго Райнхардт

iнасправді означає ціле значення, sозначає рядок, а поруч число s- довжина рядка
Пітер Гузен

1
Це серіалізовані дані. У мене немає точного джерела, але ви можете переглянути серіалізовані дані. Ви також можете подивитися на JSON, оскільки це більше, де використовуються серіалізовані дані
Пітер Гузен

1
@DjangoReinhardt Як сказав Пітер Гузен, це серіалізовані дані, оскільки вони генеруються функцією серіалізації php . У wordpress також є функція обгортки, яка називається Maybe_serialize
JHoffmann

12
//Using this code you can activate your plugin from the functions.php
    function activate_plugin_via_php() {
        $active_plugins = get_option( 'active_plugins' );
        array_push($active_plugins, 'unyson/unyson.php'); /* Here just replace unyson plugin directory and plugin file*/
        update_option( 'active_plugins', $active_plugins );    
    }
    add_action( 'init', 'activate_plugin_via_php' );

Якщо ви хочете активувати більше ніж один плагін, просто повторіть ...
Аніл Ядхав

array_push ($ active_plugins, 'unyson / unyson.php');
Аніл Ядхав

1
ви також можете додати if (! in_array ('unyson / unyson.php', $ active_plugins)), щоб переконатися, що він не додано більше одного разу
Pierre

3

Ви можете просто перейменувати папку плагінів, наприклад:

"_aksimet"деактивувати його і назад назад, "aksimet"щоб активувати його знову (якщо він був активним)

ви можете зробити це з усіма папками "плагінів" разом.

В іншому випадку перейдіть до MySQL і ознайомтеся з цим покроковим посібником , коротше:

  1. MYSQL> wp_options
  2. пошук active_pluginsзапису (обидва кроки можна виконати SELECT * FROM wp_options WHERE option_name = 'active_plugins';)
  3. і ніж записувати ваш плагін там, як написані інші плагіни ( iє індекс, s- це довжина рядка).

Сподіваюся, це допомагає


Спасибі. Я спробував деактивувати, і виявляється, код плагіна занадто вбудований на весь сайт. Мені потрібен спосіб його повторної активації :(
Джанго Рейнхардт

Що ти маєш на увазі? Для реактивації просто перейменуйте її назад. Чи є у вас помилки чи так?
kybernaut.cz

Плагін був відключений через інтерфейс адміністратора WP. Після його відключення я більше не міг отримати доступ до свого сайту. Не можна було нічого перейменувати, оскільки я не відключив її, перейменувавши її через FTP.
Джанго Райнхардт

Я оновив свою відповідь, але це безумовно дивно. Який плагін це був? Можливо, ви можете переключитися на двадцять п’ятнадцять (перейменуючи свою тему), активувати її і перевірити, що пішло не так і чим повернутися до своєї теми.
kybernaut.cz

2

Ще одна відповідь на інший підхід, який може принести користь комусь іншому в майбутньому. Ви також можете перемістити папку плагінів у папку Must Use (яку, ймовірно, потрібно буде створити, якщо вона раніше не використовується. Цей шлях зазвичай:

wp-content/mu-plugins

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

https://codex.wordpress.org/Must_Use_Plugins

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

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.