PluginProbe
QuadMenu – Mega Menu / 3.3.8
QuadMenu – Mega Menu v3.3.8
3.3.8 3.3.7 3.3.6 trunk 1.8.4 1.8.5 1.8.7 1.8.8 1.8.9 1.9.0 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 All 88 releases
quadmenu / jetpack_vendor / quadlayers / wp-plugin-table-links / src / Load.php

Load.php in QuadMenu – Mega Menu 3.3.8, at jetpack_vendor/quadlayers/wp-plugin-table-links/src/Load.php

82 lines 2.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * QuadLayers WP Plugin Table Links
4 *
5 * @package quadlayers/wp-plugin-table-links
6 * @link https://github.com/quadlayers/wp-plugin-table-links
7 */
8
9 namespace QuadLayers\WP_Plugin_Table_Links;
10
11 /**
12 * Load class
13 */
14 class Load {
15
16 /**
17 * Link defaults
18 *
19 * @var string
20 */
21 protected $link_defaults = array(
22 'place' => 'action',
23 'text' => '',
24 'url' => '',
25 'target' => '_blank',
26 'color' => '',
27 );
28
29 /**
30 * Constructor
31 *
32 * @param string $plugin_file Plugin file.
33 * @param array $plugin_links Plugin links.
34 */
35 public function __construct( $plugin_file, array $plugin_links = array() ) {
36 add_filter(
37 'plugin_row_meta',
38 function( $links, $plugin_file_name, $plugin_data, $status ) use ( $plugin_file, $plugin_links ) {
39
40 if ( plugin_basename( $plugin_file ) !== $plugin_file_name ) {
41 return $links;
42 }
43
44 foreach ( $plugin_links as $link ) {
45 $link = wp_parse_args(
46 $link,
47 $this->link_defaults
48 );
49 if ( isset( $link['url'], $link['text'] ) && 'row_meta' === $link['place'] ) {
50 $style = '';
51 if ( ! empty( $link['color'] ) ) {
52 $style = 'style="color:' . $link['color'] . ';font-weight:bold;"';
53 }
54 $links[] = '<a ' . $style . ' target="' . $link['target'] . '" href="' . $link['url'] . '">' . $link['text'] . '</a>';
55 }
56 }
57 return $links;
58 },
59 10,
60 4
61 );
62 add_filter(
63 'plugin_action_links_' . plugin_basename( $plugin_file ),
64 function( $links ) use ( $plugin_links ) {
65 foreach ( $plugin_links as $link ) {
66 $link = wp_parse_args(
67 $link,
68 $this->link_defaults
69 );
70 if ( isset( $link['url'], $link['text'] ) && 'action' === $link['place'] ) {
71 $style = '';
72 if ( ! empty( $link['color'] ) ) {
73 $style = 'style="color:' . $link['color'] . ';font-weight:bold;"';
74 }
75 $links[] = '<a ' . $style . ' target="' . $link['target'] . '" href="' . $link['url'] . '">' . $link['text'] . '</a>';
76 }
77 }
78 return $links;
79 }
80 );
81 }
82 }