Version Description
- October 12 2018 =
- Added social icons widget.
Download this release
Release Info
Developer | iamadi |
Plugin | Widgets for SiteOrigin |
Version | 1.3.9 |
Comparing to | |
See all releases |
Code changes from version 1.3.8 to 1.3.9
- admin/admin.php +13 -2
- readme.txt +5 -2
- widgets-for-siteorigin.php +2 -2
- widgets/ink-barc-widget/styles/bar.less +3 -1
- widgets/ink-soci-widget/css/social-icons.css +13 -0
- widgets/ink-soci-widget/ink-soci-widget.php +262 -0
- widgets/ink-soci-widget/styles/social-icons.less +140 -0
- widgets/ink-soci-widget/tpl/social-icons.php +11 -0
admin/admin.php
CHANGED
@@ -111,17 +111,28 @@ function wpinked_so_admin_page_content() {
|
|
111 |
<p class="feature-content">The Flip Box widget is a simple and elegant combination of text and media. This widget is a fantastic way to highlight small bits of information, such as skills, features or services you offer.</p>
|
112 |
<p class="feature-links"><a href="http://widgets.wpinked.com/flip-box-widget/" target="_blank">Demo</a></p>
|
113 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
114 |
<div class="feature">
|
115 |
<h3 class="feature-title">Gallery</h3>
|
116 |
<p class="feature-content">Present your image collections in a visually rich masonry layout. It is complemented well with the lightbox feature.</p>
|
117 |
<p class="feature-links"><a href="http://widgets.wpinked.com/gallery-widget/" target="_blank">Demo</a></p>
|
118 |
</div>
|
119 |
-
<div class="row-sep"></div>
|
120 |
<div class="feature">
|
121 |
<h3 class="feature-title">Slider Pro</h3>
|
122 |
<p class="feature-content">This widget gives you is a great way to encourage trust from your visitors by displaying quotes from your customers. It fits snuggly in your Sales, Pricing or Home pages.</p>
|
123 |
<p class="feature-links"><a href="http://widgets.wpinked.com/slider-pro-widget/" target="_blank">Demo</a></p>
|
124 |
</div>
|
|
|
125 |
<div class="feature">
|
126 |
<h3 class="feature-title">Animations</h3>
|
127 |
<p class="feature-content">This feature gives you an easy way to animate widgets and rows. Choose from 18 different animation effects.</p>
|
@@ -131,11 +142,11 @@ function wpinked_so_admin_page_content() {
|
|
131 |
<h3 class="feature-title">Page Builder</h3>
|
132 |
<p class="feature-content">This feature enables the use of the page builder in tabs, accordions and filter accordions.</p>
|
133 |
</div>
|
134 |
-
<div class="row-sep"></div>
|
135 |
<div class="feature">
|
136 |
<h3 class="feature-title">Custom Fonts</h3>
|
137 |
<p class="feature-content">This feature lets you apply custom fonts to important elements in your widgets. Choose from hundreds of fonts.</p>
|
138 |
</div>
|
|
|
139 |
<div class="feature">
|
140 |
<h3 class="feature-title">Image Lightbox</h3>
|
141 |
<p class="feature-content">Let users have a closer look at photos and images with the image and gallery widgets.</p>
|
111 |
<p class="feature-content">The Flip Box widget is a simple and elegant combination of text and media. This widget is a fantastic way to highlight small bits of information, such as skills, features or services you offer.</p>
|
112 |
<p class="feature-links"><a href="http://widgets.wpinked.com/flip-box-widget/" target="_blank">Demo</a></p>
|
113 |
</div>
|
114 |
+
<div class="feature">
|
115 |
+
<h3 class="feature-title">Vertical Bar Counter</h3>
|
116 |
+
<p class="feature-content">Animated bars to display your stats.</p>
|
117 |
+
<p class="feature-links"><a href="http://widgets.wpinked.com/vertical-bar-counter-widget/" target="_blank">Demo</a></p>
|
118 |
+
</div>
|
119 |
+
<div class="row-sep"></div>
|
120 |
+
<div class="feature">
|
121 |
+
<h3 class="feature-title">Service Box</h3>
|
122 |
+
<p class="feature-content">List out services with their features in a visually pleasing list. You can also add an image or icon.</p>
|
123 |
+
<p class="feature-links"><a href="http://widgets.wpinked.com/service-box-widget/" target="_blank">Demo</a></p>
|
124 |
+
</div>
|
125 |
<div class="feature">
|
126 |
<h3 class="feature-title">Gallery</h3>
|
127 |
<p class="feature-content">Present your image collections in a visually rich masonry layout. It is complemented well with the lightbox feature.</p>
|
128 |
<p class="feature-links"><a href="http://widgets.wpinked.com/gallery-widget/" target="_blank">Demo</a></p>
|
129 |
</div>
|
|
|
130 |
<div class="feature">
|
131 |
<h3 class="feature-title">Slider Pro</h3>
|
132 |
<p class="feature-content">This widget gives you is a great way to encourage trust from your visitors by displaying quotes from your customers. It fits snuggly in your Sales, Pricing or Home pages.</p>
|
133 |
<p class="feature-links"><a href="http://widgets.wpinked.com/slider-pro-widget/" target="_blank">Demo</a></p>
|
134 |
</div>
|
135 |
+
<div class="row-sep"></div>
|
136 |
<div class="feature">
|
137 |
<h3 class="feature-title">Animations</h3>
|
138 |
<p class="feature-content">This feature gives you an easy way to animate widgets and rows. Choose from 18 different animation effects.</p>
|
142 |
<h3 class="feature-title">Page Builder</h3>
|
143 |
<p class="feature-content">This feature enables the use of the page builder in tabs, accordions and filter accordions.</p>
|
144 |
</div>
|
|
|
145 |
<div class="feature">
|
146 |
<h3 class="feature-title">Custom Fonts</h3>
|
147 |
<p class="feature-content">This feature lets you apply custom fonts to important elements in your widgets. Choose from hundreds of fonts.</p>
|
148 |
</div>
|
149 |
+
<div class="row-sep"></div>
|
150 |
<div class="feature">
|
151 |
<h3 class="feature-title">Image Lightbox</h3>
|
152 |
<p class="feature-content">Let users have a closer look at photos and images with the image and gallery widgets.</p>
|
readme.txt
CHANGED
@@ -2,8 +2,8 @@
|
|
2 |
Contributors: iamadi
|
3 |
Tags: bundle, widget, button, alert, accordion, audio, video, blog, divider, person, portfolio, tabs, testimonial, siteorigin
|
4 |
Requires at least: 3.9
|
5 |
-
Tested up to: 4.9.
|
6 |
-
Stable tag: 1.3.
|
7 |
License: GPLv3 or later
|
8 |
|
9 |
A collection of highly customizable and thoughtfully crafted widgets. Built on top of the SiteOrigin Widgets Bundle.
|
@@ -102,6 +102,9 @@ Once installed, you can choose to Active/Deactivate widget from Plugins -> SiteO
|
|
102 |
|
103 |
== Changelog ==
|
104 |
|
|
|
|
|
|
|
105 |
= 1.3.8 - August 02 2018 =
|
106 |
* Fixed permalink bug in blog widget.
|
107 |
|
2 |
Contributors: iamadi
|
3 |
Tags: bundle, widget, button, alert, accordion, audio, video, blog, divider, person, portfolio, tabs, testimonial, siteorigin
|
4 |
Requires at least: 3.9
|
5 |
+
Tested up to: 4.9.8
|
6 |
+
Stable tag: 1.3.9
|
7 |
License: GPLv3 or later
|
8 |
|
9 |
A collection of highly customizable and thoughtfully crafted widgets. Built on top of the SiteOrigin Widgets Bundle.
|
102 |
|
103 |
== Changelog ==
|
104 |
|
105 |
+
= 1.3.9 - October 12 2018 =
|
106 |
+
* Added social icons widget.
|
107 |
+
|
108 |
= 1.3.8 - August 02 2018 =
|
109 |
* Fixed permalink bug in blog widget.
|
110 |
|
widgets-for-siteorigin.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* Plugin Name: Widgets for SiteOrigin
|
5 |
* Plugin URI: http://widgets.wpinked.com/
|
6 |
* Description: A collection of highly customizable and thoughtfully crafted widgets. Built on top of the SiteOrigin Widgets Bundle.
|
7 |
-
* Version: 1.3.
|
8 |
* Author: wpinked
|
9 |
* Author URI: widgets.wpinked.com
|
10 |
* License: GPL-2.0+
|
@@ -18,7 +18,7 @@
|
|
18 |
*
|
19 |
*/
|
20 |
|
21 |
-
define( 'INKED_SO_VER', '1.3.
|
22 |
|
23 |
// Allow JS suffix to be pre-set
|
24 |
if ( ! defined( 'INKED_JS_SUFFIX' ) ) {
|
4 |
* Plugin Name: Widgets for SiteOrigin
|
5 |
* Plugin URI: http://widgets.wpinked.com/
|
6 |
* Description: A collection of highly customizable and thoughtfully crafted widgets. Built on top of the SiteOrigin Widgets Bundle.
|
7 |
+
* Version: 1.3.9
|
8 |
* Author: wpinked
|
9 |
* Author URI: widgets.wpinked.com
|
10 |
* License: GPL-2.0+
|
18 |
*
|
19 |
*/
|
20 |
|
21 |
+
define( 'INKED_SO_VER', '1.3.9' );
|
22 |
|
23 |
// Allow JS suffix to be pre-set
|
24 |
if ( ! defined( 'INKED_JS_SUFFIX' ) ) {
|
widgets/ink-barc-widget/styles/bar.less
CHANGED
@@ -21,7 +21,9 @@
|
|
21 |
border-radius: @radius;
|
22 |
|
23 |
.bar-border() when (@border = 1) {
|
24 |
-
border-width: 1px;
|
|
|
|
|
25 |
}
|
26 |
.bar-border();
|
27 |
|
21 |
border-radius: @radius;
|
22 |
|
23 |
.bar-border() when (@border = 1) {
|
24 |
+
border-width: 1px;
|
25 |
+
border-style: solid;
|
26 |
+
border-color: @bor-clr;
|
27 |
}
|
28 |
.bar-border();
|
29 |
|
widgets/ink-soci-widget/css/social-icons.css
ADDED
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.iw-so-social-icons .iw-so-social-icon {
|
2 |
+
text-decoration: none;
|
3 |
+
border: 2px solid transparent;
|
4 |
+
display: inline-block;
|
5 |
+
-webkit-transition: all 250ms ease-in;
|
6 |
+
-moz-transition: all 250ms ease-in;
|
7 |
+
transition: all 250ms ease-in; }
|
8 |
+
.iw-so-social-icons .iw-so-social-icon [class^="sow-icon-"] {
|
9 |
+
display: inline-block;
|
10 |
+
vertical-align: middle;
|
11 |
+
-webkit-transition: all 250ms ease-in;
|
12 |
+
-moz-transition: all 250ms ease-in;
|
13 |
+
transition: all 250ms ease-in; }
|
widgets/ink-soci-widget/ink-soci-widget.php
ADDED
@@ -0,0 +1,262 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/*
|
4 |
+
Widget Name: Inked Social Icons
|
5 |
+
Description: Redirect user to your social media profiles.
|
6 |
+
Author: wpinked
|
7 |
+
Author URI: https://wpinked.com
|
8 |
+
*/
|
9 |
+
|
10 |
+
class Inked_Social_Icons_SO_Widget extends SiteOrigin_Widget {
|
11 |
+
|
12 |
+
function __construct() {
|
13 |
+
|
14 |
+
parent::__construct(
|
15 |
+
'ink-social-icons',
|
16 |
+
__( 'Inked Social Icons', 'wpinked-widgets' ),
|
17 |
+
array(
|
18 |
+
'description' => __( 'Redirect user to your social media profiles.', 'wpinked-widgets' ),
|
19 |
+
'help' => 'https://wpinked.com/widgets-for-siteorigin-docs/#social-icons'
|
20 |
+
),
|
21 |
+
array(
|
22 |
+
),
|
23 |
+
false,
|
24 |
+
plugin_dir_path(__FILE__)
|
25 |
+
);
|
26 |
+
}
|
27 |
+
|
28 |
+
function get_widget_form() {
|
29 |
+
return array(
|
30 |
+
|
31 |
+
'icons' => array(
|
32 |
+
'type' => 'repeater',
|
33 |
+
'label' => __( 'Icons' , 'wpinked-widgets' ),
|
34 |
+
'item_name' => __( 'Icon', 'wpinked-widgets' ),
|
35 |
+
'item_label' => array(
|
36 |
+
'selector' => "[id*='network']",
|
37 |
+
'update_event' => 'change',
|
38 |
+
'value_method' => 'val'
|
39 |
+
),
|
40 |
+
'fields' => array(
|
41 |
+
|
42 |
+
'network' => array(
|
43 |
+
'type' => 'text',
|
44 |
+
'label' => __( 'Network', 'wpinked-widgets' ),
|
45 |
+
),
|
46 |
+
|
47 |
+
'icon' => array(
|
48 |
+
'type' => 'icon',
|
49 |
+
'label' => __( 'Icon', 'wpinked-widgets' ),
|
50 |
+
),
|
51 |
+
|
52 |
+
'link' => array(
|
53 |
+
'type' => 'link',
|
54 |
+
'label' => __( 'Link', 'wpinked-widgets' ),
|
55 |
+
'default' => ''
|
56 |
+
),
|
57 |
+
|
58 |
+
'color' => array(
|
59 |
+
'type' => 'color',
|
60 |
+
'label' => __( 'Icon Color', 'wpinked-widgets' ),
|
61 |
+
'default' => '',
|
62 |
+
'description' => __( 'Color of the icon.', 'wpinked-widgets' ),
|
63 |
+
),
|
64 |
+
|
65 |
+
'bg-color' => array(
|
66 |
+
'type' => 'color',
|
67 |
+
'label' => __( 'Icon Background Color', 'wpinked-widgets' ),
|
68 |
+
'default' => '',
|
69 |
+
),
|
70 |
+
|
71 |
+
'hover-color' => array(
|
72 |
+
'type' => 'color',
|
73 |
+
'label' => __( 'Icon Hover Color', 'wpinked-widgets' ),
|
74 |
+
'default' => '',
|
75 |
+
'description' => __( 'Hover color of the icon.', 'wpinked-widgets' ),
|
76 |
+
),
|
77 |
+
|
78 |
+
'hover-bg-color' => array(
|
79 |
+
'type' => 'color',
|
80 |
+
'label' => __( 'Icon Background Hover Color', 'wpinked-widgets' ),
|
81 |
+
'default' => '',
|
82 |
+
'description' => __( 'Hover color of the icon.', 'wpinked-widgets' ),
|
83 |
+
),
|
84 |
+
|
85 |
+
)
|
86 |
+
),
|
87 |
+
|
88 |
+
'styling' => array(
|
89 |
+
'type' => 'section',
|
90 |
+
'label' => __( 'Styling' , 'wpinked-widgets' ),
|
91 |
+
'hide' => true,
|
92 |
+
'fields' => array(
|
93 |
+
|
94 |
+
'alignment' => array(
|
95 |
+
'type' => 'select',
|
96 |
+
'label' => __( 'Alignment', 'wpinked-widgets' ),
|
97 |
+
'default' => 'center',
|
98 |
+
'options' => array(
|
99 |
+
'center' => __( 'Center', 'wpinked-widgets' ),
|
100 |
+
'left' => __( 'Left', 'wpinked-widgets' ),
|
101 |
+
'right' => __( 'Right', 'wpinked-widgets' ),
|
102 |
+
)
|
103 |
+
),
|
104 |
+
|
105 |
+
'size' => array(
|
106 |
+
'type' => 'measurement',
|
107 |
+
'label' => __( 'Icon Size', 'wpinked-widgets' ),
|
108 |
+
'default' => '30px',
|
109 |
+
),
|
110 |
+
|
111 |
+
'gap' => array(
|
112 |
+
'type' => 'measurement',
|
113 |
+
'label' => __( 'Gap between icons', 'wpinked-widgets' ),
|
114 |
+
'default' => '20px',
|
115 |
+
),
|
116 |
+
|
117 |
+
'padding' => array(
|
118 |
+
'type' => 'measurement',
|
119 |
+
'label' => __( 'Icon padding', 'wpinked-widgets' ),
|
120 |
+
'default' => '10px',
|
121 |
+
),
|
122 |
+
|
123 |
+
'design' => array(
|
124 |
+
'type' => 'select',
|
125 |
+
'label' => __( 'Design', 'wpinked-widgets' ),
|
126 |
+
'default' => 'cir',
|
127 |
+
'options' => array(
|
128 |
+
'cir' => __( 'Circle', 'wpinked-widgets' ),
|
129 |
+
'sq' => __( 'Square', 'wpinked-widgets' ),
|
130 |
+
'cirb' => __( 'Circle Bordered', 'wpinked-widgets' ),
|
131 |
+
'sqb' => __( 'Square Bordered', 'wpinked-widgets' ),
|
132 |
+
)
|
133 |
+
),
|
134 |
+
|
135 |
+
'default-color' => array(
|
136 |
+
'type' => 'color',
|
137 |
+
'label' => __( 'Icon Default Color', 'wpinked-widgets' ),
|
138 |
+
'default' => '#fff',
|
139 |
+
'description' => __( 'Default color of the icon.', 'wpinked-widgets' ),
|
140 |
+
),
|
141 |
+
|
142 |
+
'bg-color' => array(
|
143 |
+
'type' => 'color',
|
144 |
+
'label' => __( 'Default Icon Background Color', 'wpinked-widgets' ),
|
145 |
+
'default' => '#b9b9b9',
|
146 |
+
),
|
147 |
+
|
148 |
+
'hover-color' => array(
|
149 |
+
'type' => 'color',
|
150 |
+
'label' => __( 'Icon Default Hover Color', 'wpinked-widgets' ),
|
151 |
+
'default' => '#fff',
|
152 |
+
'description' => __( 'Default hover color of the icon.', 'wpinked-widgets' ),
|
153 |
+
),
|
154 |
+
|
155 |
+
'hover-bg-color' => array(
|
156 |
+
'type' => 'color',
|
157 |
+
'label' => __( 'Default Icon Background Color', 'wpinked-widgets' ),
|
158 |
+
'default' => '#000',
|
159 |
+
),
|
160 |
+
|
161 |
+
)
|
162 |
+
),
|
163 |
+
);
|
164 |
+
}
|
165 |
+
|
166 |
+
function get_template_name($instance) {
|
167 |
+
return 'social-icons';
|
168 |
+
}
|
169 |
+
|
170 |
+
function get_style_name($instance) {
|
171 |
+
return 'social-icons';
|
172 |
+
}
|
173 |
+
|
174 |
+
function initialize() {
|
175 |
+
|
176 |
+
$this->register_frontend_styles(
|
177 |
+
array(
|
178 |
+
array( 'iw-social-icons-css', plugin_dir_url(__FILE__) . 'css/social-icons.css', array(), INKED_SO_VER )
|
179 |
+
)
|
180 |
+
);
|
181 |
+
|
182 |
+
}
|
183 |
+
|
184 |
+
function get_less_variables($instance) {
|
185 |
+
|
186 |
+
if( empty( $instance ) ) return array();
|
187 |
+
|
188 |
+
$less_variables = array(
|
189 |
+
'gap' => $instance['styling']['gap'],
|
190 |
+
'padding' => $instance['styling']['padding'],
|
191 |
+
'design' => $instance['styling']['design'],
|
192 |
+
'size' => $instance['styling']['size'],
|
193 |
+
'default-color' => $instance['styling']['default-color'],
|
194 |
+
'hover-color' => $instance['styling']['hover-color'],
|
195 |
+
'bg-color' => $instance['styling']['bg-color'],
|
196 |
+
'hover-bg-color' => $instance['styling']['hover-bg-color'],
|
197 |
+
);
|
198 |
+
return $less_variables;
|
199 |
+
|
200 |
+
}
|
201 |
+
|
202 |
+
private function get_instance_icons( $instance ) {
|
203 |
+
if ( isset( $instance['icons'] ) && ! empty( $instance['icons'] ) ) {
|
204 |
+
$networks = $instance['icons'];
|
205 |
+
} else {
|
206 |
+
$networks = array();
|
207 |
+
}
|
208 |
+
return apply_filters( 'ink_so_social_media_icons', $networks, $instance );
|
209 |
+
}
|
210 |
+
|
211 |
+
function less_generate_calls_to( $instance, $args ) {
|
212 |
+
$icons = $this->get_instance_icons( $instance );
|
213 |
+
$calls = array();
|
214 |
+
foreach ( $icons as $icon ) {
|
215 |
+
if ( ! empty( $icon['network'] ) ) {
|
216 |
+
$call = $args[0] . '( @name:' . $icon['network'];
|
217 |
+
$call .= ! empty( $icon['color'] ) ? ', @icon-color:' . $icon['color'] : '';
|
218 |
+
$call .= ! empty( $icon['bg-color'] ) ? ', @icon-bg-color:' . $icon['bg-color'] : '';
|
219 |
+
$call .= ! empty( $icon['hover-color'] ) ? ', @icon-hover-color:' . $icon['hover-color'] : '';
|
220 |
+
$call .= ! empty( $icon['hover-bg-color'] ) ? ', @icon-hover-bg-color:' . $icon['hover-bg-color'] : '';
|
221 |
+
$call .= ');';
|
222 |
+
$calls[] = $call;
|
223 |
+
}
|
224 |
+
}
|
225 |
+
|
226 |
+
return implode( "\n", $calls );
|
227 |
+
}
|
228 |
+
|
229 |
+
/**
|
230 |
+
* This is used to generate the hash of the instance.
|
231 |
+
*
|
232 |
+
* @param $instance
|
233 |
+
*
|
234 |
+
* @return array
|
235 |
+
*/
|
236 |
+
protected function get_style_hash_variables( $instance ){
|
237 |
+
$networks = $this->get_instance_icons($instance);
|
238 |
+
|
239 |
+
foreach($networks as $i => $network) {
|
240 |
+
// URL is not important for the styling
|
241 |
+
unset($networks[$i]['link']);
|
242 |
+
}
|
243 |
+
|
244 |
+
return array(
|
245 |
+
'less' => $this->get_less_variables($instance),
|
246 |
+
'icons' => $networks
|
247 |
+
);
|
248 |
+
}
|
249 |
+
|
250 |
+
function get_template_variables( $instance, $args ) {
|
251 |
+
|
252 |
+
if( empty( $instance ) ) return array();
|
253 |
+
|
254 |
+
return array(
|
255 |
+
'icons' => $instance['icons'],
|
256 |
+
'align' => $instance['styling']['alignment'],
|
257 |
+
);
|
258 |
+
}
|
259 |
+
|
260 |
+
}
|
261 |
+
|
262 |
+
siteorigin_widget_register( 'ink-social-icons', __FILE__, 'Inked_Social_Icons_SO_Widget' );
|
widgets/ink-soci-widget/styles/social-icons.less
ADDED
@@ -0,0 +1,140 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
@import "../mixins/less/mixins";
|
2 |
+
|
3 |
+
@gap: 20px;
|
4 |
+
@padding: 10px;
|
5 |
+
@design: 'cir';
|
6 |
+
@size: 30px;
|
7 |
+
@default-color: #fff;
|
8 |
+
@bg-color: #b9b9b9;
|
9 |
+
@hover-color: #fff;
|
10 |
+
@hover-bg-color: #000;
|
11 |
+
|
12 |
+
.iw-so-social-icons {
|
13 |
+
.iw-so-social-icon {
|
14 |
+
margin-right: @gap;
|
15 |
+
padding: @padding;
|
16 |
+
|
17 |
+
&:last-child {
|
18 |
+
margin-right: 0;
|
19 |
+
}
|
20 |
+
|
21 |
+
[class^="sow-icon-"] {
|
22 |
+
font-size: @size;
|
23 |
+
color: @default-color;
|
24 |
+
width: @size;
|
25 |
+
height: @size;
|
26 |
+
}
|
27 |
+
|
28 |
+
&:hover {
|
29 |
+
[class^="sow-icon-"] {
|
30 |
+
color: @hover-color;
|
31 |
+
}
|
32 |
+
}
|
33 |
+
|
34 |
+
.design() when (@design = cir) {
|
35 |
+
border-radius: 50%;
|
36 |
+
background: @bg-color;
|
37 |
+
|
38 |
+
&:hover {
|
39 |
+
background: @hover-bg-color;
|
40 |
+
}
|
41 |
+
}
|
42 |
+
.design() when (@design = sq) {
|
43 |
+
background: @bg-color;
|
44 |
+
|
45 |
+
&:hover {
|
46 |
+
background: @hover-bg-color;
|
47 |
+
}
|
48 |
+
}
|
49 |
+
.design() when (@design = cirb) {
|
50 |
+
border-radius: 50%;
|
51 |
+
border-color: @bg-color;
|
52 |
+
|
53 |
+
&:hover {
|
54 |
+
background: @hover-bg-color;
|
55 |
+
border-color: @hover-bg-color;
|
56 |
+
}
|
57 |
+
}
|
58 |
+
.design() when (@design = sqb) {
|
59 |
+
border-color: @bg-color;
|
60 |
+
|
61 |
+
&:hover {
|
62 |
+
background: @hover-bg-color;
|
63 |
+
border-color: @hover-bg-color;
|
64 |
+
}
|
65 |
+
}
|
66 |
+
.design();
|
67 |
+
}
|
68 |
+
}
|
69 |
+
|
70 |
+
.widget-function('generate_calls_to', .create_social_media_icon_style);
|
71 |
+
|
72 |
+
.create_social_media_icon_style(@name, @icon-color:'', @icon-bg-color:'', @icon-hover-color:'', @icon-hover-bg-color:'') {
|
73 |
+
|
74 |
+
.iw-so-social-icons {
|
75 |
+
.iw-so-social-icon-@{name} {
|
76 |
+
|
77 |
+
.design_icon() when (@design = cir) {
|
78 |
+
border-radius: 50%;
|
79 |
+
background: @icon-bg-color;
|
80 |
+
[class^="sow-icon-"] {
|
81 |
+
color: @icon-color;
|
82 |
+
}
|
83 |
+
|
84 |
+
&:hover {
|
85 |
+
background: @icon-hover-bg-color;
|
86 |
+
[class^="sow-icon-"] {
|
87 |
+
color: @icon-hover-color;
|
88 |
+
}
|
89 |
+
}
|
90 |
+
}
|
91 |
+
.design_icon() when (@design = sq) {
|
92 |
+
background: @icon-bg-color;
|
93 |
+
color: @icon-color;
|
94 |
+
[class^="sow-icon-"] {
|
95 |
+
color: @icon-color;
|
96 |
+
}
|
97 |
+
|
98 |
+
&:hover {
|
99 |
+
background: @icon-hover-bg-color;
|
100 |
+
[class^="sow-icon-"] {
|
101 |
+
color: @icon-hover-color;
|
102 |
+
}
|
103 |
+
}
|
104 |
+
}
|
105 |
+
.design_icon() when (@design = cirb) {
|
106 |
+
border-radius: 50%;
|
107 |
+
border-color: @icon-bg-color;
|
108 |
+
color: @icon-color;
|
109 |
+
[class^="sow-icon-"] {
|
110 |
+
color: @icon-color;
|
111 |
+
}
|
112 |
+
|
113 |
+
&:hover {
|
114 |
+
background: @icon-hover-bg-color;
|
115 |
+
border-color: @icon-hover-bg-color;
|
116 |
+
[class^="sow-icon-"] {
|
117 |
+
color: @icon-hover-color;
|
118 |
+
}
|
119 |
+
}
|
120 |
+
}
|
121 |
+
.design_icon() when (@design = sqb) {
|
122 |
+
border-color: @icon-bg-color;
|
123 |
+
color: @icon-color;
|
124 |
+
[class^="sow-icon-"] {
|
125 |
+
color: @icon-color;
|
126 |
+
}
|
127 |
+
|
128 |
+
&:hover {
|
129 |
+
background: @icon-hover-bg-color;
|
130 |
+
border-color: @icon-hover-bg-color;
|
131 |
+
[class^="sow-icon-"] {
|
132 |
+
color: @icon-hover-color;
|
133 |
+
}
|
134 |
+
}
|
135 |
+
}
|
136 |
+
.design_icon();
|
137 |
+
|
138 |
+
}
|
139 |
+
}
|
140 |
+
}
|
widgets/ink-soci-widget/tpl/social-icons.php
ADDED
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<div class="iw-so-social-icons iw-text-<?php echo $align; ?>">
|
2 |
+
|
3 |
+
<?php foreach( $icons as $icon ) { ?>
|
4 |
+
|
5 |
+
<a href="<?php echo sow_esc_url( $icon['link'] ); ?>" class="iw-so-social-icon iw-so-social-icon-<?php echo $icon['network']; ?>">
|
6 |
+
<?php echo siteorigin_widget_get_icon( $icon['icon'] ); ?>
|
7 |
+
</a>
|
8 |
+
|
9 |
+
<?php } ?>
|
10 |
+
|
11 |
+
</div>
|