'action', 'text' => '', 'url' => '', 'target' => '_blank', 'color' => '', ); /** * Constructor * * @param string $plugin_file Plugin file. * @param array $plugin_links Plugin links. */ public function __construct( $plugin_file, array $plugin_links = array() ) { add_filter( 'plugin_row_meta', function( $links, $plugin_file_name, $plugin_data, $status ) use ( $plugin_file, $plugin_links ) { if ( plugin_basename( $plugin_file ) !== $plugin_file_name ) { return $links; } foreach ( $plugin_links as $link ) { $link = wp_parse_args( $link, $this->link_defaults ); if ( isset( $link['url'], $link['text'] ) && 'row_meta' === $link['place'] ) { $style = ''; if ( ! empty( $link['color'] ) ) { $style = 'style="color:' . $link['color'] . ';font-weight:bold;"'; } $links[] = '' . $link['text'] . ''; } } return $links; }, 10, 4 ); add_filter( 'plugin_action_links_' . plugin_basename( $plugin_file ), function( $links ) use ( $plugin_links ) { foreach ( $plugin_links as $link ) { $link = wp_parse_args( $link, $this->link_defaults ); if ( isset( $link['url'], $link['text'] ) && 'action' === $link['place'] ) { $style = ''; if ( ! empty( $link['color'] ) ) { $style = 'style="color:' . $link['color'] . ';font-weight:bold;"'; } $links[] = '' . $link['text'] . ''; } } return $links; } ); } }