';
// Needs an extra wrapping div for nth-child selectors to work.
echo '
';
$group = $plugin['group'];
}
$title = wp_kses( $plugin['name'], $qcld_chatplugintags );
// Remove any HTML from the description.
$description = wp_strip_all_tags( $plugin['short_description'] );
$version = wp_kses( $plugin['version'], $qcld_chatplugintags );
$name = wp_strip_all_tags( $title . ' ' . $version );
$author = wp_kses( $plugin['author'], $qcld_chatplugintags );
if ( ! empty( $author ) ) {
/* translators: %s: Plugin author. */
$author = '
' . sprintf( __( 'By %s', 'chatbot' ), $author ) . '';
}
$requires_php = isset( $plugin['requires_php'] ) ? $plugin['requires_php'] : null;
$requires_wp = isset( $plugin['requires'] ) ? $plugin['requires'] : null;
$compatible_php = is_php_version_compatible( $requires_php );
$compatible_wp = is_wp_version_compatible( $requires_wp );
$tested_wp = ( empty( $plugin['tested'] ) || version_compare( get_bloginfo( 'version' ), $plugin['tested'], '<=' ) );
$action_links = array();
if ( current_user_can( 'install_plugins' ) || current_user_can( 'update_plugins' ) ) {
$status = install_plugin_install_status( $plugin );
switch ( $status['status'] ) {
case 'install':
if ( $status['url'] ) {
if ( $compatible_php && $compatible_wp ) {
$action_links[] = sprintf(
'
%s',
esc_attr( $plugin['slug'] ),
esc_url( $status['url'] ),
/* translators: %s: Plugin name and version. */
esc_attr( sprintf( _x( 'Install %s now', 'Install plugin', 'chatbot' ), $name ) ),
esc_attr( $name ),
__( 'Install Now', 'chatbot' )
);
} else {
$action_links[] = sprintf(
'
',
__( 'Cannot Install', 'chatbot' )
);
}
}
break;
case 'update_available':
if ( $status['url'] ) {
if ( $compatible_php && $compatible_wp ) {
$action_links[] = sprintf(
'
%s',
esc_attr( $status['file'] ),
esc_attr( $plugin['slug'] ),
esc_url( $status['url'] ),
/* translators: %s: Plugin name and version. */
esc_attr( sprintf( _x( 'Update %s now', 'Update plugin', 'chatbot' ), $name ) ),
esc_attr( $name ),
__( 'Update Now', 'chatbot' )
);
} else {
$action_links[] = sprintf(
'
',
__( 'Cannot Update', 'chatbot' )
);
}
}
break;
case 'latest_installed':
case 'newer_installed':
if ( is_plugin_active( $status['file'] ) ) {
$action_links[] = sprintf(
'
',
__( 'Active', 'chatbot' )
);
} elseif ( current_user_can( 'activate_plugin', $status['file'] ) ) {
$button_text = __( 'Activate', 'chatbot' );
/* translators: %s: Plugin name. */
$button_label = _x( 'Activate %s', 'plugin name', 'chatbot' );
$activate_url = add_query_arg(
array(
'_wpnonce' => wp_create_nonce( 'activate-plugin_' . $status['file'] ),
'action' => 'activate',
'plugin' => $status['file'],
),
network_admin_url( 'plugins.php' )
);
if ( is_network_admin() ) {
$button_text = __( 'Network Activate', 'chatbot' );
/* translators: %s: Plugin name. */
$button_label = _x( 'Network Activate %s', 'plugin name', 'chatbot' );
$activate_url = add_query_arg( array( 'networkwide' => 1 ), $activate_url );
}
$action_links[] = sprintf(
'
%3$s',
esc_url( $activate_url ),
esc_attr( sprintf( $button_label, $plugin['name'] ) ),
$button_text
);
} else {
$action_links[] = sprintf(
'
',
_x( 'Installed', 'plugin status', 'chatbot' )
);
}
break;
}
}
$details_link = self_admin_url(
'plugin-install.php?tab=plugin-information&plugin=' . $plugin['slug'] .
'&width=700&height=550'
);
$action_links[] = sprintf( '%s','
More Details');
/*===show icon ==*/
if ( ! empty( $plugin['icons']['svg'] ) ) {
$plugin_icon_url = $plugin['icons']['svg'];
} elseif ( ! empty( $plugin['icons']['2x'] ) ) {
$plugin_icon_url = $plugin['icons']['2x'];
} elseif ( ! empty( $plugin['icons']['1x'] ) ) {
$plugin_icon_url = $plugin['icons']['1x'];
} else {
$plugin_icon_url = $plugin['icons']['default'];
}
/*
* $action_links An array of plugin action links. Defaults are links to Details and Install Now.
* $plugin The plugin currently being listed.
*/
$action_links = apply_filters( 'plugin_install_action_links', $action_links, $plugin );
$last_updated_timestamp = strtotime( $plugin['last_updated'] );
?>
';
if ( ! $compatible_php && ! $compatible_wp ) {
esc_html_e( 'This plugin doesn’t work with your versions of WordPress and PHP.', 'chatbot' );
if ( current_user_can( 'update_core' ) && current_user_can( 'update_php' ) ) {
printf(
/* translators: 1: URL to WordPress Updates screen, 2: URL to Update PHP page. */
'Please update WordPress, and then learn more about updating PHP.',
esc_url( self_admin_url( 'update-core.php' ) ),
esc_url( wp_get_update_php_url() )
);
wp_update_php_annotation( '
', '' );
} elseif ( current_user_can( 'update_core' ) ) {
printf(
/* translators: %s: URL to WordPress Updates screen. */
'Please update WordPress.',
esc_url( self_admin_url( 'update-core.php' ) )
);
} elseif ( current_user_can( 'update_php' ) ) {
printf(
/* translators: %s: URL to Update PHP page. */
'Learn more about updating PHP.',
esc_url( wp_get_update_php_url() )
);
wp_update_php_annotation( '
', '' );
}
} elseif ( ! $compatible_wp ) {
esc_html_e( 'This plugin doesn’t work with your version of WordPress.', 'chatbot' );
if ( current_user_can( 'update_core' ) ) {
printf(
/* translators: %s: URL to WordPress Updates screen. */
'Please update WordPress.',
esc_url( self_admin_url( 'update-core.php' ) )
);
}
} elseif ( ! $compatible_php ) {
esc_html_e( 'This plugin doesn’t work with your version of PHP.', 'chatbot' );
if ( current_user_can( 'update_php' ) ) {
printf(
/* translators: %s: URL to Update PHP page. */
'Learn more about updating PHP.',
esc_url( wp_get_update_php_url() )
);
wp_update_php_annotation( '
', '' );
}
}
echo '
';
}
?>
' . implode( '', $action_links ) . '';
}
?>