Orphans - Version 2.5

Version Description

  • 2015-11-06 =

  • IMPROVEMENT: added filter iworks_orphan_replace

Download this release

Release Info

Developer iworks
Plugin Icon 128x128 Orphans
Version 2.5
Comparing to
See all releases

Version 2.5

Files changed (4) hide show
  1. index.php +2 -0
  2. readme.txt +177 -0
  3. sierotki.php +12 -0
  4. vendor/iworks/orphan.php +308 -0
index.php ADDED
@@ -0,0 +1,2 @@
 
 
1
+ <?php
2
+ exit;
readme.txt ADDED
@@ -0,0 +1,177 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ === Sierotki ===
2
+ Contributors: iworks
3
+ Donate link: http://iworks.pl/donate/sierotki.php
4
+ Tags: sierotki, spójniki, twarda spacja, spójniki
5
+ Requires at least: 3.3
6
+ Tested up to: 4.4
7
+ Stable tag: 2.5
8
+
9
+ Wtyczka poprawia sierotki, tak żeby nie mogły zostać na końcu linii.
10
+
11
+ == Description ==
12
+
13
+ Wtyczka poprawia sierotki, tak żeby nie mogły zostać na końcu linii, zastępując spacje znajdujące się za sierotkami na jedną twardą spację.
14
+
15
+ = EN =
16
+
17
+ Plugin supports some of the grammatical rules of the Polish language.
18
+
19
+ = Asset image =
20
+
21
+ [Manuscript by Muffet, on Flickr](http://www.flickr.com/photos/calliope/306564541/)
22
+
23
+ == Installation ==
24
+
25
+ There are 3 ways to install this plugin:
26
+
27
+ = The super easy way =
28
+
29
+
30
+ 1. **Log in** to your WordPress Admin panel.
31
+ 1. **Go to: Plugins > Add New.**
32
+ 1. **Type** ‘sierotki’ into the Search Plugins field and hit Enter. Once found, you can view details such as the point release, rating and description.
33
+ 1. **Click** Install Now. After clicking the link, you’ll be asked if you’re sure you want to install the plugin.
34
+ 1. **Click** Yes, and WordPress completes the installation.
35
+ 1. **Activate** the plugin.
36
+ 1. A new menu `Orphan` in `Appearance` will appear in your Admin Menu.
37
+
38
+ ***
39
+
40
+ = The easy way =
41
+
42
+ 1. Download the plugin (.zip file) on the right column of this page
43
+ 1. In your Admin, go to menu Plugins > Add
44
+ 1. Select button `Upload Plugin`
45
+ 1. Upload the .zip file you just downloaded
46
+ 1. Activate the plugin
47
+ 1. A new menu `Orphan` in `Appearance` will appear in your Admin
48
+
49
+ ***
50
+
51
+ = The old and reliable way (FTP) =
52
+
53
+ 1. Upload `sierotki` folder to the `/wp-content/plugins/` directory
54
+ 1. Activate the plugin through the 'Plugins' menu in WordPress
55
+ 1. A new menu `Orphan` in `Appearance` will appear in your Admin
56
+
57
+ == Frequently Asked Questions ==
58
+
59
+ = When this plugin replace spaces? =
60
+
61
+ Plugin works when viewing the content and does not modify your content.
62
+
63
+ = How to use this plugin on custom field? =
64
+
65
+ Use this code:
66
+
67
+ `
68
+ $orphan = new iworks_orphan();
69
+ echo $orphan->replace( get_post_meta($post_id, 'meta_key', true ) );
70
+ `
71
+
72
+ = How to use this plugin on any string? =
73
+
74
+ Use this code:
75
+
76
+ `
77
+ $orphan = new iworks_orphan();
78
+ echo $orphan->replace( 'any_string' );
79
+ `
80
+
81
+ == Screenshots ==
82
+
83
+ 1. Opcje Sierotek
84
+ 1. Orphan Options
85
+
86
+ == Changelog ==
87
+
88
+ = 2.5 - 2015-11-06 =
89
+
90
+ * IMPROVEMENT: added filter `iworks_orphan_replace`
91
+
92
+ = 2.4 - 2015-02-12 =
93
+
94
+ * IMPROVEMENT: added hard space between number (year) and polish year shortcut "r."
95
+ * IMPROVEMENT: added WooCommerce product title and short description to available options. thx to [Dominik Kawula](https://www.facebook.com/dominik.kawula)
96
+
97
+ = 2.3.2 - 2014-09-12 =
98
+
99
+ * BUGFIX: fixed error in options array
100
+
101
+ = 2.3.1 - 2014-09-12 =
102
+
103
+ * BUGFIX: checked option array for non existing hash.
104
+ * IMPROVEMENT: update screenshot.
105
+
106
+ = 2.3 - 2014-07-10 =
107
+
108
+ * IMPROVEMENT: added all forms of word number
109
+
110
+ = 2.2 - 2014-01-24 =
111
+
112
+ * IMPROVEMENT:added links to forum
113
+ * IMPROVEMENT:checked capability with WP 3.8
114
+
115
+ = 2.1 - 2013-11-09 =
116
+
117
+ * IMPROVEMENT:checked capability with WP 3.6
118
+ * REFACTORING: implement PSR-0 rules to orphan class
119
+
120
+ = 2.0.2 - 2013-08-20 =
121
+
122
+ * BUGFIX: fixed replacement for single letter orphan after orphan thx to [Szymon Skulimowski](http://wpninja.pl/autorzy/szymon-skulimowski/)
123
+ * IMPROVEMENT:checked capability with WP 3.6
124
+ * IMPROVEMENT:added help and related section
125
+
126
+ = 2.0.1 - 2013-07-10 =
127
+
128
+ * IMPROVEMENT:added numbers
129
+
130
+ = 2.0 - 2012-08-12 =
131
+
132
+ * BUGFIX: fixed permissions to configuration page
133
+ * BUGFIX: fixed replacement for strings starting with a orphan
134
+ * REFACTORING: rewrite code to the class
135
+ * IMPROVEMENT:added some shorts of academic degree
136
+ * IMPROVEMENT:massive increase orphans dictionary thx to [adpawl](http://podbabiogorze.info.pl)
137
+
138
+ = 1.4.2 - 2012-03-02 =
139
+
140
+ * NEW: added the_title filter.
141
+
142
+ = 1.4.1 - 2011-02-24 =
143
+
144
+ * NEW: Trim chars.
145
+ * BUGFIX: Fixed multi coma use.
146
+
147
+ = 1.4 - 2011-02-24 =
148
+
149
+ * NEW: Added user defined orphans.
150
+ * BUGFIX: Corrected capability name.
151
+
152
+ = 1.3 - 2011-02-19 =
153
+
154
+ * NEW: Added option page to turn on/off filtering in content, excerpt or comments.
155
+ * NEW: Added "(" as char before a orphan.
156
+
157
+ = 1.2 - 2011-02-18 =
158
+
159
+ * NEW: Added filter comment_text.
160
+ * BUGFIX: Capital letters was missing by plugin.
161
+
162
+ = 1.1 - 2011-02-17 =
163
+
164
+ * Abandoning elegant anonymous function, which requires PHP 5.3.0 :(
165
+ * NEW: Added filter to the_excerpt.
166
+
167
+ = 1.0.2 - 2011-02-17 =
168
+
169
+ * NEW: Added ">" as char before a orphan.
170
+
171
+ = 1.0.1 - 2011-02-16 =
172
+
173
+ * NEW: Added word "to".
174
+
175
+ = 1.0 - 2011-02-16 =
176
+
177
+ * INIT
sierotki.php ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ Plugin Name: Sierotki
4
+ Plugin URI: http://iworks.pl/2011/02/16/sierotki/
5
+ Description: Wtyczka zamienia leżące za sierotkami spacje w jedną twardą.
6
+ Author: Marcin Pietrzak
7
+ Version: 2.5
8
+ Author URI: http://iworks.pl/
9
+ */
10
+
11
+ require_once( dirname(__FILE__)).'/vendor/iworks/orphan.php';
12
+ new iworks_orphan();
vendor/iworks/orphan.php ADDED
@@ -0,0 +1,308 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ Plugin Name: Sierotki
4
+ Plugin URI: http://iworks.pl/2011/02/16/sierotki/
5
+ Description: Wtyczka zamienia leżące za sierotkami spacje w jedną twardą.
6
+ Author: Marcin Pietrzak
7
+ Version: trunk
8
+ Author URI: http://iworks.pl/
9
+ */
10
+
11
+ class iworks_orphan
12
+ {
13
+ private $options;
14
+ private $admin_page;
15
+
16
+ public function __construct()
17
+ {
18
+ /**
19
+ * l10n
20
+ */
21
+ load_plugin_textdomain('iworks_orphan', false, dirname( plugin_basename( dirname(dirname(__FILE__))) ).'/languages' );
22
+
23
+ /**
24
+ * actions
25
+ */
26
+ add_action('init', array( $this, 'init' ) );
27
+ add_action('admin_init', array( $this, 'admin_init' ) );
28
+ add_action('admin_menu', array( $this, 'admin_menu' ) );
29
+
30
+ /**
31
+ * options
32
+ */
33
+ $this->options = array (
34
+ 'comment_text' => array(
35
+ 'description' => __('Use for comments:', 'iworks_orphan' ),
36
+ 'type' => 'checkbox',
37
+ 'label' => __('Enabled the substitution of orphans in the comments.', 'iworks_orphan'),
38
+ 'sanitize_callback' => 'absint',
39
+ ),
40
+ 'the_title' => array(
41
+ 'description' => __('Use for post title:', 'iworks_orphan' ),
42
+ 'type' => 'checkbox',
43
+ 'label' => __('Enabled the substitution of orphans in the post_title.', 'iworks_orphan'),
44
+ 'sanitize_callback' => 'absint',
45
+ ),
46
+ 'the_excerpt' => array(
47
+ 'description' => __('Use for excerpt:', 'iworks_orphan' ),
48
+ 'type' => 'checkbox',
49
+ 'label' => __('Enabled the substitution of orphans in the excerpt.', 'iworks_orphan'),
50
+ 'sanitize_callback' => 'absint',
51
+ ),
52
+ 'the_content' => array(
53
+ 'description' => __('Use for content:', 'iworks_orphan' ),
54
+ 'type' => 'checkbox',
55
+ 'label' => __('Enabled the substitution of orphans in the content.', 'iworks_orphan'),
56
+ 'sanitize_callback' => 'absint',
57
+ ),
58
+ 'woocommerce_product_title' => array(
59
+ 'description' => __('Use for WooCommerce product title:', 'iworks_orphan' ),
60
+ 'type' => 'checkbox',
61
+ 'label' => __('Enabled the substitution of orphans in the WooCommerce product title.', 'iworks_orphan'),
62
+ 'sanitize_callback' => 'absint',
63
+ ),
64
+ 'woocommerce_short_description' => array(
65
+ 'description' => __('Use for WooCommerce short description:', 'iworks_orphan' ),
66
+ 'type' => 'checkbox',
67
+ 'label' => __('Enabled the substitution of orphans in the WooCommerce short description.', 'iworks_orphan'),
68
+ 'sanitize_callback' => 'absint',
69
+ ),
70
+ 'own_orphans' => array(
71
+ 'description' => __('User definied orphans:', 'iworks_orphan' ),
72
+ 'type' => 'text',
73
+ 'label' => __('Use a comma to separate orphans.', 'iworks_orphan'),
74
+ 'sanitize_callback' => 'esc_html',
75
+ ),
76
+ );
77
+ }
78
+
79
+ public function replace($content)
80
+ {
81
+ if ( empty( $content ) ) {
82
+ return;
83
+ }
84
+ $therms = array (
85
+ 'al.', 'ale', 'ależ',
86
+ 'b.', 'bł.', 'bm.', 'bp', 'br.', 'by', 'bym', 'byś',
87
+ 'cyt.', 'cz.', 'czyt.',
88
+ 'dn.', 'do', 'doc.', 'dr', 'ds.', 'dyr.', 'dz.',
89
+ 'fot.',
90
+ 'gdy', 'gdyby', 'gdybym', 'gdybyś', 'gdyż', 'godz.',
91
+ 'im.', 'inż.',
92
+ 'jw.',
93
+ 'kol.', 'komu', 'ks.', 'która', 'którego', 'której', 'któremu', 'który', 'których', 'którym', 'którzy',
94
+ 'lic.',
95
+ 'max', 'mgr', 'm.in.', 'min', 'moich', 'moje', 'mojego', 'mojej', 'mojemu', 'mój', 'mych', 'na', 'nad', 'np.','nt.', 'nw.',
96
+ 'nr', 'nr.', 'nru', 'nrowi', 'nrem', 'nrze', 'nrze', 'nry', 'nrów', 'nrom', 'nrami', 'nrach',
97
+ 'od', 'oraz', 'os.',
98
+ 'p.', 'pl.', 'pn.', 'po', 'pod', 'pot.', 'prof.', 'przed', 'pt.', 'pw.', 'pw.',
99
+ 'śp.', 'św.',
100
+ 'tamtej', 'tamto', 'tej', 'tel.', 'tj.', 'to', 'twoich', 'twoje', 'twojego', 'twojej', 'twój', 'twych',
101
+ 'ul.',
102
+ 'we', 'wg', 'woj.',
103
+ 'za', 'ze',
104
+ 'że', 'żeby', 'żebyś',
105
+ );
106
+ $own_orphans = trim( get_option('iworks_orphan_own_orphans', '' ), ' \t,');
107
+ if ( $own_orphans ) {
108
+ $own_orphans = preg_replace('/\,\+/', ',', $own_orphans);
109
+ $therms = array_merge( $therms, preg_split('/,[ \t]*/', strtolower( $own_orphans ) ) );
110
+ }
111
+ $therms = apply_filters('iworks_orphan_therms', $therms);
112
+ /**
113
+ * base therms replace
114
+ */
115
+ $re = '/^([aiouwz]|'.preg_replace('/\./', '\.', implode('|', $therms)).') +/i';
116
+ $content = preg_replace( $re, "$1$2&nbsp;", $content );
117
+ /**
118
+ * replace space in numbers
119
+ */
120
+ $content = preg_replace('/(\d) (\d)/', "$1&nbsp;$2", $content );
121
+ /**
122
+ * single letters
123
+ */
124
+ $re = '/([ >\(]+)([aiouwz]|'.preg_replace('/\./', '\.', implode('|', $therms)).') +/i';
125
+ $content = preg_replace( $re, "$1$2&nbsp;", $content );
126
+ /**
127
+ * single letter after previous orphan
128
+ */
129
+ $re = '/(&nbsp;)([aiouwz]) +/i';
130
+ $content = preg_replace( $re, "$1$2&nbsp;", $content );
131
+ /**
132
+ * polish year after number
133
+ */
134
+ $content = preg_replace('/(\d+) (r\.)/', "$1&nbsp;$2", $content);
135
+ /**
136
+ * return
137
+ */
138
+ return $content;
139
+ }
140
+
141
+ public function option_page()
142
+ {
143
+ ?>
144
+ <div class="wrap">
145
+ <h2><?php _e('Orphans', 'iworks_orphan') ?></h2>
146
+ <div class="postbox-container" style="width:75%">
147
+ <form method="post" action="options.php">
148
+ <?php settings_fields('iworks_orphan'); ?>
149
+ <table class="form-table">
150
+ <tbody>
151
+ <?php
152
+ foreach ( $this->options as $filter => $option ) {
153
+ /**
154
+ * check option type
155
+ */
156
+ if (
157
+ 0
158
+ || !is_array($option)
159
+ || empty($option)
160
+ || !array_key_exists('type', $option )
161
+ ) {
162
+ continue;
163
+ }
164
+ $field = 'iworks_orphan_'.$filter;
165
+ printf (
166
+ '<tr valign="top"><th scope="row">%s</th><td>',
167
+ array_key_exists('description', $option)? $option['description']:'&nbsp;'
168
+ );
169
+ switch( $option['type'] ) {
170
+ case 'checkbox':
171
+ printf (
172
+ '<label for="%s"><input type="checkbox" name="%s" value="1"%s id="%s"/> %s</label>',
173
+ $field,
174
+ $field,
175
+ checked(1, get_option($field, 1), false),
176
+ $field,
177
+ isset($option['label'])? $option['label']:'&nbsp;'
178
+ );
179
+ break;
180
+ case 'text':
181
+ default:
182
+ printf (
183
+ '<input type="text" name="%s" value="%s" id="%s" class="regular-text code" />%s',
184
+ $field,
185
+ get_option($field, ''),
186
+ $field,
187
+ isset($option['label'])? '<p class="description">'.$option['label'].'</p>':''
188
+ );
189
+ break;
190
+ }
191
+ print '</td></tr>';
192
+ }
193
+ ?>
194
+ </tbody>
195
+ </table>
196
+ <p class="submit"><input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" /></p>
197
+ </form>
198
+ </div>
199
+ <div class="postbox-container" style="width:23%;margin-left:2%">
200
+ <div class="metabox-holder">
201
+ <div id="links" class="postbox">
202
+ <h3 class="hndle"><?php _e('Loved this Plugin?', 'iworks_orphan' ); ?></h3>
203
+ <div class="inside">
204
+ <p><?php _e('Below are some links to help spread this plugin to other users', 'iworks_orphan' ); ?></p>
205
+ <ul>
206
+ <li><a href="http://wordpress.org/extend/plugins/sierotki/"><?php _e('Give it a 5 star on Wordpress.org', 'iworks_orphan' ); ?></a></li>
207
+ <li><a href="http://wordpress.org/extend/plugins/sierotki/"><?php _e('Link to it so others can easily find it', 'iworks_orphan' ); ?></a></li>
208
+ </ul>
209
+ </div>
210
+ </div>
211
+ <div id="help" class="postbox">
212
+ <h3 class="hndle"><?php _e('Need Assistance?', 'iworks_orphan' ); ?></h3>
213
+ <div class="inside">
214
+ <p><?php _e('Problems? The links bellow can be very helpful to you', 'iworks_orphan' ); ?></p>
215
+ <ul>
216
+ <li><a href="<?php _e('http://wordpress.org/support/plugin/sierotki', 'iworks_orphan' ); ?>"><?php _e('Wordpress Help Forum', 'iworks_orphan' ); ?></a></li>
217
+ <li><a href="mailto:<?php echo antispambot('marcin@iworks.pl'); ?>"><?php echo antispambot('marcin@iworks.pl' ); ?></a></li>
218
+ </ul>
219
+ <hr />
220
+ <p class="description"><?php _e('Created by: ', 'iworks_orphan' ); ?> <a href="http://iworks.pl/"><span>iWorks.pl</span></a></p>
221
+ </div>
222
+ </div>
223
+ </div>
224
+ </div>
225
+ </div><?php
226
+ }
227
+
228
+ public function admin_menu()
229
+ {
230
+ if ( function_exists('add_theme_page' ) ) {
231
+ $this->admin_page = add_theme_page( __('Orphan', 'iworks_orphan'), __('Orphan', 'iworks_orphan'), 'manage_options', basename(__FILE__), array( &$this, 'option_page' ) );
232
+ add_action('load-'.$this->admin_page, array( &$this, 'add_help_tab' ) );
233
+ }
234
+ }
235
+
236
+ public function add_help_tab()
237
+ {
238
+ $screen = get_current_screen();
239
+ if ( $screen->id != $this->admin_page ) {
240
+ return;
241
+ }
242
+ // Add my_help_tab if current screen is My Admin Page
243
+ $screen->add_help_tab( array(
244
+ 'id' => 'overview',
245
+ 'title' => __('Orphans', 'iworks_orphan' ),
246
+ 'content' => '<p>' . __('Plugin fix some Polish gramary rules with orphans.', 'iworks_orphan' ) . '</p>',
247
+ ) );
248
+ /**
249
+ * make sidebar help
250
+ */
251
+ $screen->set_help_sidebar(
252
+ '<p><strong>' . __('For more information:' ) . '</strong></p>' .
253
+ '<p>' . __('<a href="http://wordpress.org/extend/plugins/sierotki/" target="_blank">Plugin Homepage</a>', 'iworks_orphan' ) . '</p>' .
254
+ '<p>' . __('<a href="http://wordpress.org/support/plugin/sierotki/" target="_blank">Support Forums</a>', 'iworks_orphan' ) . '</p>' .
255
+ '<p>' . __('<a href="http://iworks.pl/en/" target="_blank">break the web</a>', 'iworks_orphan' ) . '</p>'
256
+ );
257
+
258
+ }
259
+
260
+ public function admin_init()
261
+ {
262
+ foreach ( $this->options as $filter => $option) {
263
+ $sanitize_callback = isset($option['sanitize_callback'])? $option['sanitize_callback']:null;
264
+ register_setting('iworks_orphan', 'iworks_orphan_'.$filter, $sanitize_callback);
265
+ }
266
+ add_filter('plugin_row_meta', array( &$this, 'links' ), 10, 2 );
267
+ }
268
+
269
+ public function init()
270
+ {
271
+ if ( 0 == get_option('iworks_orphan_initialized', 0 ) ) {
272
+ foreach ( $this->options as $filter => $option ) {
273
+ if ( !isset( $option['type'] ) ) {
274
+ $option['type'] = 'undefinied';
275
+ }
276
+ switch( $option['type'] ) {
277
+ case 'checkbox':
278
+ update_option('iworks_orphan_'.$filter, 1);
279
+ break;
280
+ case 'text':
281
+ default:
282
+ update_option('iworks_orphan_'.$filter, '');
283
+ break;
284
+ }
285
+ }
286
+ update_option('iworks_orphan_initialized', 1);
287
+ }
288
+ foreach ( array_keys( $this->options ) as $filter ) {
289
+ if ( 1 == get_option('iworks_orphan_'.$filter, 1 ) ) {
290
+ add_filter($filter, array($this, 'replace'));
291
+ }
292
+ }
293
+ add_filter('iworks_orphan_replace', array($this, 'replace'));
294
+ }
295
+
296
+ public function links($links, $file)
297
+ {
298
+ if ( $file == plugin_basename(__FILE__) ) {
299
+ if ( !is_multisite() ) {
300
+ $dir = explode('/', dirname(__FILE__));
301
+ $dir = $dir[ count( $dir ) - 1 ];
302
+ $links[] = '<a href="themes.php?page='.$dir.'.php">' . __('Settings') . '</a>';
303
+ }
304
+ $links[] = '<a href="http://iworks.pl/donate/sierotki.php">' . __('Donate') . '</a>';
305
+ }
306
+ return $links;
307
+ }
308
+ }