PATH:
home
/
centosnipponia
/
public_html
/
sweetrich
/
wp-content
/
themes
/
sydney-pro-ii
/
inc
/
onboarding
/
plugins
<?php /** * Plugin install helper. * */ class Sydney_Recommended_Plugins { /** * Instance of class. * * @var bool $instance instance variable. */ private static $instance; /** * Check if instance already exists. * */ public static function instance() { if ( ! isset( self::$instance ) && ! ( self::$instance instanceof Main ) ) { self::$instance = new Sydney_Recommended_Plugins(); } return self::$instance; } public function __construct() { add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ) ); } /** * Get plugin path based on plugin slug. * * @param string $slug Plugin slug. * * @return string */ public static function get_plugin_path( $slug ) { return $slug . '/' . $slug . '.php'; } /** * Generate action button html. * * @param string $slug plugin slug. * @param array $settings button settings. * * @return string */ public function get_button_html( $slug, $settings = array() ) { $button = ''; $redirect = ''; if ( ! empty( $settings ) && array_key_exists( 'redirect', $settings ) ) { $redirect = $settings['redirect']; } $state = $this->check_plugin_state( $slug ); if ( empty( $slug ) ) { return ''; } $additional = ''; if ( $state === 'deactivate' ) { $additional = ' action_button active'; } $button .= '<div style="padding: 8px 0 5px;position:absolute;bottom:0;">'; $plugin_link_suffix = self::get_plugin_path( $slug ); $nonce = add_query_arg( array( 'action' => 'activate', 'plugin' => rawurlencode( $plugin_link_suffix ), 'plugin_status' => 'all', 'paged' => '1', '_wpnonce' => wp_create_nonce( 'activate-plugin_' . $plugin_link_suffix ), ), esc_url( network_admin_url( 'plugins.php' ) ) ); switch ( $state ) { case 'install': $button .= '<a data-redirect="' . esc_url( $redirect ) . '" data-slug="' . esc_attr( $slug ) . '" class="install-now sydney-install-plugin button " href="' . esc_url( $nonce ) . '" data-name="' . esc_attr( $slug ) . '" aria-label="Install ' . esc_attr( $slug ) . '">' . __( 'Install and activate', 'sydney' ) . '</a>'; break; case 'activate': $button .= '<a data-redirect="' . esc_url( $redirect ) . '" data-slug="' . esc_attr( $slug ) . '" class="activate-now button button-primary" href="' . esc_url( $nonce ) . '" aria-label="Activate ' . esc_attr( $slug ) . '">' . esc_html__( 'Activate', 'sydney' ) . '</a>'; break; case 'deactivate': $nonce = add_query_arg( array( 'action' => 'deactivate', 'plugin' => rawurlencode( $plugin_link_suffix ), 'plugin_status' => 'all', 'paged' => '1', '_wpnonce' => wp_create_nonce( 'deactivate-plugin_' . $plugin_link_suffix ), ), esc_url( network_admin_url( 'plugins.php' ) ) ); $button .= '<a data-redirect="' . esc_url( $redirect ) . '" data-slug="' . esc_attr( $slug ) . '" class="deactivate-now button" href="' . esc_url( $nonce ) . '" data-name="' . esc_attr( $slug ) . '" aria-label="Deactivate ' . esc_attr( $slug ) . '">' . esc_html__( 'Deactivate', 'sydney' ) . '</a>'; break; case 'enable_cpt': $url = esc_url( admin_url( 'admin.php?page=jetpack#/settings' ) ); $button .= '<a data-redirect="' . esc_url( $redirect ) . '" class="button" href="' . esc_url( $url ) . '">' . esc_html__( 'Activate', 'sydney' ) . ' ' . esc_html__( 'Jetpack Portfolio', 'sydney' ) . '</a>'; break; default: break; }// End switch(). $button .= '</div>'; return $button; } /** * Check plugin state. * * @param string $slug plugin slug. * * @return bool */ public function check_plugin_state( $slug ) { $plugin_link_suffix = self::get_plugin_path( $slug ); if ( file_exists( ABSPATH . 'wp-content/plugins/' . $plugin_link_suffix ) ) { $needs = is_plugin_active( $plugin_link_suffix ) ? 'deactivate' : 'activate'; if ( $needs === 'deactivate' && ! post_type_exists( 'portfolio' ) && $slug === 'jetpack' ) { return 'enable_cpt'; } return $needs; } else { return 'install'; } } /** * Enqueue Function. */ public function enqueue_scripts() { wp_register_script( 'sydney-plugin-install', get_template_directory_uri() . '/inc/onboarding/plugins/plugin-install.js', array( 'jquery' ), '', true ); wp_localize_script( 'sydney-plugin-install', 'sydneyPluginInstall', array( 'activating' => esc_html__( 'Activating ', 'sydney' ), ) ); wp_enqueue_script( 'sydney-plugin-install' ); } } $admin = new Sydney_Recommended_Plugins();
[+]
..
[-] class-sydney-recommended-plugins.php
[edit]
[-] plugin-install.js
[edit]
[-] .htaccess.disabled
[edit]