Cách kích hoạt plugin WordPress bằng code PHP

Một số trường hợp vì không vào được WP-Dashboard để kích hoạt 1 plugin cần thiết buộc phải sử dụng 1/3 phương pháp kích hoạt plugin đó là active plugin bằng cách add code kích hoạt plugin tuỳ chỉnh vào file functions.php, đây là cách không được khuyến khích vì lý do bảo mật nhưng nếu bạn là chủ website thực sự và vì lý do nào đó bạn cần áp dụng thì có thể sử dụng code ở phía dưới để chữa cháy.

Cách kích hoạt plugin bằng code PHP

Để kích hoạt plugin bằng code bạn có thể sử dụng code sau và điều chỉnh slug và tên file plugin.php cho phù hợp nhé, trước tiên bạn cần tải về plugin và giải nén plugin đó ra, sau đó sử dụng FTP để tải lên thư mục /wp-content/plugins/ sau đó áp dụng code để active plugin

function plugin_activation( $plugin ) {
  if( ! function_exists( 'activate_plugin' ) ) {
    require_once ABSPATH . 'wp-admin/includes/plugin.php';
  }
 
  if( ! is_plugin_active( $plugin ) ) {
    activate_plugin( $plugin );
  }
}
 
plugin_activation( 'really-simple-ssl/rlrsssl-really-simple-ssl.php' );

Ví dụ code ở trên là mình sẽ kích hoạt plugin Really Simple Security – Simple and Performant Security

really-simple-ssl chính là slug của plugin

Ví dụ, nếu plugin có tên là “Really Simple Security – Simple and Performant Security” và nằm trong thư mục /wp-content/plugins/really-simple-ssl/, thì slug của nó sẽ là really-simple-ssl

Ví dụ, nếu plugin có tên là “Contact Form 7” và nằm trong thư mục /wp-content/plugins/contact-form-7/ thì slug của nó sẽ là contact-form-7

Ở 2 ví dụ này chắc bạn đã hiểu slug là gì và dễ dàng xác định rồi nhỉ?!

Còn rlrsssl-really-simple-ssl.php là gì thì bạn phải mở thư mục really-simple-ssl chứa plugin Really Simple Security lên và bạn sẽ dễ dàng nhìn tên file gần giống như slug, hãy lấy tên file và điền và phía sau là được.

Ví dụ thêm đoạn code kích hoạt Contact form 7 để bạn có thể hiểu hơn

function plugin_activation( $plugin ) {
  if( ! function_exists( 'activate_plugin' ) ) {
    require_once ABSPATH . 'wp-admin/includes/plugin.php';
  }
 
  if( ! is_plugin_active( $plugin ) ) {
    activate_plugin( $plugin );
  }
}
plugin_activation( 'contact-form-7/wp-contact-form-7.php' );

Vậy là bạn có thể kích hoạt plugin thông qua code mà không cần phải login vào WP-admin thành công, ngoài cách này thì cách mình cũng đôi lúc sử dụng đó là tạo sẵn 1 file vts-active-plugin.php và add code vào và truy cập vào vutruso.com/vts-active-plugin.php để kích hoạt chẳng hạn.

Ví dụ mình muốn active 3 plugin 1 lúc sẽ config file như sau:

function vutruso_plugins_activation($plugins) {
    // Load file cần thiết nếu chưa có
    if (!function_exists('activate_plugin')) {
        require_once ABSPATH . 'wp-admin/includes/plugin.php';
    }

    $results = array();

    // Kiểm tra nếu $plugins là string thì chuyển thành array
    if (is_string($plugins)) {
        $plugins = array($plugins);
    }

    // Duyệt qua từng plugin
    foreach ($plugins as $plugin) {
        // Kiểm tra file plugin có tồn tại
        if (!file_exists(WP_PLUGIN_DIR . '/' . $plugin)) {
            $results[$plugin] = false;
            continue;
        }

        // Kiểm tra và kích hoạt nếu chưa active
        if (!is_plugin_active($plugin)) {
            try {
                activate_plugin($plugin);
                $results[$plugin] = true;
            } catch (Exception $e) {
                $results[$plugin] = false;
            }
        } else {
            $results[$plugin] = true; // Plugin đã active
        }
    }

    return $results;
}

// Sử dụng:
$plugins = array(
    'contact-form-7/wp-contact-form-7.php',
    'woocommerce/woocommerce.php',
    'elementor/elementor.php',
    // Thêm các plugin khác ở đây
);

$activation_results = vutruso_plugins_activation($plugins);

// Hiển thị kết quả
foreach ($activation_results as $plugin => $status) {
    if ($status) {
        echo "Plugin {$plugin} đã được kích hoạt thành công<br>";
    } else {
        echo "Không thể kích hoạt plugin {$plugin}<br>";
    }
}

Như đã nói ban đầu việc kích hoạt plugin không thông qua wp-admin không được khuyến khích nên bạn hãy cân nhắc sử dụng, và nhiều trường hợp sử dụng phương pháp bất hợp pháp để active theo cách sau để chiếm quyền truy cập vào wp-admin, nếu bạn là chủ web thực sự thì không vấn đề nhưng…

Xin cảm ơn.

5/5 - (24 votes)

donate Nếu bạn thấy bài viết có ích bạn có thể donate cho team hoặc chia sẻ bài viết này. Ngoài ra bạn có thể yêu cầu thêm bài viết tại đây
Đã copy
vutruso

Vũ Trụ Số chuyên cung cấp hosting cho WordPress, dịch vụ thiết kế website, quản trị website cho doanh nghiệp, dịch vụ quảng cáo Google, quảng cáo Facebook, các dịch vụ bảo mật website WordPress, tăng tốc website WordPress

Bài viết liên quan