| Server IP : 134.76.9.14 / Your IP : 216.73.216.251 Web Server : Apache System : Linux vweb1 5.15.0-186-generic #196-Ubuntu SMP Sat Jun 20 16:09:34 UTC 2026 x86_64 User : ( 723990) PHP Version : 8.1.2-1ubuntu2.25 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /web/mario.flock/www/flock-mpia/wp-content/themes/quantum-computing/inc/tgm/ |
Upload File : |
<?php
require get_template_directory() . '/inc/tgm/class-tgm-plugin-activation.php';
/**
* Recommended plugins.
*/
function quantum_computing_register_recommended_plugins() {
$plugins = array(
array(
'name' => __( 'Creta Testimonial Showcase', 'quantum-computing' ),
'slug' => 'creta-testimonial-showcase',
'source' => '',
'required' => false,
'force_activation' => false,
)
);
$config = array();
tgmpa( $plugins, $config );
}
add_action( 'tgmpa_register', 'quantum_computing_register_recommended_plugins' );
//Creta Testimonial Showcase plugin activation
add_action('wp_ajax_install_and_activate_creta_testimonial_plugin', 'install_and_activate_creta_testimonial_plugin');
function install_and_activate_creta_testimonial_plugin() {
// Verify nonce for security
if (!isset($_POST['nonce']) || !wp_verify_nonce($_POST['nonce'], 'install_activate_nonce')) {
wp_send_json_error(['message' => 'Nonce verification failed.']);
}
// Include necessary WordPress files
include_once ABSPATH . 'wp-admin/includes/plugin.php';
include_once ABSPATH . 'wp-admin/includes/file.php';
include_once ABSPATH . 'wp-admin/includes/misc.php';
include_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php';
include_once ABSPATH . 'wp-admin/includes/plugin-install.php';
$quantum_computing_upgrader = new Plugin_Upgrader(new Automatic_Upgrader_Skin());
// Define required plugins
$plugins = [
[
'slug' => 'creta-testimonial-showcase',
'file' => 'creta-testimonial-showcase/creta-testimonial-showcase.php',
'url' => 'https://downloads.wordpress.org/plugin/creta-testimonial-showcase.latest-stable.zip',
]
];
$quantum_computing_installed_plugins = get_plugins();
foreach ($plugins as $plugin) {
// Install if not present
if (!isset($quantum_computing_installed_plugins[$plugin['file']])) {
$quantum_computing_install_result = $quantum_computing_upgrader->install($plugin['url']);
if (is_wp_error($quantum_computing_install_result)) {
wp_send_json_error(['message' => "Failed to install {$plugin['slug']}"]);
}
}
// Activate if not active
if (!is_plugin_active($plugin['file'])) {
$quantum_computing_activate_result = activate_plugin($plugin['file']);
if (is_wp_error($quantum_computing_activate_result)) {
wp_send_json_error([
'message' => "Failed to activate {$plugin['slug']}",
'error' => $quantum_computing_activate_result->get_error_message(),
]);
}
}
}
// Success response
wp_send_json_success(['message' => 'Creta Testimonial Showcase plugins are activated successfully.']);
}