1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
<?php
/* Widget Name: Icon Description: An iconic icon. Author: SiteOrigin Author URI: https://siteorigin.com Documentation: https://siteorigin.com/widgets-bundle/icon-widget/ */
class SiteOrigin_Widget_Icon_Widget extends SiteOrigin_Widget {
function __construct() {
parent::__construct( 'sow-icon', __( 'SiteOrigin Icon', 'so-widgets-bundle' ), array( 'description' => __( 'An icon widget.', 'so-widgets-bundle' ) ), array(), false, plugin_dir_path( __FILE__ ) ); }
function get_widget_form() { return array( 'icon' => array( 'type' => 'icon', 'label' => __( 'Icon', 'so-widgets-bundle' ), ),
'color' => array( 'type' => 'color', 'label' => __( 'Color', 'so-widgets-bundle' ), ),
'size' => array( 'type' => 'measurement', 'label' => __( 'Size', 'so-widgets-bundle' ), ),
'alignment' => array( 'type' => 'select', 'label' => __( 'Alignment', 'so-widgets-bundle' ), 'options' => array( 'center' => __( 'Center', 'so-widgets-bundle' ), 'left' => __( 'Left', 'so-widgets-bundle' ), 'right' => __( 'Right', 'so-widgets-bundle' ), ), 'default' => 'center', ),
'url' => array( 'type' => 'link', 'label' => __( 'Destination URL', 'so-widgets-bundle' ), ),
'new_window' => array( 'type' => 'checkbox', 'default' => false, 'label' => __( 'Open in a new window', 'so-widgets-bundle' ), ), ); }
function get_less_variables( $instance ) { if ( empty( $instance ) ) { return array(); } return array( 'color' => $instance['color'], 'alignment' => $instance['alignment'], 'size' => $instance['size'], ); }
/** * Get the template variables for the headline * * @param $instance * @param $args * * @return array */ function get_template_variables( $instance, $args ) { return array( 'icon' => $instance['icon'], 'url' => $instance['url'], 'new_window' => $instance['new_window'], ); } }
siteorigin_widget_register( 'sow-icon', __FILE__, 'SiteOrigin_Widget_Icon_Widget' );
|