Version Description
Upgrade normally via your Wordpress admin -> Plugins panel.
Download this release
Release Info
| Developer | gn_themes |
| Plugin | |
| Version | 1.0.0 |
| Comparing to | |
| See all releases | |
Version 1.0.0
- css/style.css +293 -0
- images/box-title.png +0 -0
- images/button-style-1.png +0 -0
- images/button-style-2.png +0 -0
- images/list-style-arrow.png +0 -0
- images/list-style-check.png +0 -0
- images/list-style-cross.png +0 -0
- images/list-style-star.png +0 -0
- images/quote-shell.png +0 -0
- images/quote.png +0 -0
- images/service.png +0 -0
- images/spoiler-closed.png +0 -0
- images/spoiler-open.png +0 -0
- js/init.js +21 -0
- languages/ru_RU.mo +0 -0
- languages/ru_RU.po +391 -0
- readme.txt +62 -0
- screenshot-1.png +0 -0
- screenshot-2.png +0 -0
- shortcodes-ultimate.php +520 -0
css/style.css
ADDED
|
@@ -0,0 +1,293 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/* Spacer */
|
| 2 |
+
.su-spacer {
|
| 3 |
+
display: block;
|
| 4 |
+
height: 0px;
|
| 5 |
+
line-height: 0px;
|
| 6 |
+
clear: both;
|
| 7 |
+
}
|
| 8 |
+
.su-spacer-5 { height: 5px }
|
| 9 |
+
.su-spacer-10 { height: 10px }
|
| 10 |
+
.su-spacer-20 { height: 20px }
|
| 11 |
+
.su-spacer-30 { height: 30px }
|
| 12 |
+
.su-spacer-40 { height: 40px }
|
| 13 |
+
|
| 14 |
+
/* Heading */
|
| 15 |
+
.su-heading {
|
| 16 |
+
margin: 0 0 1.5em 0;
|
| 17 |
+
padding: 2px 0;
|
| 18 |
+
border-top: 1px solid #999;
|
| 19 |
+
border-bottom: 1px solid #999;
|
| 20 |
+
}
|
| 21 |
+
.su-heading-shell {
|
| 22 |
+
padding: 20px 0;
|
| 23 |
+
text-align: center;
|
| 24 |
+
border-top: 4px solid #eee;
|
| 25 |
+
border-bottom: 4px solid #eee;
|
| 26 |
+
font-size: 1.5em;
|
| 27 |
+
}
|
| 28 |
+
|
| 29 |
+
/* Quote */
|
| 30 |
+
.su-quote {
|
| 31 |
+
padding: 1em 0 0 40px;
|
| 32 |
+
margin: 0 0 1.5em 0;
|
| 33 |
+
}
|
| 34 |
+
.su-quote-shell {
|
| 35 |
+
padding: 0 40px 1em 0;
|
| 36 |
+
font-style: italic;
|
| 37 |
+
}
|
| 38 |
+
.su-quote-style-1 {
|
| 39 |
+
background: 0 0 url(../images/quote.png) no-repeat;
|
| 40 |
+
}
|
| 41 |
+
.su-quote-style-1 .su-quote-shell {
|
| 42 |
+
background: 100% 100% url(../images/quote-shell.png) no-repeat;
|
| 43 |
+
}
|
| 44 |
+
|
| 45 |
+
/* Pullquote */
|
| 46 |
+
.su-pullquote {
|
| 47 |
+
padding: 10px 25px;
|
| 48 |
+
width: 30%;
|
| 49 |
+
font-size: 0.9em;
|
| 50 |
+
font-style: italic;
|
| 51 |
+
margin: 1em;
|
| 52 |
+
}
|
| 53 |
+
.su-pullquote-align-left {
|
| 54 |
+
float: left;
|
| 55 |
+
}
|
| 56 |
+
.su-pullquote-align-right {
|
| 57 |
+
float: right;
|
| 58 |
+
}
|
| 59 |
+
.su-pullquote-style-1 {
|
| 60 |
+
border-left: 5px solid #ddd;
|
| 61 |
+
}
|
| 62 |
+
|
| 63 |
+
/* Frame */
|
| 64 |
+
.su-frame {
|
| 65 |
+
padding: 2px;
|
| 66 |
+
border: 1px solid #999;
|
| 67 |
+
background: #fff;
|
| 68 |
+
box-shadow: 1px 1px 4px #ccc;
|
| 69 |
+
-moz-box-shadow: 1px 1px 4px #ccc;
|
| 70 |
+
-webkit-box-shadow: 1px 1px 4px #ccc;
|
| 71 |
+
}
|
| 72 |
+
.su-frame-shell {
|
| 73 |
+
padding: 2px;
|
| 74 |
+
border: 4px solid #eee;
|
| 75 |
+
}
|
| 76 |
+
.su-frame-align-left {
|
| 77 |
+
float: left;
|
| 78 |
+
margin: 0 1.5em 1em 0;
|
| 79 |
+
}
|
| 80 |
+
.su-frame-align-right {
|
| 81 |
+
float: right;
|
| 82 |
+
margin: 0 0 1em 1.5em;
|
| 83 |
+
}
|
| 84 |
+
.su-frame-align-center {
|
| 85 |
+
margin: 0 auto 1.5em auto;
|
| 86 |
+
}
|
| 87 |
+
.su-frame-align-none {
|
| 88 |
+
margin: 0 0 1.5em 0;
|
| 89 |
+
}
|
| 90 |
+
.su-frame img {
|
| 91 |
+
display: block !important;
|
| 92 |
+
padding: 0 !important;
|
| 93 |
+
margin: 0 !important;
|
| 94 |
+
}
|
| 95 |
+
|
| 96 |
+
/* Divider */
|
| 97 |
+
.su-divider {
|
| 98 |
+
clear: both;
|
| 99 |
+
height: 0px;
|
| 100 |
+
margin: 1.5em 0;
|
| 101 |
+
border-top: 4px solid #eee;
|
| 102 |
+
}
|
| 103 |
+
.su-divider a {
|
| 104 |
+
display: block;
|
| 105 |
+
float: right;
|
| 106 |
+
padding-left: 10px;
|
| 107 |
+
margin-top: -1.2em;
|
| 108 |
+
background: #fff;
|
| 109 |
+
color: #777;
|
| 110 |
+
font-size: 0.8em;
|
| 111 |
+
text-decoration: none;
|
| 112 |
+
text-transform: uppercase;
|
| 113 |
+
}
|
| 114 |
+
|
| 115 |
+
/* Columns */
|
| 116 |
+
.su-column-1-2 { width: 48% }
|
| 117 |
+
.su-column-1-3 { width: 30.66% }
|
| 118 |
+
.su-column-2-3 { width: 65.33% }
|
| 119 |
+
.su-column-1-4 { width: 22% }
|
| 120 |
+
.su-column-3-4 { width: 74% }
|
| 121 |
+
.su-column-1-5 { width: 16.8% }
|
| 122 |
+
.su-column-2-5 { width: 37.6% }
|
| 123 |
+
.su-column-3-5 { width: 58.4% }
|
| 124 |
+
.su-column-4-5 { width: 67.2% }
|
| 125 |
+
.su-column-1-6 { width: 13.33% }
|
| 126 |
+
.su-column-5-6 { width: 82.67% }
|
| 127 |
+
.su-column-1-2,
|
| 128 |
+
.su-column-1-3,
|
| 129 |
+
.su-column-2-3,
|
| 130 |
+
.su-column-3-4,
|
| 131 |
+
.su-column-1-4,
|
| 132 |
+
.su-column-1-5,
|
| 133 |
+
.su-column-2-5,
|
| 134 |
+
.su-column-3-5,
|
| 135 |
+
.su-column-4-5,
|
| 136 |
+
.su-column-1-6,
|
| 137 |
+
.su-column-5-6 {
|
| 138 |
+
position: relative;
|
| 139 |
+
margin-right: 4%;
|
| 140 |
+
float: left;
|
| 141 |
+
}
|
| 142 |
+
.su-column-last {
|
| 143 |
+
margin-right: 0 !important;
|
| 144 |
+
clear: right;
|
| 145 |
+
}
|
| 146 |
+
|
| 147 |
+
/* Spoiler */
|
| 148 |
+
.su-spoiler {
|
| 149 |
+
margin: 0 0 1.5em 0;
|
| 150 |
+
}
|
| 151 |
+
.su-spoiler-title {
|
| 152 |
+
padding: 0.3em 0 0.3em 26px;
|
| 153 |
+
font-weight: bold;
|
| 154 |
+
background: 0 50% url(../images/spoiler-closed.png) no-repeat;
|
| 155 |
+
cursor: pointer;
|
| 156 |
+
}
|
| 157 |
+
.su-spoiler-content {
|
| 158 |
+
padding: 15px 0;
|
| 159 |
+
display: none;
|
| 160 |
+
}
|
| 161 |
+
.su-spoiler-open .su-spoiler-title {
|
| 162 |
+
background: 0 50% url(../images/spoiler-open.png) no-repeat;
|
| 163 |
+
}
|
| 164 |
+
.su-spoiler-open .su-spoiler-content {
|
| 165 |
+
display: block;
|
| 166 |
+
}
|
| 167 |
+
|
| 168 |
+
/* Tabs */
|
| 169 |
+
.su-tabs { margin: 0 0 1.5em 0 }
|
| 170 |
+
.su-tabs-nav {
|
| 171 |
+
padding: 5px 5px 0 5px;
|
| 172 |
+
margin: 0;
|
| 173 |
+
height: 40px;
|
| 174 |
+
background: #e5e5e5;
|
| 175 |
+
}
|
| 176 |
+
.su-tabs-nav span {
|
| 177 |
+
display: block;
|
| 178 |
+
float: left;
|
| 179 |
+
padding: 0 20px;
|
| 180 |
+
height: 39px;
|
| 181 |
+
line-height: 39px;
|
| 182 |
+
margin-right: 5px;
|
| 183 |
+
cursor: pointer;
|
| 184 |
+
border-top: 1px solid #fff;
|
| 185 |
+
border-right: 1px solid #fff;
|
| 186 |
+
border-left: 1px solid #fff;
|
| 187 |
+
background: #f1f1f1;
|
| 188 |
+
}
|
| 189 |
+
.su-tabs-nav span:hover { background: #fff }
|
| 190 |
+
.su-tabs-nav span.su-tabs-current { background: #fff }
|
| 191 |
+
.su-tabs-pane {
|
| 192 |
+
padding: 15px;
|
| 193 |
+
border-right: 5px solid #e5e5e5;
|
| 194 |
+
border-bottom: 5px solid #e5e5e5;
|
| 195 |
+
border-left: 5px solid #e5e5e5;
|
| 196 |
+
}
|
| 197 |
+
|
| 198 |
+
/* Lists */
|
| 199 |
+
.su-list ul {
|
| 200 |
+
list-style-type: none;
|
| 201 |
+
margin: 0.5em 0 1.5em 0.5em;
|
| 202 |
+
padding: 0;
|
| 203 |
+
}
|
| 204 |
+
.su-list li {
|
| 205 |
+
list-style-type: none;
|
| 206 |
+
display: block;
|
| 207 |
+
padding: 3px 0 3px 22px;
|
| 208 |
+
}
|
| 209 |
+
.su-list-style-star li { background: 0 50% url(../images/list-style-star.png) no-repeat }
|
| 210 |
+
.su-list-style-arrow li { background: 0 50% url(../images/list-style-arrow.png) no-repeat }
|
| 211 |
+
.su-list-style-check li { background: 0 50% url(../images/list-style-check.png) no-repeat }
|
| 212 |
+
.su-list-style-cross li { background: 0 50% url(../images/list-style-cross.png) no-repeat }
|
| 213 |
+
|
| 214 |
+
/* Box */
|
| 215 |
+
.su-box {
|
| 216 |
+
margin: 0 0 1.5em 0;
|
| 217 |
+
}
|
| 218 |
+
.su-box-title {
|
| 219 |
+
display: block;
|
| 220 |
+
padding: 10px 15px;
|
| 221 |
+
margin: 0;
|
| 222 |
+
color: #fff;
|
| 223 |
+
font-size: 1.1em;
|
| 224 |
+
font-weight: bold;
|
| 225 |
+
background: left bottom url(../images/box-title.png) repeat-x;
|
| 226 |
+
}
|
| 227 |
+
.su-box-content {
|
| 228 |
+
background: #fff;
|
| 229 |
+
padding: 15px;
|
| 230 |
+
}
|
| 231 |
+
|
| 232 |
+
/* Note */
|
| 233 |
+
.su-note {
|
| 234 |
+
margin: 0 0 1.5em 0;
|
| 235 |
+
}
|
| 236 |
+
.su-note-shell {
|
| 237 |
+
padding: 15px;
|
| 238 |
+
}
|
| 239 |
+
|
| 240 |
+
/* Highlight */
|
| 241 |
+
.su-highlight {
|
| 242 |
+
display: inline;
|
| 243 |
+
padding: 1px 0;
|
| 244 |
+
}
|
| 245 |
+
|
| 246 |
+
/* Button */
|
| 247 |
+
.su-button {
|
| 248 |
+
display: inline-block;
|
| 249 |
+
text-decoration: none !important;
|
| 250 |
+
}
|
| 251 |
+
.su-button span {
|
| 252 |
+
display: block;
|
| 253 |
+
text-decoration: none !important;
|
| 254 |
+
}
|
| 255 |
+
|
| 256 |
+
.su-button-style-1 span {
|
| 257 |
+
background: 0 -20px url(../images/button-style-1.png) repeat-x;
|
| 258 |
+
}
|
| 259 |
+
.su-button-style-1:hover span {
|
| 260 |
+
background: 0 0 url(../images/button-style-1.png) repeat-x;
|
| 261 |
+
}
|
| 262 |
+
|
| 263 |
+
.su-button-style-2 span {
|
| 264 |
+
background: 0 50% url(../images/button-style-2.png) repeat-x;
|
| 265 |
+
}
|
| 266 |
+
.su-button-style-2:hover span {
|
| 267 |
+
background: 100% 50% url(../images/button-style-2.png) repeat-x;
|
| 268 |
+
}
|
| 269 |
+
|
| 270 |
+
/* Services */
|
| 271 |
+
.su-service {
|
| 272 |
+
position: relative;
|
| 273 |
+
margin: 0 0 1.5em 0;
|
| 274 |
+
}
|
| 275 |
+
.su-service-title {
|
| 276 |
+
display: block;
|
| 277 |
+
height: 16px;
|
| 278 |
+
line-height: 16px;
|
| 279 |
+
margin: 0 0 5px 0;
|
| 280 |
+
color: #333;
|
| 281 |
+
font-size: 1.2em;
|
| 282 |
+
font-weight: bold;
|
| 283 |
+
}
|
| 284 |
+
.su-service-title img {
|
| 285 |
+
position: absolute;
|
| 286 |
+
top: 0;
|
| 287 |
+
left: 0;
|
| 288 |
+
display: block !important;
|
| 289 |
+
border: none !important;
|
| 290 |
+
margin: 0 !important;
|
| 291 |
+
padding: 0 !important;
|
| 292 |
+
}
|
| 293 |
+
.su-service-content { line-height: 1.4 }
|
images/box-title.png
ADDED
|
Binary file
|
images/button-style-1.png
ADDED
|
Binary file
|
images/button-style-2.png
ADDED
|
Binary file
|
images/list-style-arrow.png
ADDED
|
Binary file
|
images/list-style-check.png
ADDED
|
Binary file
|
images/list-style-cross.png
ADDED
|
Binary file
|
images/list-style-star.png
ADDED
|
Binary file
|
images/quote-shell.png
ADDED
|
Binary file
|
images/quote.png
ADDED
|
Binary file
|
images/service.png
ADDED
|
Binary file
|
images/spoiler-closed.png
ADDED
|
Binary file
|
images/spoiler-open.png
ADDED
|
Binary file
|
js/init.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
jQuery(document).ready(function($) {
|
| 2 |
+
|
| 3 |
+
// Frame
|
| 4 |
+
$('.su-frame-align-center').each(function() {
|
| 5 |
+
var frame_width = $(this).find('img').width();
|
| 6 |
+
$(this).css('width', frame_width + 12);
|
| 7 |
+
});
|
| 8 |
+
|
| 9 |
+
// Spoiler
|
| 10 |
+
$('.su-spoiler').removeClass('su-spoiler-open');
|
| 11 |
+
$('.su-spoiler .su-spoiler-title').click(function() {
|
| 12 |
+
$(this).parent('.su-spoiler').toggleClass('su-spoiler-open');
|
| 13 |
+
});
|
| 14 |
+
|
| 15 |
+
// Tabs
|
| 16 |
+
$('.su-tabs .su-tabs-pane').hide().filter(':first').show();
|
| 17 |
+
$('.su-tabs-nav span').filter(':first').addClass('su-tabs-current');
|
| 18 |
+
$('.su-tabs-nav').delegate('span:not(.su-tabs-current)', 'click', function() {
|
| 19 |
+
$(this).addClass('su-tabs-current').siblings().removeClass('su-tabs-current').parents('.su-tabs').find('.su-tabs-pane').hide().eq($(this).index()).show();
|
| 20 |
+
});
|
| 21 |
+
});
|
languages/ru_RU.mo
ADDED
|
Binary file
|
languages/ru_RU.po
ADDED
|
@@ -0,0 +1,391 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
msgid ""
|
| 2 |
+
msgstr ""
|
| 3 |
+
"Project-Id-Version: gn_themes\n"
|
| 4 |
+
"Report-Msgid-Bugs-To: \n"
|
| 5 |
+
"POT-Creation-Date: 2011-04-06 16:10+0300\n"
|
| 6 |
+
"PO-Revision-Date: 2011-04-06 16:11+0300\n"
|
| 7 |
+
"Last-Translator: Vladimir Anokhin <ano.vladimir@gmail.com>\n"
|
| 8 |
+
"Language-Team: \n"
|
| 9 |
+
"MIME-Version: 1.0\n"
|
| 10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
| 11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
| 12 |
+
"X-Poedit-KeywordsList: _e;__\n"
|
| 13 |
+
"X-Poedit-Basepath: ..\n"
|
| 14 |
+
"X-Poedit-SourceCharset: utf-8\n"
|
| 15 |
+
"X-Poedit-SearchPath-0: .\n"
|
| 16 |
+
|
| 17 |
+
#: shortcodes-ultimate.php:87
|
| 18 |
+
msgid "Spoiler title"
|
| 19 |
+
msgstr "Скрытый текст"
|
| 20 |
+
|
| 21 |
+
#: shortcodes-ultimate.php:105
|
| 22 |
+
msgid "Top"
|
| 23 |
+
msgstr "Вверх"
|
| 24 |
+
|
| 25 |
+
#: shortcodes-ultimate.php:274
|
| 26 |
+
msgid "Service name"
|
| 27 |
+
msgstr "Название услуги"
|
| 28 |
+
|
| 29 |
+
#: shortcodes-ultimate.php:292
|
| 30 |
+
msgid "This is box title"
|
| 31 |
+
msgstr "Заголовок блока"
|
| 32 |
+
|
| 33 |
+
#~ msgid ""
|
| 34 |
+
#~ "The page you've requested can not be displayed. It appears you've missed "
|
| 35 |
+
#~ "your intended destination, either through a bad or outdated link, or a "
|
| 36 |
+
#~ "typo in the page you were hoping to reach."
|
| 37 |
+
#~ msgstr "Страница, которую Вы запросили, не может быть отображена."
|
| 38 |
+
|
| 39 |
+
#~ msgid "Use the search box in the header to search for what you want."
|
| 40 |
+
#~ msgstr "Вы можете воспользоваться формой поиска вверху страницы."
|
| 41 |
+
|
| 42 |
+
#~ msgid "You can also <a href=\"%s\">return home</a>"
|
| 43 |
+
#~ msgstr "Также Вы можете <a href=\"%s\">вернуться на главную страницу</a>"
|
| 44 |
+
|
| 45 |
+
#~ msgid ""
|
| 46 |
+
#~ "And if you think this is our mistake, you can also contact us. We'll be "
|
| 47 |
+
#~ "thankful."
|
| 48 |
+
#~ msgstr ""
|
| 49 |
+
#~ "Если Вы считаете, что это наша ошибка, пожалуйста напишите нам. Мы будем "
|
| 50 |
+
#~ "благодарны."
|
| 51 |
+
|
| 52 |
+
#~ msgid "Leave comment"
|
| 53 |
+
#~ msgstr "Оставить комментарий"
|
| 54 |
+
|
| 55 |
+
#~ msgid "1 comment"
|
| 56 |
+
#~ msgstr "1 комментарий"
|
| 57 |
+
|
| 58 |
+
#~ msgid "comments"
|
| 59 |
+
#~ msgstr "комментариев"
|
| 60 |
+
|
| 61 |
+
#~ msgid "Previous page"
|
| 62 |
+
#~ msgstr "« Назад"
|
| 63 |
+
|
| 64 |
+
#~ msgid "Next page"
|
| 65 |
+
#~ msgstr "Вперед »"
|
| 66 |
+
|
| 67 |
+
#~ msgid ""
|
| 68 |
+
#~ "This post is password protected. Enter the password to view comments."
|
| 69 |
+
#~ msgstr "Эта запись защищена паролем!"
|
| 70 |
+
|
| 71 |
+
#~ msgid "No comments yet"
|
| 72 |
+
#~ msgstr "Пока нет комментариев"
|
| 73 |
+
|
| 74 |
+
#~ msgid "on"
|
| 75 |
+
#~ msgstr "на"
|
| 76 |
+
|
| 77 |
+
#~ msgid "Leave comment for %s"
|
| 78 |
+
#~ msgstr "Оставить комментарий для %s"
|
| 79 |
+
|
| 80 |
+
#~ msgid "Logged in as %s. %s Log out %s"
|
| 81 |
+
#~ msgstr "Вы вошли как %s. %s Выйти? %s"
|
| 82 |
+
|
| 83 |
+
#~ msgid "Name"
|
| 84 |
+
#~ msgstr "Имя"
|
| 85 |
+
|
| 86 |
+
#~ msgid "(required)"
|
| 87 |
+
#~ msgstr "*обязательно"
|
| 88 |
+
|
| 89 |
+
#~ msgid "Mail (will not be published)"
|
| 90 |
+
#~ msgstr "Эл. почта"
|
| 91 |
+
|
| 92 |
+
#~ msgid "Website"
|
| 93 |
+
#~ msgstr "Веб сайт"
|
| 94 |
+
|
| 95 |
+
#~ msgid "Submit Comment"
|
| 96 |
+
#~ msgstr "Оставить комментрий"
|
| 97 |
+
|
| 98 |
+
#~ msgid "Footer 1"
|
| 99 |
+
#~ msgstr "Подвал 1"
|
| 100 |
+
|
| 101 |
+
#~ msgid "No widgets"
|
| 102 |
+
#~ msgstr "Нет виджетов"
|
| 103 |
+
|
| 104 |
+
#~ msgid "Add widget"
|
| 105 |
+
#~ msgstr "Добавьте виджет"
|
| 106 |
+
|
| 107 |
+
#~ msgid "Footer 2"
|
| 108 |
+
#~ msgstr "Подвал 2"
|
| 109 |
+
|
| 110 |
+
#~ msgid "Footer 3"
|
| 111 |
+
#~ msgstr "Подвал 3"
|
| 112 |
+
|
| 113 |
+
#~ msgid "Footer 4"
|
| 114 |
+
#~ msgstr "Подвал 4"
|
| 115 |
+
|
| 116 |
+
#~ msgid "Sidebar"
|
| 117 |
+
#~ msgstr "Сайдбар"
|
| 118 |
+
|
| 119 |
+
#~ msgid "Blog sidebar"
|
| 120 |
+
#~ msgstr "Сайдбар блога"
|
| 121 |
+
|
| 122 |
+
#~ msgid "Footer widgetized area 1"
|
| 123 |
+
#~ msgstr "Виджет-зона подвала 1"
|
| 124 |
+
|
| 125 |
+
#~ msgid "Footer widgetized area 2"
|
| 126 |
+
#~ msgstr "Виджет-зона подвала 2"
|
| 127 |
+
|
| 128 |
+
#~ msgid "Footer widgetized area 3"
|
| 129 |
+
#~ msgstr "Виджет-зона подвала 3"
|
| 130 |
+
|
| 131 |
+
#~ msgid "Footer widgetized area 4"
|
| 132 |
+
#~ msgstr "Виджет-зона подвала 4"
|
| 133 |
+
|
| 134 |
+
#~ msgid "Page not found"
|
| 135 |
+
#~ msgstr "Страница не найдена"
|
| 136 |
+
|
| 137 |
+
#~ msgid "Search results"
|
| 138 |
+
#~ msgstr "Результаты поиска"
|
| 139 |
+
|
| 140 |
+
#~ msgid "Nothing found"
|
| 141 |
+
#~ msgstr "Ничего не найдено"
|
| 142 |
+
|
| 143 |
+
#~ msgid "Search..."
|
| 144 |
+
#~ msgstr "Поиск..."
|
| 145 |
+
|
| 146 |
+
#~ msgid "Find"
|
| 147 |
+
#~ msgstr "Найти"
|
| 148 |
+
|
| 149 |
+
#~ msgid "Entire site"
|
| 150 |
+
#~ msgstr "По всему сайту"
|
| 151 |
+
|
| 152 |
+
#~ msgid "Blog"
|
| 153 |
+
#~ msgstr "Блог"
|
| 154 |
+
|
| 155 |
+
#~ msgid "Portfolio"
|
| 156 |
+
#~ msgstr "Портфолио"
|
| 157 |
+
|
| 158 |
+
#~ msgid "<strong>Thanks!</strong> Your email was successfully sent."
|
| 159 |
+
#~ msgstr "<strong>Спасибо!</strong> Ваше сообщение успешно отправлено."
|
| 160 |
+
|
| 161 |
+
#~ msgid "There was an error submitting the form."
|
| 162 |
+
#~ msgstr "Произошла ошибка при отправке."
|
| 163 |
+
|
| 164 |
+
#~ msgid "Name *"
|
| 165 |
+
#~ msgstr "Имя *"
|
| 166 |
+
|
| 167 |
+
#~ msgid "Email *"
|
| 168 |
+
#~ msgstr "Эл. почта *"
|
| 169 |
+
|
| 170 |
+
#~ msgid "Send"
|
| 171 |
+
#~ msgstr "Отправить"
|
| 172 |
+
|
| 173 |
+
#~ msgid "You forgot to enter your name."
|
| 174 |
+
#~ msgstr "Вы забыли указать своё имя."
|
| 175 |
+
|
| 176 |
+
#~ msgid "You forgot to enter your email address."
|
| 177 |
+
#~ msgstr "Вы забыли указать адрес эл. почты."
|
| 178 |
+
|
| 179 |
+
#~ msgid "You entered an invalid email address."
|
| 180 |
+
#~ msgstr "Вы ввели неверный адрес эл. почты."
|
| 181 |
+
|
| 182 |
+
#~ msgid "You forgot to enter your comments."
|
| 183 |
+
#~ msgstr "Вы забыли добавить комментарии."
|
| 184 |
+
|
| 185 |
+
#~ msgid "Add entry"
|
| 186 |
+
#~ msgstr "Добавить запись"
|
| 187 |
+
|
| 188 |
+
#~ msgid "Search posts"
|
| 189 |
+
#~ msgstr "Искать записи"
|
| 190 |
+
|
| 191 |
+
#~ msgid "Add new post"
|
| 192 |
+
#~ msgstr "Добавить новую запись"
|
| 193 |
+
|
| 194 |
+
#~ msgid "Edit post"
|
| 195 |
+
#~ msgstr "Редактировать запись"
|
| 196 |
+
|
| 197 |
+
#~ msgid "New post"
|
| 198 |
+
#~ msgstr "Новая запись"
|
| 199 |
+
|
| 200 |
+
#~ msgid "View post"
|
| 201 |
+
#~ msgstr "Просмотр записи"
|
| 202 |
+
|
| 203 |
+
#~ msgid "Add new item"
|
| 204 |
+
#~ msgstr "Добавить запись"
|
| 205 |
+
|
| 206 |
+
#~ msgid "Search portfolio items"
|
| 207 |
+
#~ msgstr "Искать записи портфолио"
|
| 208 |
+
|
| 209 |
+
#~ msgid "Add new portfolio item"
|
| 210 |
+
#~ msgstr "Новая запись в портфолио"
|
| 211 |
+
|
| 212 |
+
#~ msgid "Edit portfolio item"
|
| 213 |
+
#~ msgstr "Редактировать запись в портфолио"
|
| 214 |
+
|
| 215 |
+
#~ msgid "New portfolio item"
|
| 216 |
+
#~ msgstr "Новая запись в портфолио"
|
| 217 |
+
|
| 218 |
+
#~ msgid "View portfolio item"
|
| 219 |
+
#~ msgstr "Просмотр записи портфолио"
|
| 220 |
+
|
| 221 |
+
#~ msgid "Slider"
|
| 222 |
+
#~ msgstr "Слайдер"
|
| 223 |
+
|
| 224 |
+
#~ msgid "Slide"
|
| 225 |
+
#~ msgstr "Слайд"
|
| 226 |
+
|
| 227 |
+
#~ msgid "Add slide"
|
| 228 |
+
#~ msgstr "Добавить слайд"
|
| 229 |
+
|
| 230 |
+
#~ msgid "Search slides"
|
| 231 |
+
#~ msgstr "Искать слайды"
|
| 232 |
+
|
| 233 |
+
#~ msgid "Add new slide"
|
| 234 |
+
#~ msgstr "Добавить новый слайд"
|
| 235 |
+
|
| 236 |
+
#~ msgid "Edit slide"
|
| 237 |
+
#~ msgstr "Редактировать слайд"
|
| 238 |
+
|
| 239 |
+
#~ msgid "New slide"
|
| 240 |
+
#~ msgstr "Новый слайд"
|
| 241 |
+
|
| 242 |
+
#~ msgid "View slide"
|
| 243 |
+
#~ msgstr "Просмотр слайда"
|
| 244 |
+
|
| 245 |
+
#~ msgid "Slide settings (Anything slider)"
|
| 246 |
+
#~ msgstr "Настройки слайда (Anything slider)"
|
| 247 |
+
|
| 248 |
+
#~ msgid "Slide view"
|
| 249 |
+
#~ msgstr "Тип слайда"
|
| 250 |
+
|
| 251 |
+
#~ msgid ""
|
| 252 |
+
#~ "Slide type. Full size - full sized image/video. Mixed - post title + post "
|
| 253 |
+
#~ "content + image/video. Content only - only post content."
|
| 254 |
+
#~ msgstr ""
|
| 255 |
+
#~ "Full size - полноразмерное видео или изображение. Mixed - заголовок "
|
| 256 |
+
#~ "слайда + контент + видео или изображение. Content only - только контент "
|
| 257 |
+
#~ "из редактора"
|
| 258 |
+
|
| 259 |
+
#~ msgid "Media url"
|
| 260 |
+
#~ msgstr "Ссылка на медиа"
|
| 261 |
+
|
| 262 |
+
#~ msgid ""
|
| 263 |
+
#~ "Paste full link to your media (image, Youtube video, Vimeo video). Not "
|
| 264 |
+
#~ "required with Content only slides"
|
| 265 |
+
#~ msgstr ""
|
| 266 |
+
#~ "Вставьте полную ссылку на медиа для этого слайда. Вы можете вставить "
|
| 267 |
+
#~ "ссылку на youtube, vimeo или изображение. Также поддерживаются обычные "
|
| 268 |
+
#~ "видеофайлы и аудиофайлы. Подробности смотрите в документации"
|
| 269 |
+
|
| 270 |
+
#~ msgid "Description"
|
| 271 |
+
#~ msgstr "Описание"
|
| 272 |
+
|
| 273 |
+
#~ msgid "Enter description"
|
| 274 |
+
#~ msgstr "Введите описание"
|
| 275 |
+
|
| 276 |
+
#~ msgid "Page description for text teaser (top of page)"
|
| 277 |
+
#~ msgstr "Описание страницы для небольшого заголовка вверху страницы"
|
| 278 |
+
|
| 279 |
+
#~ msgid "Thumbnail"
|
| 280 |
+
#~ msgstr "Миниатюра"
|
| 281 |
+
|
| 282 |
+
#~ msgid "Choose image for thumbnail"
|
| 283 |
+
#~ msgstr "Выберите изображение для миниатюры"
|
| 284 |
+
|
| 285 |
+
#~ msgid "Main menu"
|
| 286 |
+
#~ msgstr "Главное меню"
|
| 287 |
+
|
| 288 |
+
#~ msgid "Share"
|
| 289 |
+
#~ msgstr "Поделиться"
|
| 290 |
+
|
| 291 |
+
#~ msgid "year"
|
| 292 |
+
#~ msgstr "г."
|
| 293 |
+
|
| 294 |
+
#~ msgid "month"
|
| 295 |
+
#~ msgstr "мес."
|
| 296 |
+
|
| 297 |
+
#~ msgid "week"
|
| 298 |
+
#~ msgstr "нед."
|
| 299 |
+
|
| 300 |
+
#~ msgid "day"
|
| 301 |
+
#~ msgstr "дн."
|
| 302 |
+
|
| 303 |
+
#~ msgid "hour"
|
| 304 |
+
#~ msgstr "ч."
|
| 305 |
+
|
| 306 |
+
#~ msgid "minute"
|
| 307 |
+
#~ msgstr "мин."
|
| 308 |
+
|
| 309 |
+
#~ msgid "s"
|
| 310 |
+
#~ msgstr " "
|
| 311 |
+
|
| 312 |
+
#~ msgid "ago"
|
| 313 |
+
#~ msgstr "назад"
|
| 314 |
+
|
| 315 |
+
#~ msgid "Blog recent"
|
| 316 |
+
#~ msgstr "Из блога"
|
| 317 |
+
|
| 318 |
+
#~ msgid "Recent blog posts"
|
| 319 |
+
#~ msgstr "Последние записи из блога"
|
| 320 |
+
|
| 321 |
+
#~ msgid "Number posts"
|
| 322 |
+
#~ msgstr "Количество записей"
|
| 323 |
+
|
| 324 |
+
#~ msgid "Show thumbnails"
|
| 325 |
+
#~ msgstr "Показывать миниатюры"
|
| 326 |
+
|
| 327 |
+
#~ msgid "Contacts"
|
| 328 |
+
#~ msgstr "Контакты"
|
| 329 |
+
|
| 330 |
+
#~ msgid "Your contact information"
|
| 331 |
+
#~ msgstr "Ваша контактная информация"
|
| 332 |
+
|
| 333 |
+
#~ msgid "Show on map"
|
| 334 |
+
#~ msgstr "Показать на карте"
|
| 335 |
+
|
| 336 |
+
#~ msgid "Address"
|
| 337 |
+
#~ msgstr "Адрес"
|
| 338 |
+
|
| 339 |
+
#~ msgid "Google maps url"
|
| 340 |
+
#~ msgstr "Ссылка на гугл-карту"
|
| 341 |
+
|
| 342 |
+
#~ msgid "Phone"
|
| 343 |
+
#~ msgstr "Телефон"
|
| 344 |
+
|
| 345 |
+
#~ msgid "Fax"
|
| 346 |
+
#~ msgstr "Факс"
|
| 347 |
+
|
| 348 |
+
#~ msgid "E-mail"
|
| 349 |
+
#~ msgstr "Эл. почта"
|
| 350 |
+
|
| 351 |
+
#~ msgid "Custom info 1"
|
| 352 |
+
#~ msgstr "Доп. инфо 1"
|
| 353 |
+
|
| 354 |
+
#~ msgid "Custom info 2"
|
| 355 |
+
#~ msgstr "Доп. инфо 2"
|
| 356 |
+
|
| 357 |
+
#~ msgid "Custom info 3"
|
| 358 |
+
#~ msgstr "Доп. инфо 3"
|
| 359 |
+
|
| 360 |
+
#~ msgid "Porfolio recent"
|
| 361 |
+
#~ msgstr "Из портфолио"
|
| 362 |
+
|
| 363 |
+
#~ msgid "Recent portfolio entries"
|
| 364 |
+
#~ msgstr "Последние записи из портфолио"
|
| 365 |
+
|
| 366 |
+
#~ msgid "Show tooltips"
|
| 367 |
+
#~ msgstr "Показывать всплывающие подсказки при наведении"
|
| 368 |
+
|
| 369 |
+
#~ msgid "Recent tweets"
|
| 370 |
+
#~ msgstr "Последние твиты"
|
| 371 |
+
|
| 372 |
+
#~ msgid "Twitter username"
|
| 373 |
+
#~ msgstr "Имя пользователя в твиттере"
|
| 374 |
+
|
| 375 |
+
#~ msgid "Number tweets"
|
| 376 |
+
#~ msgstr "Количество твитов"
|
| 377 |
+
|
| 378 |
+
#~ msgid "Left"
|
| 379 |
+
#~ msgstr "Left"
|
| 380 |
+
|
| 381 |
+
#~ msgid "Right"
|
| 382 |
+
#~ msgstr "Right"
|
| 383 |
+
|
| 384 |
+
#~ msgid "Show"
|
| 385 |
+
#~ msgstr "Show"
|
| 386 |
+
|
| 387 |
+
#~ msgid "Yes"
|
| 388 |
+
#~ msgstr "Yes"
|
| 389 |
+
|
| 390 |
+
#~ msgid "Static image"
|
| 391 |
+
#~ msgstr "Static image"
|
readme.txt
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
=== Plugin Name ===
|
| 2 |
+
Contributors: gn_themes
|
| 3 |
+
Donate link: http://ilovecode.ru/
|
| 4 |
+
Tags: shortcode, shortcodes, short code, shortcodes, tab, tabs, button, buttons, jquery, box, boxes, toggle, spoiler, column, columns, services, service, pullquote, list, lists, frame, images, image
|
| 5 |
+
Requires at least: 3.0
|
| 6 |
+
Tested up to: 3.1
|
| 7 |
+
Stable tag: trunk
|
| 8 |
+
|
| 9 |
+
Provides support for multiple useful shortcodes
|
| 10 |
+
|
| 11 |
+
|
| 12 |
+
== Description ==
|
| 13 |
+
|
| 14 |
+
With this plugin you can easily add buttons, dividers, spacers, boxes, notes and much more
|
| 15 |
+
= Complete list of available shortcodes =
|
| 16 |
+
* Heading
|
| 17 |
+
* Frame
|
| 18 |
+
* Tabs
|
| 19 |
+
* Spoiler
|
| 20 |
+
* Divider
|
| 21 |
+
* Spacer
|
| 22 |
+
* Quote
|
| 23 |
+
* Pullquote
|
| 24 |
+
* Highlight
|
| 25 |
+
* Button
|
| 26 |
+
* Service
|
| 27 |
+
* Box
|
| 28 |
+
* Note
|
| 29 |
+
* List
|
| 30 |
+
* Column
|
| 31 |
+
|
| 32 |
+
For more information see http://ilovecode.ru/?p=122
|
| 33 |
+
|
| 34 |
+
== Installation ==
|
| 35 |
+
|
| 36 |
+
1. Unzip plugin files and upload them under your '/wp-content/plugins/' directory. Resulted names will be:
|
| 37 |
+
'./wp-content/plugins/shortcodes-ultimate/*'
|
| 38 |
+
|
| 39 |
+
2. Activate plugin at "Plugins" administration page.
|
| 40 |
+
|
| 41 |
+
|
| 42 |
+
== Upgrade Notice ==
|
| 43 |
+
|
| 44 |
+
Upgrade normally via your Wordpress admin -> Plugins panel.
|
| 45 |
+
|
| 46 |
+
|
| 47 |
+
== Screenshots ==
|
| 48 |
+
|
| 49 |
+
1. Heading, spoiler, tabs, quote, button.
|
| 50 |
+
2. Box, note, divider (top), list.
|
| 51 |
+
|
| 52 |
+
== Frequently Asked Questions ==
|
| 53 |
+
|
| 54 |
+
= Complete list of supported shortcodes =
|
| 55 |
+
http://ilovecode.ru/?p=122
|
| 56 |
+
|
| 57 |
+
|
| 58 |
+
== Changelog ==
|
| 59 |
+
|
| 60 |
+
= 1.0.0 =
|
| 61 |
+
* Initial release
|
| 62 |
+
|
screenshot-1.png
ADDED
|
Binary file
|
screenshot-2.png
ADDED
|
Binary file
|
shortcodes-ultimate.php
ADDED
|
@@ -0,0 +1,520 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
/*
|
| 4 |
+
Plugin Name: Shortcodes Ultimate
|
| 5 |
+
Plugin URI: http://ilovecode.ru/?p=122
|
| 6 |
+
Version: 1.0.0
|
| 7 |
+
Author: Vladimir Anokhin
|
| 8 |
+
Author URI: http://ilovecode.ru/
|
| 9 |
+
Description: Provides support for many easy to use shortcodes. Visit plugin site to see the complete list of shortcodes
|
| 10 |
+
*/
|
| 11 |
+
|
| 12 |
+
/**
|
| 13 |
+
* Shortcode: heading
|
| 14 |
+
*
|
| 15 |
+
* @param array $atts Shortcode attributes
|
| 16 |
+
* @param string $content
|
| 17 |
+
* @return string Output html
|
| 18 |
+
*/
|
| 19 |
+
function su_heading_shortcode( $atts, $content = null ) {
|
| 20 |
+
extract( shortcode_atts( array(
|
| 21 |
+
'size' => 3
|
| 22 |
+
), $atts ) );
|
| 23 |
+
|
| 24 |
+
return '<div class="su-heading"><div class="su-heading-shell">' . $content . '</div></div>';
|
| 25 |
+
}
|
| 26 |
+
|
| 27 |
+
/**
|
| 28 |
+
* Shortcode: frame
|
| 29 |
+
*
|
| 30 |
+
* @param array $atts Shortcode attributes
|
| 31 |
+
* @param string $content
|
| 32 |
+
* @return string Output html
|
| 33 |
+
*/
|
| 34 |
+
function su_frame_shortcode( $atts, $content = null ) {
|
| 35 |
+
extract( shortcode_atts( array(
|
| 36 |
+
'align' => 'none'
|
| 37 |
+
), $atts ) );
|
| 38 |
+
|
| 39 |
+
return '<div class="su-frame su-frame-align-' . $align . '"><div class="su-frame-shell">' . do_shortcode( $content ) . '</div></div>';
|
| 40 |
+
}
|
| 41 |
+
|
| 42 |
+
/**
|
| 43 |
+
* Shortcode: tabs
|
| 44 |
+
*
|
| 45 |
+
* @param array $atts Shortcode attributes
|
| 46 |
+
* @param string $content
|
| 47 |
+
* @return string Output html
|
| 48 |
+
*/
|
| 49 |
+
function su_tabs( $atts, $content ) {
|
| 50 |
+
$GLOBALS['tab_count'] = 0;
|
| 51 |
+
|
| 52 |
+
do_shortcode( $content );
|
| 53 |
+
|
| 54 |
+
if ( is_array( $GLOBALS['tabs'] ) ) {
|
| 55 |
+
foreach ( $GLOBALS['tabs'] as $tab ) {
|
| 56 |
+
$tabs[] = '<span>' . $tab['title'] . '</span>';
|
| 57 |
+
$panes[] = '<div class="su-tabs-pane">' . $tab['content'] . '</div>';
|
| 58 |
+
}
|
| 59 |
+
$return = '<div class="su-tabs"><div class="su-tabs-nav">' . implode( '', $tabs ) . '</div><div class="su-tabs-panes">' . implode( "\n", $panes ) . '</div></div>';
|
| 60 |
+
}
|
| 61 |
+
return $return;
|
| 62 |
+
}
|
| 63 |
+
|
| 64 |
+
/**
|
| 65 |
+
* Shortcode: tab
|
| 66 |
+
*
|
| 67 |
+
* @param array $atts Shortcode attributes
|
| 68 |
+
* @param string $content
|
| 69 |
+
* @return string Output html
|
| 70 |
+
*/
|
| 71 |
+
function su_tab( $atts, $content ) {
|
| 72 |
+
extract( shortcode_atts( array( 'title' => 'Tab %d' ), $atts ) );
|
| 73 |
+
$x = $GLOBALS['tab_count'];
|
| 74 |
+
$GLOBALS['tabs'][$x] = array( 'title' => sprintf( $title, $GLOBALS['tab_count'] ), 'content' => do_shortcode( $content ) );
|
| 75 |
+
$GLOBALS['tab_count']++;
|
| 76 |
+
}
|
| 77 |
+
|
| 78 |
+
/**
|
| 79 |
+
* Shortcode: spoiler
|
| 80 |
+
*
|
| 81 |
+
* @param array $atts Shortcode attributes
|
| 82 |
+
* @param string $content
|
| 83 |
+
* @return string Output html
|
| 84 |
+
*/
|
| 85 |
+
function su_spoiler_shortcode( $atts, $content = null ) {
|
| 86 |
+
extract( shortcode_atts( array(
|
| 87 |
+
'title' => __( 'Spoiler title', 'shortcodes-ultimate' )
|
| 88 |
+
), $atts ) );
|
| 89 |
+
|
| 90 |
+
return '<div class="su-spoiler su-spoiler-open"><div class="su-spoiler-title">' . $title . '</div><div class="su-spoiler-content">' . do_shortcode( $content ) . '</div></div>';
|
| 91 |
+
}
|
| 92 |
+
|
| 93 |
+
/**
|
| 94 |
+
* Shortcode: divider
|
| 95 |
+
*
|
| 96 |
+
* @param array $atts Shortcode attributes
|
| 97 |
+
* @param string $content
|
| 98 |
+
* @return string Output html
|
| 99 |
+
*/
|
| 100 |
+
function su_divider_shortcode( $atts, $content = null ) {
|
| 101 |
+
extract( shortcode_atts( array(
|
| 102 |
+
'top' => false
|
| 103 |
+
), $atts ) );
|
| 104 |
+
|
| 105 |
+
return ( $top ) ? '<div class="su-divider"><a href="#">' . __( 'Top', 'shortcodes-ultimate' ) . '</a></div>' : '<div class="su-divider"></div>';
|
| 106 |
+
}
|
| 107 |
+
|
| 108 |
+
/**
|
| 109 |
+
* Shortcode: spacer
|
| 110 |
+
*
|
| 111 |
+
* @param array $atts Shortcode attributes
|
| 112 |
+
* @param string $content
|
| 113 |
+
* @return string Output html
|
| 114 |
+
*/
|
| 115 |
+
function su_spacer_shortcode( $atts, $content = null ) {
|
| 116 |
+
extract( shortcode_atts( array(
|
| 117 |
+
'size' => 0
|
| 118 |
+
), $atts ) );
|
| 119 |
+
|
| 120 |
+
return '<div class="su-spacer" style="height:' . $size . 'px"></div>';
|
| 121 |
+
}
|
| 122 |
+
|
| 123 |
+
/**
|
| 124 |
+
* Shortcode: highlight
|
| 125 |
+
*
|
| 126 |
+
* @param array $atts Shortcode attributes
|
| 127 |
+
* @param string $content
|
| 128 |
+
* @return string Output html
|
| 129 |
+
*/
|
| 130 |
+
function su_highlight_shortcode( $atts, $content = null ) {
|
| 131 |
+
extract( shortcode_atts( array(
|
| 132 |
+
'bg' => '#df9',
|
| 133 |
+
'color' => '#000'
|
| 134 |
+
), $atts ) );
|
| 135 |
+
|
| 136 |
+
return '<span class="su-highlight" style="background:' . $bg . ';color:' . $color . '"> ' . $content . ' </span>';
|
| 137 |
+
}
|
| 138 |
+
|
| 139 |
+
/**
|
| 140 |
+
* Shortcode: column
|
| 141 |
+
*
|
| 142 |
+
* @param array $atts Shortcode attributes
|
| 143 |
+
* @param string $content
|
| 144 |
+
* @return string Output html
|
| 145 |
+
*/
|
| 146 |
+
function su_column_shortcode( $atts, $content = null ) {
|
| 147 |
+
extract( shortcode_atts( array(
|
| 148 |
+
'size' => '1-2',
|
| 149 |
+
'last' => false
|
| 150 |
+
), $atts ) );
|
| 151 |
+
|
| 152 |
+
return ( $last ) ? '<div class="su-column su-column-' . $size . ' su-column-last">' . do_shortcode( $content ) . '</div><div class="su-spacer su-spacer-20"></div>' : '<div class="su-column su-column-' . $size . '">' . do_shortcode( $content ) . '</div>';
|
| 153 |
+
}
|
| 154 |
+
|
| 155 |
+
/**
|
| 156 |
+
* Shortcode: list
|
| 157 |
+
*
|
| 158 |
+
* @param array $atts Shortcode attributes
|
| 159 |
+
* @param string $content
|
| 160 |
+
* @return string Output html
|
| 161 |
+
*/
|
| 162 |
+
function su_list_shortcode( $atts, $content = null ) {
|
| 163 |
+
extract( shortcode_atts( array(
|
| 164 |
+
'style' => 'star'
|
| 165 |
+
), $atts ) );
|
| 166 |
+
|
| 167 |
+
return '<div class="su-list su-list-style-' . $style . '">' . $content . '</div>';
|
| 168 |
+
}
|
| 169 |
+
|
| 170 |
+
/**
|
| 171 |
+
* Shortcode: quote
|
| 172 |
+
*
|
| 173 |
+
* @param array $atts Shortcode attributes
|
| 174 |
+
* @param string $content
|
| 175 |
+
* @return string Output html
|
| 176 |
+
*/
|
| 177 |
+
function su_quote_shortcode( $atts, $content = null ) {
|
| 178 |
+
extract( shortcode_atts( array(
|
| 179 |
+
'style' => 1
|
| 180 |
+
), $atts ) );
|
| 181 |
+
|
| 182 |
+
return '<div class="su-quote su-quote-style-' . $style . '"><div class="su-quote-shell">' . do_shortcode( $content ) . '</div></div>';
|
| 183 |
+
}
|
| 184 |
+
|
| 185 |
+
/**
|
| 186 |
+
* Shortcode: pullquote
|
| 187 |
+
*
|
| 188 |
+
* @param array $atts Shortcode attributes
|
| 189 |
+
* @param string $content
|
| 190 |
+
* @return string Output html
|
| 191 |
+
*/
|
| 192 |
+
function su_pullquote_shortcode( $atts, $content = null ) {
|
| 193 |
+
extract( shortcode_atts( array(
|
| 194 |
+
'style' => 1,
|
| 195 |
+
'align' => 'left'
|
| 196 |
+
), $atts ) );
|
| 197 |
+
|
| 198 |
+
return '<div class="su-pullquote su-pullquote-style-' . $style . ' su-pullquote-align-' . $align . '">' . do_shortcode( $content ) . '</div>';
|
| 199 |
+
}
|
| 200 |
+
|
| 201 |
+
/**
|
| 202 |
+
* Shortcode: button
|
| 203 |
+
*
|
| 204 |
+
* @param array $atts Shortcode attributes
|
| 205 |
+
* @param string $content
|
| 206 |
+
* @return string Output html
|
| 207 |
+
*/
|
| 208 |
+
function su_button_shortcode( $atts, $content = null ) {
|
| 209 |
+
extract( shortcode_atts( array(
|
| 210 |
+
'link' => '#',
|
| 211 |
+
'color' => '#aaa',
|
| 212 |
+
'dark' => false,
|
| 213 |
+
'square' => false,
|
| 214 |
+
'style' => 1,
|
| 215 |
+
'size' => 2
|
| 216 |
+
), $atts ) );
|
| 217 |
+
|
| 218 |
+
$styles = array(
|
| 219 |
+
'border_radius' => ( $square ) ? 0 : $size + 2,
|
| 220 |
+
'dark_color' => su_hex_shift( $color, 'darker', 20 ),
|
| 221 |
+
'light_color' => su_hex_shift( $color, 'lighter', 70 ),
|
| 222 |
+
'size' => round( ( $size + 9 ) * 1.3 ),
|
| 223 |
+
'text_color' => ( $dark ) ? su_hex_shift( $color, 'darker', 70 ) : su_hex_shift( $color, 'lighter', 90 ),
|
| 224 |
+
'text_shadow' => ( $dark ) ? su_hex_shift( $color, 'lighter', 50 ) : su_hex_shift( $color, 'darker', 20 ),
|
| 225 |
+
'text_shadow_position' => ( $dark ) ? '1px 1px' : '-1px -1px',
|
| 226 |
+
'padding_v' => ( $size * 2 ) + 2,
|
| 227 |
+
'padding_h' => ( $size * 5 ) + 5
|
| 228 |
+
);
|
| 229 |
+
|
| 230 |
+
$link_styles = array(
|
| 231 |
+
'background-color' => $color,
|
| 232 |
+
'border' => '1px solid ' . $styles['dark_color'],
|
| 233 |
+
'border-radius' => $styles['border_radius'] . 'px',
|
| 234 |
+
'-moz-border-radius' => $styles['border_radius'] . 'px',
|
| 235 |
+
'-webkit-border-radius' => $styles['border_radius'] . 'px'
|
| 236 |
+
);
|
| 237 |
+
|
| 238 |
+
$span_styles = array(
|
| 239 |
+
'color' => $styles['text_color'],
|
| 240 |
+
'padding' => $styles['padding_v'] . 'px ' . $styles['padding_h'] . 'px',
|
| 241 |
+
'font-size' => $styles['size'] . 'px',
|
| 242 |
+
'height' => $styles['size'] . 'px',
|
| 243 |
+
'line-height' => $styles['size'] . 'px',
|
| 244 |
+
'border-top' => '1px solid ' . $styles['light_color'],
|
| 245 |
+
'text-transform' => 'uppercase',
|
| 246 |
+
'border-radius' => $styles['border_radius'] . 'px',
|
| 247 |
+
'text-shadow' => $styles['text_shadow_position'] . ' 0 ' . $styles['text_shadow'],
|
| 248 |
+
'-moz-border-radius' => $styles['border_radius'] . 'px',
|
| 249 |
+
'-moz-text-shadow' => $styles['text_shadow_position'] . ' 0 ' . $styles['text_shadow'],
|
| 250 |
+
'-webkit-border-radius' => $styles['border_radius'] . 'px',
|
| 251 |
+
'-webkit-text-shadow' => $styles['text_shadow_position'] . ' 0 ' . $styles['text_shadow']
|
| 252 |
+
);
|
| 253 |
+
|
| 254 |
+
foreach ( $link_styles as $link_rule => $link_value ) {
|
| 255 |
+
$link_style .= $link_rule . ':' . $link_value . ';';
|
| 256 |
+
}
|
| 257 |
+
|
| 258 |
+
foreach ( $span_styles as $span_rule => $span_value ) {
|
| 259 |
+
$span_style .= $span_rule . ':' . $span_value . ';';
|
| 260 |
+
}
|
| 261 |
+
|
| 262 |
+
return '<a href="' . $link . '" class="su-button su-button-style-' . $style . '" style="' . $link_style . '"><span style="' . $span_style . '">' . $content . '</span></a>';
|
| 263 |
+
}
|
| 264 |
+
|
| 265 |
+
/**
|
| 266 |
+
* Shortcode: service
|
| 267 |
+
*
|
| 268 |
+
* @param array $atts Shortcode attributes
|
| 269 |
+
* @param string $content
|
| 270 |
+
* @return string Output html
|
| 271 |
+
*/
|
| 272 |
+
function su_service_shortcode( $atts, $content = null ) {
|
| 273 |
+
extract( shortcode_atts( array(
|
| 274 |
+
'title' => __( 'Service name', 'shortcodes-ultimate' ),
|
| 275 |
+
'icon' => su_plugin_url() . '/images/service.png',
|
| 276 |
+
'size' => 32
|
| 277 |
+
), $atts ) );
|
| 278 |
+
|
| 279 |
+
return '<div class="su-service"><div class="su-service-title" style="padding:' . round( ( $size - 16 ) / 2 ) . 'px 0 ' . round( ( $size - 16 ) / 2 ) . 'px ' . ( $size + 15 ) . 'px"><img src="' . $icon . '" width="' . $size . '" height="' . $size . '" alt="' . $title . '" /> ' . $title . '</div><div class="su-service-content" style="padding:0 0 0 ' . ( $size + 15 ) . 'px">' . do_shortcode( $content ) . '</div></div>';
|
| 280 |
+
}
|
| 281 |
+
|
| 282 |
+
/**
|
| 283 |
+
* Shortcode: box
|
| 284 |
+
*
|
| 285 |
+
* @param array $atts Shortcode attributes
|
| 286 |
+
* @param string $content
|
| 287 |
+
* @return string Output html
|
| 288 |
+
*/
|
| 289 |
+
function su_box_shortcode( $atts, $content = null ) {
|
| 290 |
+
extract( shortcode_atts( array(
|
| 291 |
+
'color' => '#333',
|
| 292 |
+
'title' => __( 'This is box title', 'shortcodes-ultimate' )
|
| 293 |
+
), $atts ) );
|
| 294 |
+
|
| 295 |
+
$styles = array(
|
| 296 |
+
'dark_color' => su_hex_shift( $color, 'darker', 20 ),
|
| 297 |
+
'light_color' => su_hex_shift( $color, 'lighter', 60 ),
|
| 298 |
+
'text_shadow' => su_hex_shift( $color, 'darker', 70 ),
|
| 299 |
+
);
|
| 300 |
+
|
| 301 |
+
return '<div class="su-box" style="border:1px solid ' . $styles['dark_color'] . '"><div class="su-box-title" style="background-color:' . $color . ';border-top:1px solid ' . $styles['light_color'] . ';text-shadow:1px 1px 0 ' . $styles['text_shadow'] . '">' . $title . '</div><div class="su-box-content">' . do_shortcode( $content ) . '</div></div>';
|
| 302 |
+
}
|
| 303 |
+
|
| 304 |
+
/**
|
| 305 |
+
* Shortcode: note
|
| 306 |
+
*
|
| 307 |
+
* @param array $atts Shortcode attributes
|
| 308 |
+
* @param string $content
|
| 309 |
+
* @return string Output html
|
| 310 |
+
*/
|
| 311 |
+
function su_note_shortcode( $atts, $content = null ) {
|
| 312 |
+
extract( shortcode_atts( array(
|
| 313 |
+
'color' => '#fc0'
|
| 314 |
+
), $atts ) );
|
| 315 |
+
|
| 316 |
+
$styles = array(
|
| 317 |
+
'dark_color' => su_hex_shift( $color, 'darker', 10 ),
|
| 318 |
+
'light_color' => su_hex_shift( $color, 'lighter', 20 ),
|
| 319 |
+
'extra_light_color' => su_hex_shift( $color, 'lighter', 80 ),
|
| 320 |
+
'text_color' => su_hex_shift( $color, 'darker', 70 )
|
| 321 |
+
);
|
| 322 |
+
|
| 323 |
+
return '<div class="su-note" style="background-color:' . $styles['light_color'] . ';border:1px solid ' . $styles['dark_color'] . '"><div class="su-note-shell" style="border:1px solid ' . $styles['extra_light_color'] . ';color:' . $styles['text_color'] . '">' . do_shortcode( $content ) . '</div></div>';
|
| 324 |
+
}
|
| 325 |
+
|
| 326 |
+
/**
|
| 327 |
+
* Plugin initialization
|
| 328 |
+
*/
|
| 329 |
+
function su_plugin_init() {
|
| 330 |
+
|
| 331 |
+
// Make plugin available for tramslation
|
| 332 |
+
load_plugin_textdomain( 'shortcodes-ultimate', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
|
| 333 |
+
|
| 334 |
+
/**
|
| 335 |
+
* Returns current plugin version.
|
| 336 |
+
*
|
| 337 |
+
* @return string Plugin version
|
| 338 |
+
*/
|
| 339 |
+
function su_get_version() {
|
| 340 |
+
if ( !function_exists( 'get_plugins' ) ) {
|
| 341 |
+
require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
|
| 342 |
+
}
|
| 343 |
+
$plugin_folder = get_plugins( '/' . plugin_basename( dirname( __FILE__ ) ) );
|
| 344 |
+
$plugin_file = basename( ( __FILE__ ) );
|
| 345 |
+
return $plugin_folder[$plugin_file]['Version'];
|
| 346 |
+
}
|
| 347 |
+
|
| 348 |
+
/**
|
| 349 |
+
* Returns current plugin url.
|
| 350 |
+
*
|
| 351 |
+
* @return string Plugin url
|
| 352 |
+
*/
|
| 353 |
+
function su_plugin_url() {
|
| 354 |
+
return plugins_url( basename( __FILE__, '.php' ), dirname( __FILE__ ) );
|
| 355 |
+
}
|
| 356 |
+
|
| 357 |
+
/**
|
| 358 |
+
* Color shift a hex value by a specific percentage factor
|
| 359 |
+
*
|
| 360 |
+
* @param string $supplied_hex Any valid hex value. Short forms e.g. #333 accepted.
|
| 361 |
+
* @param string $shift_method How to shift the value e.g( +,up,lighter,>)
|
| 362 |
+
* @param integer $percentage Percentage in range of [0-100] to shift provided hex value by
|
| 363 |
+
* @return string shifted hex value
|
| 364 |
+
* @version 1.0 2008-03-28
|
| 365 |
+
*/
|
| 366 |
+
function su_hex_shift( $supplied_hex, $shift_method, $percentage = 50 ) {
|
| 367 |
+
$shifted_hex_value = null;
|
| 368 |
+
$valid_shift_option = FALSE;
|
| 369 |
+
$current_set = 1;
|
| 370 |
+
$RGB_values = array( );
|
| 371 |
+
$valid_shift_up_args = array( 'up', '+', 'lighter', '>' );
|
| 372 |
+
$valid_shift_down_args = array( 'down', '-', 'darker', '<' );
|
| 373 |
+
$shift_method = strtolower( trim( $shift_method ) );
|
| 374 |
+
|
| 375 |
+
// Check Factor
|
| 376 |
+
if ( !is_numeric( $percentage ) || ($percentage = ( int ) $percentage) < 0 || $percentage > 100 ) {
|
| 377 |
+
trigger_error( "Invalid factor", E_USER_ERROR );
|
| 378 |
+
}
|
| 379 |
+
|
| 380 |
+
// Check shift method
|
| 381 |
+
foreach ( array( $valid_shift_down_args, $valid_shift_up_args ) as $options ) {
|
| 382 |
+
foreach ( $options as $method ) {
|
| 383 |
+
if ( $method == $shift_method ) {
|
| 384 |
+
$valid_shift_option = !$valid_shift_option;
|
| 385 |
+
$shift_method = ( $current_set === 1 ) ? '+' : '-';
|
| 386 |
+
break 2;
|
| 387 |
+
}
|
| 388 |
+
}
|
| 389 |
+
++$current_set;
|
| 390 |
+
}
|
| 391 |
+
|
| 392 |
+
if ( !$valid_shift_option ) {
|
| 393 |
+
trigger_error( "Invalid shift method", E_USER_ERROR );
|
| 394 |
+
}
|
| 395 |
+
|
| 396 |
+
// Check Hex string
|
| 397 |
+
switch ( strlen( $supplied_hex = ( str_replace( '#', '', trim( $supplied_hex ) ) ) ) ) {
|
| 398 |
+
case 3:
|
| 399 |
+
if ( preg_match( '/^([0-9a-f])([0-9a-f])([0-9a-f])/i', $supplied_hex ) ) {
|
| 400 |
+
$supplied_hex = preg_replace( '/^([0-9a-f])([0-9a-f])([0-9a-f])/i', '\\1\\1\\2\\2\\3\\3', $supplied_hex );
|
| 401 |
+
} else {
|
| 402 |
+
trigger_error( "Invalid hex value", E_USER_ERROR );
|
| 403 |
+
}
|
| 404 |
+
break;
|
| 405 |
+
case 6:
|
| 406 |
+
if ( !preg_match( '/^[0-9a-f]{2}[0-9a-f]{2}[0-9a-f]{2}$/i', $supplied_hex ) ) {
|
| 407 |
+
trigger_error( "Invalid hex value", E_USER_ERROR );
|
| 408 |
+
}
|
| 409 |
+
break;
|
| 410 |
+
default:
|
| 411 |
+
trigger_error( "Invalid hex length", E_USER_ERROR );
|
| 412 |
+
}
|
| 413 |
+
|
| 414 |
+
// Start shifting
|
| 415 |
+
$RGB_values['R'] = hexdec( $supplied_hex{0} . $supplied_hex{1} );
|
| 416 |
+
$RGB_values['G'] = hexdec( $supplied_hex{2} . $supplied_hex{3} );
|
| 417 |
+
$RGB_values['B'] = hexdec( $supplied_hex{4} . $supplied_hex{5} );
|
| 418 |
+
|
| 419 |
+
foreach ( $RGB_values as $c => $v ) {
|
| 420 |
+
switch ( $shift_method ) {
|
| 421 |
+
case '-':
|
| 422 |
+
$amount = round( ((255 - $v) / 100) * $percentage ) + $v;
|
| 423 |
+
break;
|
| 424 |
+
case '+':
|
| 425 |
+
$amount = $v - round( ($v / 100) * $percentage );
|
| 426 |
+
break;
|
| 427 |
+
default:
|
| 428 |
+
trigger_error( "Oops. Unexpected shift method", E_USER_ERROR );
|
| 429 |
+
}
|
| 430 |
+
|
| 431 |
+
$shifted_hex_value .= $current_value = (
|
| 432 |
+
strlen( $decimal_to_hex = dechex( $amount ) ) < 2
|
| 433 |
+
) ? '0' . $decimal_to_hex : $decimal_to_hex;
|
| 434 |
+
}
|
| 435 |
+
|
| 436 |
+
return '#' . $shifted_hex_value;
|
| 437 |
+
}
|
| 438 |
+
|
| 439 |
+
/**
|
| 440 |
+
* Disable auto-formatting for shortcodes
|
| 441 |
+
*
|
| 442 |
+
* @param string $content
|
| 443 |
+
* @return string Formatted content with clean shortcodes content
|
| 444 |
+
*/
|
| 445 |
+
function su_custom_formatter( $content ) {
|
| 446 |
+
$new_content = '';
|
| 447 |
+
|
| 448 |
+
// Matches the contents and the open and closing tags
|
| 449 |
+
$pattern_full = '{(\[raw\].*?\[/raw\])}is';
|
| 450 |
+
|
| 451 |
+
// Matches just the contents
|
| 452 |
+
$pattern_contents = '{\[raw\](.*?)\[/raw\]}is';
|
| 453 |
+
|
| 454 |
+
// Divide content into pieces
|
| 455 |
+
$pieces = preg_split( $pattern_full, $content, -1, PREG_SPLIT_DELIM_CAPTURE );
|
| 456 |
+
|
| 457 |
+
// Loop over pieces
|
| 458 |
+
foreach ( $pieces as $piece ) {
|
| 459 |
+
|
| 460 |
+
// Look for presence of the shortcode
|
| 461 |
+
if ( preg_match( $pattern_contents, $piece, $matches ) ) {
|
| 462 |
+
|
| 463 |
+
// Append to content (no formatting)
|
| 464 |
+
$new_content .= $matches[1];
|
| 465 |
+
} else {
|
| 466 |
+
|
| 467 |
+
// Format and append to content
|
| 468 |
+
$new_content .= wptexturize( wpautop( $piece ) );
|
| 469 |
+
}
|
| 470 |
+
}
|
| 471 |
+
|
| 472 |
+
return $new_content;
|
| 473 |
+
}
|
| 474 |
+
|
| 475 |
+
// Enable shortcodes in widgets
|
| 476 |
+
add_filter( 'widget_text', 'do_shortcode' );
|
| 477 |
+
|
| 478 |
+
// Disable WordPress native formatters
|
| 479 |
+
remove_filter( 'the_content', 'wpautop' );
|
| 480 |
+
remove_filter( 'the_content', 'wptexturize' );
|
| 481 |
+
|
| 482 |
+
// Apply custom formatter function
|
| 483 |
+
add_filter( 'the_content', 'su_custom_formatter', 99 );
|
| 484 |
+
add_filter( 'widget_text', 'su_custom_formatter', 99 );
|
| 485 |
+
|
| 486 |
+
// Fix for large posts, http://core.trac.wordpress.org/ticket/8553
|
| 487 |
+
@ini_set( 'pcre.backtrack_limit', 500000 );
|
| 488 |
+
|
| 489 |
+
if ( !is_admin() ) {
|
| 490 |
+
// Register
|
| 491 |
+
wp_register_style( 'shortcodes-ultimate', su_plugin_url() . '/css/style.css', false, su_get_version(), 'all' );
|
| 492 |
+
wp_register_script( 'shortcodes-ultimate', su_plugin_url() . '/js/init.js', false, su_get_version(), false );
|
| 493 |
+
|
| 494 |
+
// Enqueue
|
| 495 |
+
wp_enqueue_style( 'shortcodes-ultimate' );
|
| 496 |
+
wp_enqueue_script( 'jquery' );
|
| 497 |
+
wp_enqueue_script( 'shortcodes-ultimate' );
|
| 498 |
+
}
|
| 499 |
+
|
| 500 |
+
// Add shortcodes
|
| 501 |
+
add_shortcode( 'heading', 'su_heading_shortcode' );
|
| 502 |
+
add_shortcode( 'frame', 'su_frame_shortcode' );
|
| 503 |
+
add_shortcode( 'tabs', 'su_tabs' );
|
| 504 |
+
add_shortcode( 'tab', 'su_tab' );
|
| 505 |
+
add_shortcode( 'spoiler', 'su_spoiler_shortcode' );
|
| 506 |
+
add_shortcode( 'divider', 'su_divider_shortcode' );
|
| 507 |
+
add_shortcode( 'spacer', 'su_spacer_shortcode' );
|
| 508 |
+
add_shortcode( 'quote', 'su_quote_shortcode' );
|
| 509 |
+
add_shortcode( 'pullquote', 'su_pullquote_shortcode' );
|
| 510 |
+
add_shortcode( 'highlight', 'su_highlight_shortcode' );
|
| 511 |
+
add_shortcode( 'button', 'su_button_shortcode' );
|
| 512 |
+
add_shortcode( 'service', 'su_service_shortcode' );
|
| 513 |
+
add_shortcode( 'box', 'su_box_shortcode' );
|
| 514 |
+
add_shortcode( 'note', 'su_note_shortcode' );
|
| 515 |
+
add_shortcode( 'list', 'su_list_shortcode' );
|
| 516 |
+
add_shortcode( 'column', 'su_column_shortcode' );
|
| 517 |
+
}
|
| 518 |
+
|
| 519 |
+
add_action( 'init', 'su_plugin_init' );
|
| 520 |
+
?>
|
