External Links - Version 6.1

Version Description

  • The nofollow attribute was not being set if a certain combination of the global, follow comments, set nofollow settings were set.
  • Backtracked and removed the Follow Comments functionality. It's usage was limited to certain cases and if Apply Globally was on, then it was disabled. Supporting it was adding too complex logic.
Download this release

Release Info

Developer Mike_Koepke
Plugin Icon wp plugin External Links
Version 6.1
Comparing to
See all releases

Code changes from version 6.0.1 to 6.1

readme.txt CHANGED
@@ -22,13 +22,12 @@ Under Settings / External Links, you can configure the plugin to:
22
  - Add an external link icon to outgoing links. You can use a class="no_icon" attribute on links to override this.
23
  - Add rel=nofollow to the links. (Note: You can use a rel="follow" attribute on links to override this.)
24
  - Open outgoing links in new windows. Note that this can damage your visitor's trust towards your site in that they can think your site used a pop-under.
25
- - Follow comment links (supersedes the nofollow setting in the comment area).
26
  - Turn on "autolinks" functionality.
27
 
28
 
29
  = Auto Links =
30
 
31
- The Autolink functionaity automatically converts urls to hyperlinked urls in post/page content, excerpts and text widgets.
32
 
33
  Before:
34
 
@@ -39,11 +38,6 @@ After:
39
  > [www.semiologic.com](http://www.semiologic.com)
40
 
41
 
42
- = Follow Comments =
43
-
44
- The Follow Comments functionality lets you remove the evil nofollow attribute from your comments.
45
-
46
-
47
  = Help Me! =
48
 
49
  The [Semiologic forum](http://forum.semiologic.com) is the best place to report issues. Please note, however, that while community members and I do our best to answer all queries, we're assisting you on a voluntary basis.
@@ -66,6 +60,15 @@ The plugin supports a non-started rel="follow" attribute on links to override th
66
 
67
  == Change Log ==
68
 
 
 
 
 
 
 
 
 
 
69
  = 6.0 =
70
 
71
  - Fixed performance issues with the link processing. Really was poor.
22
  - Add an external link icon to outgoing links. You can use a class="no_icon" attribute on links to override this.
23
  - Add rel=nofollow to the links. (Note: You can use a rel="follow" attribute on links to override this.)
24
  - Open outgoing links in new windows. Note that this can damage your visitor's trust towards your site in that they can think your site used a pop-under.
 
25
  - Turn on "autolinks" functionality.
26
 
27
 
28
  = Auto Links =
29
 
30
+ The Autolink functionality automatically converts urls to hyperlinked urls in post/page content, excerpts and text widgets.
31
 
32
  Before:
33
 
38
  > [www.semiologic.com](http://www.semiologic.com)
39
 
40
 
 
 
 
 
 
41
  = Help Me! =
42
 
43
  The [Semiologic forum](http://forum.semiologic.com) is the best place to report issues. Please note, however, that while community members and I do our best to answer all queries, we're assisting you on a voluntary basis.
60
 
61
  == Change Log ==
62
 
63
+ = 6.1 =
64
+
65
+ - The nofollow attribute was not being set if a certain combination of the global, follow comments, set nofollow settings were set.
66
+ - Backtracked and removed the Follow Comments functionality. It's usage was limited to certain cases and if Apply Globally was on, then it was disabled. Supporting it was adding too complex logic.
67
+
68
+ = 6.0.1 =
69
+
70
+ - Well plugin decided to break classes on embedded images. Obviously corrected.
71
+
72
  = 6.0 =
73
 
74
  - Fixed performance issues with the link processing. Really was poor.
sem-external-links-admin.php CHANGED
@@ -80,12 +80,12 @@ class external_links_admin {
80
  check_admin_referer('sem_external_links');
81
 
82
  foreach ( array('global', 'icon', 'target', 'nofollow', 'text_widgets', 'autolinks',
83
- 'follow_comments', 'subdomains_local') as $var )
84
  $$var = isset($_POST[$var]);
85
 
86
  $version = sem_external_links_version;
87
  update_option('external_links', compact('global', 'icon', 'target', 'nofollow', 'text_widgets',
88
- 'autolinks', 'follow_comments', 'subdomains_local', 'version'));
89
 
90
  echo "<div class=\"updated fade\">\n"
91
  . "<p>"
@@ -188,23 +188,6 @@ class external_links_admin {
188
  . __('This conversion will occur first so external link treatment for nofollow, icon and target will be applied to this auto links.', 'external-links') . '</i>'
189
  . '</td>' . "\n"
190
  . '</tr>' . "\n";
191
-
192
- echo '<tr>' . "\n"
193
- . '<th scope="row">'
194
- . __('Add Icons', 'external-links')
195
- . '</th>' . "\n"
196
- . '<td>'
197
- . '<label>'
198
- . '<input type="checkbox" name="icon"'
199
- . checked($options['icon'], true, false)
200
- . ' />'
201
- . '&nbsp;'
202
- . __('Mark outbound links with an icon.', 'external-links')
203
- . '</label>'
204
- . '<br />' . "\n"
205
- . '<i>' .__('Note: You can override this behavior by adding a class="no_icon" to individual links.', 'external-links') . '</i>'
206
- . '</td>' . "\n"
207
- . '</tr>' . "\n";
208
 
209
  echo '<tr>' . "\n"
210
  . '<th scope="row">'
@@ -220,25 +203,23 @@ class external_links_admin {
220
  . '</label>'
221
  . '<br />' . "\n"
222
  . '<i>' . __('Note: You can override this behavior by adding the attribute rel="follow" to individual links.', 'external-links')
223
- . '<br />' . "\n"
224
- . __('Your rel="nofollow" preferences will be ignored for comments if the "Do Follow Comment Links" setting below is enabled or if the standalone Dofollow plugin is enabled on your site.', 'external-links') . '</i>'
225
  . '</td>' . "\n"
226
  . '</tr>' . "\n";
227
-
228
  echo '<tr>' . "\n"
229
  . '<th scope="row">'
230
- . __('Do Follow Comment Links', 'external-links')
231
  . '</th>' . "\n"
232
  . '<td>'
233
  . '<label>'
234
- . '<input type="checkbox" name="follow_comments"'
235
- . checked($options['follow_comments'], true, false)
236
  . ' />'
237
  . '&nbsp;'
238
- . __('Override WordPress\' default behavior of adding rel="nofollow" to comment links.', 'external-links')
239
  . '</label>'
240
  . '<br />' . "\n"
241
- . '<i>' . __('Note: You can override this behavior by adding the attribute rel="follow" to individual links.', 'external-links') . '</i>'
242
  . '</td>' . "\n"
243
  . '</tr>' . "\n";
244
 
80
  check_admin_referer('sem_external_links');
81
 
82
  foreach ( array('global', 'icon', 'target', 'nofollow', 'text_widgets', 'autolinks',
83
+ 'subdomains_local') as $var )
84
  $$var = isset($_POST[$var]);
85
 
86
  $version = sem_external_links_version;
87
  update_option('external_links', compact('global', 'icon', 'target', 'nofollow', 'text_widgets',
88
+ 'autolinks', 'subdomains_local', 'version'));
89
 
90
  echo "<div class=\"updated fade\">\n"
91
  . "<p>"
188
  . __('This conversion will occur first so external link treatment for nofollow, icon and target will be applied to this auto links.', 'external-links') . '</i>'
189
  . '</td>' . "\n"
190
  . '</tr>' . "\n";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
191
 
192
  echo '<tr>' . "\n"
193
  . '<th scope="row">'
203
  . '</label>'
204
  . '<br />' . "\n"
205
  . '<i>' . __('Note: You can override this behavior by adding the attribute rel="follow" to individual links.', 'external-links')
 
 
206
  . '</td>' . "\n"
207
  . '</tr>' . "\n";
208
+
209
  echo '<tr>' . "\n"
210
  . '<th scope="row">'
211
+ . __('Add Icons', 'external-links')
212
  . '</th>' . "\n"
213
  . '<td>'
214
  . '<label>'
215
+ . '<input type="checkbox" name="icon"'
216
+ . checked($options['icon'], true, false)
217
  . ' />'
218
  . '&nbsp;'
219
+ . __('Mark outbound links with an icon.', 'external-links')
220
  . '</label>'
221
  . '<br />' . "\n"
222
+ . '<i>' .__('Note: You can override this behavior by adding a class="no_icon" or "noicon" to individual links.', 'external-links') . '</i>'
223
  . '</td>' . "\n"
224
  . '</tr>' . "\n";
225
 
sem-external-links.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: External Links
4
  Plugin URI: http://www.semiologic.com/software/external-links/
5
  Description: Marks outbound links as such, with various effects that are configurable under <a href="options-general.php?page=external-links">Settings / External Links</a>.
6
- Version: 6.0
7
  Author: Denis de Bernardy & Mike Koepke
8
  Author URI: http://www.getsemiologic.com
9
  Text Domain: external-links
@@ -19,7 +19,7 @@ This software is copyright Denis de Bernardy & Mike Koepke, and is distributed u
19
 
20
  **/
21
 
22
- define('sem_external_links_version', '6.0');
23
 
24
  /**
25
  * external_links
@@ -119,11 +119,6 @@ class sem_external_links {
119
  if ( $this->opts['icon'] )
120
  add_action('wp_enqueue_scripts', array($this, 'styles'), 5);
121
 
122
- if ( $this->opts['follow_comments'] ) {
123
- if ( !class_exists('sem_follow_comment') )
124
- include $this->plugin_path . '/sem-follow_comment.php';
125
- }
126
-
127
  if ( $this->opts['autolinks'] ) {
128
  if ( !class_exists('sem_autolink_uri') )
129
  include $this->plugin_path . '/sem-autolink-uri.php';
@@ -307,7 +302,7 @@ class sem_external_links {
307
  $anchor = $this->filter_anchor( $anchor );
308
 
309
  if ( $anchor )
310
- $anchor = $this->build_anchor($match[0], $anchor);
311
 
312
  return $anchor;
313
  } # process_link()
@@ -322,7 +317,7 @@ class sem_external_links {
322
 
323
  function parse_anchor($match) {
324
  $anchor = array();
325
- $anchor['attr'] = $this->parseAttributes( $match[1] );
326
 
327
  if ( !is_array($anchor['attr']) || empty($anchor['attr']['href']) # parser error or no link
328
  || trim($anchor['attr']['href']) != esc_url($anchor['attr']['href'], null, 'db') ) # likely a script
@@ -348,33 +343,29 @@ class sem_external_links {
348
  /**
349
  * build_anchor()
350
  *
351
- * @param $link
352
  * @param array $anchor
353
  * @return string $anchor
354
  */
355
 
356
- function build_anchor($link, $anchor) {
357
-
358
- $attrs = array( 'class', 'rel', 'target');
359
 
360
- foreach ( $attrs as $attr ) {
361
- if ( isset($anchor['attr'][$attr]) ) {
362
- $new_attr_value = null;
363
- $values = $anchor['attr'][$attr];
364
- if ( is_array($values) ) {
365
- $values = array_unique($values);
366
- if ( $values )
367
- $new_attr_value = implode(' ', $values );
368
- } else {
369
- $new_attr_value = $values;
370
- }
371
-
372
- if ( $new_attr_value )
373
- $link = $this->update_attribute($link, $attr, $new_attr_value);
374
  }
375
  }
 
376
 
377
- return $link;
378
  } # build_anchor()
379
 
380
  /**
@@ -390,26 +381,89 @@ class sem_external_links {
390
  * @example parse_attrs( '<a href="example"></a>' )
391
  * @example parse_attrs( '<a href="example">' )
392
  */
393
- function parseAttributes($text) {
394
- $attributes = array();
395
- $pattern = '#(?(DEFINE)
396
- (?<name>[a-zA-Z][a-zA-Z0-9-:]*)
397
- (?<value_double>"[^"]+")
398
- (?<value_single>\'[^\']+\')
399
- (?<value_none>[^\s>]+)
400
- (?<value>((?&value_double)|(?&value_single)|(?&value_none)))
401
- )
402
- (?<n>(?&name))(=(?<v>(?&value)))?#xs';
403
-
404
- if (preg_match_all($pattern, $text, $matches, PREG_SET_ORDER)) {
405
- foreach ($matches as $match) {
406
- $attributes[$match['n']] = isset($match['v'])
407
- ? trim($match['v'], '\'"')
408
- : null;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
409
  }
410
  }
411
 
412
- return $attributes;
 
 
 
413
  }
414
 
415
  /**
@@ -479,13 +533,10 @@ class sem_external_links {
479
  $updated = true;
480
  }
481
 
482
- if ( $this->opts['nofollow'] && ( current_filter() == 'comment_text')
483
- && !function_exists('strip_nofollow')
484
- && !class_exists('sem_dofollow') && !class_exists('sem_follow_comment')
485
- && !in_array('nofollow', $anchor['attr']['rel'])
486
  && !in_array('follow', $anchor['attr']['rel']) ) {
487
- $anchor['attr']['rel'][] = 'nofollow';
488
- $updated = true;
489
  }
490
 
491
  if ( $this->opts['target'] && empty($anchor['attr']['target']) ) {
@@ -672,7 +723,6 @@ class sem_external_links {
672
  'nofollow' => true,
673
  'text_widgets' => true,
674
  'autolinks' => false,
675
- 'follow_comments' => false,
676
  'subdomains_local' => true,
677
  'version' => sem_external_links_version,
678
  );
@@ -683,8 +733,6 @@ class sem_external_links {
683
  $updated_opts = wp_parse_args($o, $defaults);
684
 
685
  if ( !isset( $o['version'] )) {
686
- if ( sem_external_links::replace_plugin('sem-dofollow/sem-dofollow.php') )
687
- $updated_opts['follow_comments'] = true;
688
 
689
  if ( sem_external_links::replace_plugin('sem-autolink-uri/sem-autolink-uri.php') )
690
  $updated_opts['autolinks'] = true;
3
  Plugin Name: External Links
4
  Plugin URI: http://www.semiologic.com/software/external-links/
5
  Description: Marks outbound links as such, with various effects that are configurable under <a href="options-general.php?page=external-links">Settings / External Links</a>.
6
+ Version: 6.1
7
  Author: Denis de Bernardy & Mike Koepke
8
  Author URI: http://www.getsemiologic.com
9
  Text Domain: external-links
19
 
20
  **/
21
 
22
+ define('sem_external_links_version', '6.1');
23
 
24
  /**
25
  * external_links
119
  if ( $this->opts['icon'] )
120
  add_action('wp_enqueue_scripts', array($this, 'styles'), 5);
121
 
 
 
 
 
 
122
  if ( $this->opts['autolinks'] ) {
123
  if ( !class_exists('sem_autolink_uri') )
124
  include $this->plugin_path . '/sem-autolink-uri.php';
302
  $anchor = $this->filter_anchor( $anchor );
303
 
304
  if ( $anchor )
305
+ $anchor = $this->build_anchor($anchor);
306
 
307
  return $anchor;
308
  } # process_link()
317
 
318
  function parse_anchor($match) {
319
  $anchor = array();
320
+ $anchor['attr'] = $this->parse_attrs( $match[1] );
321
 
322
  if ( !is_array($anchor['attr']) || empty($anchor['attr']['href']) # parser error or no link
323
  || trim($anchor['attr']['href']) != esc_url($anchor['attr']['href'], null, 'db') ) # likely a script
343
  /**
344
  * build_anchor()
345
  *
 
346
  * @param array $anchor
347
  * @return string $anchor
348
  */
349
 
350
+ function build_anchor($anchor) {
351
+ $anchor['attr']['href'] = esc_url($anchor['attr']['href']);
 
352
 
353
+ $str = '<a';
354
+ foreach ( $anchor['attr'] as $k => $v ) {
355
+ if ( is_array($v) ) {
356
+ $v = array_unique($v);
357
+ if ( $v )
358
+ $str .= ' ' . $k . '="' . implode(' ', $v) . '"';
359
+ } else {
360
+ if ($k)
361
+ $str .= ' ' . $k . '="' . $v . '"';
362
+ else
363
+ $str .= ' ' . $v;
 
 
 
364
  }
365
  }
366
+ $str .= '>' . $anchor['body'] . '</a>';
367
 
368
+ return $str;
369
  } # build_anchor()
370
 
371
  /**
381
  * @example parse_attrs( '<a href="example"></a>' )
382
  * @example parse_attrs( '<a href="example">' )
383
  */
384
+ function parse_attrs($attrs) {
385
+
386
+ if ( !is_scalar($attrs) )
387
+ return (array) $attrs;
388
+
389
+ $attrs = str_split( trim($attrs) );
390
+
391
+ if ( '<' === $attrs[0] ) # looks like a tag so strip the tagname
392
+ while ( $attrs && ! ctype_space($attrs[0]) && $attrs[0] !== '>' )
393
+ array_shift($attrs);
394
+
395
+ $arr = array(); # output
396
+ $name = ''; # for the current attr being parsed
397
+ $value = ''; # for the current attr being parsed
398
+ $mode = 0; # whether current char is part of the name (-), the value (+), or neither (0)
399
+ $stop = false; # delimiter for the current $value being parsed
400
+ $space = ' '; # a single space
401
+ $paren = 0; # in parenthesis for js attrs
402
+
403
+ foreach ( $attrs as $j => $curr ) {
404
+
405
+ if ( $mode < 0 ) {# name
406
+ if ( '=' === $curr ) {
407
+ $mode = 1;
408
+ $stop = false;
409
+ } elseif ( '>' === $curr ) {
410
+ '' === $name or $arr[ $name ] = $value;
411
+ break;
412
+ } elseif ( !ctype_space($curr) ) {
413
+ if ( ctype_space( $attrs[ $j - 1 ] ) ) { # previous char
414
+ '' === $name or $arr[ $name ] = ''; # previous name
415
+ $name = $curr; # initiate new
416
+ } else {
417
+ $name .= $curr;
418
+ }
419
+ }
420
+ } elseif ( $mode > 0 ) {# value
421
+ if ( $paren ) {
422
+ $value .= $curr;
423
+ if ( $curr === "(")
424
+ $paren += 1;
425
+ elseif ( $curr === ")")
426
+ $paren -= 1;
427
+ }
428
+ else {
429
+ if ( $stop === false ) {
430
+ if ( !ctype_space($curr) ) {
431
+ if ( '"' === $curr || "'" === $curr ) {
432
+ $value = '';
433
+ $stop = $curr;
434
+ } else {
435
+ $value = $curr;
436
+ $stop = $space;
437
+ }
438
+ }
439
+ } elseif ( $stop === $space ? ctype_space($curr) : $curr === $stop ) {
440
+ $arr[ $name ] = $value;
441
+ $mode = 0;
442
+ $name = $value = '';
443
+ } else {
444
+ $value .= $curr;
445
+ if ( $curr === "(")
446
+ $paren += 1;
447
+ elseif ( $curr === ")")
448
+ $paren -= 1;
449
+ }
450
+ }
451
+ } else {# neither
452
+
453
+ if ( '>' === $curr )
454
+ break;
455
+ if ( !ctype_space( $curr ) ) {
456
+ # initiate
457
+ $name = $curr;
458
+ $mode = -1;
459
+ }
460
  }
461
  }
462
 
463
+ # incl the final pair if it was quoteless
464
+ '' === $name or $arr[ $name ] = $value;
465
+
466
+ return $arr;
467
  }
468
 
469
  /**
533
  $updated = true;
534
  }
535
 
536
+ if ( $this->opts['nofollow'] && !in_array('nofollow', $anchor['attr']['rel'])
 
 
 
537
  && !in_array('follow', $anchor['attr']['rel']) ) {
538
+ $anchor['attr']['rel'][] = 'nofollow';
539
+ $updated = true;
540
  }
541
 
542
  if ( $this->opts['target'] && empty($anchor['attr']['target']) ) {
723
  'nofollow' => true,
724
  'text_widgets' => true,
725
  'autolinks' => false,
 
726
  'subdomains_local' => true,
727
  'version' => sem_external_links_version,
728
  );
733
  $updated_opts = wp_parse_args($o, $defaults);
734
 
735
  if ( !isset( $o['version'] )) {
 
 
736
 
737
  if ( sem_external_links::replace_plugin('sem-autolink-uri/sem-autolink-uri.php') )
738
  $updated_opts['autolinks'] = true;
sem-external-links.pot CHANGED
@@ -2,9 +2,10 @@
2
  # This file is distributed under the same license as the External Links package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: External Links 6.0 dev\n"
6
- "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/sem-external-links\n"
7
- "POT-Creation-Date: 2014-11-01 18:01:56+00:00\n"
 
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -17,7 +18,9 @@ msgid "Settings saved."
17
  msgstr ""
18
 
19
  #: sem-external-links-admin.php:117
20
- msgid "Note: Your rel=nofollow preferences is being ignored because the dofollow plugin is enabled on your site."
 
 
21
  msgstr ""
22
 
23
  #: sem-external-links-admin.php:122
@@ -29,7 +32,9 @@ msgid "Apply Globally"
29
  msgstr ""
30
 
31
  #: sem-external-links-admin.php:136
32
- msgid "Apply these settings to all outbound links on the site except those in scripts, styles and the html head section."
 
 
33
  msgstr ""
34
 
35
  #: sem-external-links-admin.php:143
@@ -37,7 +42,9 @@ msgid "Apply to Text Widgets"
37
  msgstr ""
38
 
39
  #: sem-external-links-admin.php:151
40
- msgid "Apply these settings to any text widgets in addition to post, page and comments content."
 
 
41
  msgstr ""
42
 
43
  #: sem-external-links-admin.php:158
@@ -49,7 +56,9 @@ msgid "Treat any subdomains for this site as a local link."
49
  msgstr ""
50
 
51
  #: sem-external-links-admin.php:169
52
- msgid "Example: If your site is at domain.com and you also have store.domain.com, any link to store.domain.com will be treated as local."
 
 
53
  msgstr ""
54
 
55
  #: sem-external-links-admin.php:175
@@ -61,85 +70,86 @@ msgid "Automatically converts text urls into clickable urls."
61
  msgstr ""
62
 
63
  #: sem-external-links-admin.php:186
64
- msgid "Note: If this option is enabled then if www.example.com is found in your text, it will be converted to an html &lt;a&gt; link.\""
 
 
65
  msgstr ""
66
 
67
  #: sem-external-links-admin.php:188
68
- msgid "This conversion will occur first so external link treatment for nofollow, icon and target will be applied to this auto links."
 
 
69
  msgstr ""
70
 
71
  #: sem-external-links-admin.php:194
72
- msgid "Add Icons"
73
  msgstr ""
74
 
75
  #: sem-external-links-admin.php:202
76
- msgid "Mark outbound links with an icon."
77
  msgstr ""
78
 
79
  #: sem-external-links-admin.php:205
80
- msgid "Note: You can override this behavior by adding a class=\"no_icon\" to individual links."
 
 
81
  msgstr ""
82
 
83
  #: sem-external-links-admin.php:211
84
- msgid "Add No Follow"
85
  msgstr ""
86
 
87
  #: sem-external-links-admin.php:219
88
- msgid "Add a rel=\"nofollow\" attribute to outbound links."
89
- msgstr ""
90
-
91
- #: sem-external-links-admin.php:222 sem-external-links-admin.php:241
92
- msgid "Note: You can override this behavior by adding the attribute rel=\"follow\" to individual links."
93
- msgstr ""
94
-
95
- #: sem-external-links-admin.php:224
96
- msgid "Your rel=\"nofollow\" preferences will be ignored for comments if the \"Do Follow Comment Links\" setting below is enabled or if the standalone Dofollow plugin is enabled on your site."
97
- msgstr ""
98
-
99
- #: sem-external-links-admin.php:230
100
- msgid "Do Follow Comment Links"
101
  msgstr ""
102
 
103
- #: sem-external-links-admin.php:238
104
- msgid "Override WordPress' default behavior of adding rel=\"nofollow\" to comment links."
 
 
105
  msgstr ""
106
 
107
- #: sem-external-links-admin.php:247
108
  msgid "Open in New Windows"
109
  msgstr ""
110
 
111
- #: sem-external-links-admin.php:255
112
  msgid "Open outbound links in new windows."
113
  msgstr ""
114
 
115
- #: sem-external-links-admin.php:258
116
- msgid "Note: Some usability experts discourage this, claiming that <a href=\"http://www.useit.com/alertbox/9605.html\">this can damage your visitors' trust</a> towards your site. Others highlight that computer-illiterate users do not always know how to use the back button, and encourage the practice for that reason."
 
 
 
 
 
117
  msgstr ""
118
 
119
- #: sem-external-links-admin.php:266
120
  msgid "Save Changes"
121
  msgstr ""
122
 
123
- #: sem-external-links-info.php:2 sem-external-links.php:732
124
- #: sem-external-links.php:733
 
 
125
  msgid "External Links"
126
  msgstr ""
127
 
 
 
128
  #: sem-external-links-info.php:3
129
- msgid "Marks outbound links as such, with various effects that are configurable under <a href=\"options-general.php?page=external-links\">Settings / External Links</a>."
130
- msgstr ""
131
- #. Plugin Name of the plugin/theme
132
- msgid "External Links"
133
  msgstr ""
134
 
135
  #. Plugin URI of the plugin/theme
136
  msgid "http://www.semiologic.com/software/external-links/"
137
  msgstr ""
138
 
139
- #. Description of the plugin/theme
140
- msgid "Marks outbound links as such, with various effects that are configurable under <a href=\"options-general.php?page=external-links\">Settings / External Links</a>."
141
- msgstr ""
142
-
143
  #. Author of the plugin/theme
144
  msgid "Denis de Bernardy & Mike Koepke"
145
  msgstr ""
2
  # This file is distributed under the same license as the External Links package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: External Links 6.1\n"
6
+ "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/sem-external-"
7
+ "links\n"
8
+ "POT-Creation-Date: 2014-11-06 02:35:09+00:00\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
18
  msgstr ""
19
 
20
  #: sem-external-links-admin.php:117
21
+ msgid ""
22
+ "Note: Your rel=nofollow preferences is being ignored because the dofollow "
23
+ "plugin is enabled on your site."
24
  msgstr ""
25
 
26
  #: sem-external-links-admin.php:122
32
  msgstr ""
33
 
34
  #: sem-external-links-admin.php:136
35
+ msgid ""
36
+ "Apply these settings to all outbound links on the site except those in "
37
+ "scripts, styles and the html head section."
38
  msgstr ""
39
 
40
  #: sem-external-links-admin.php:143
42
  msgstr ""
43
 
44
  #: sem-external-links-admin.php:151
45
+ msgid ""
46
+ "Apply these settings to any text widgets in addition to post, page and "
47
+ "comments content."
48
  msgstr ""
49
 
50
  #: sem-external-links-admin.php:158
56
  msgstr ""
57
 
58
  #: sem-external-links-admin.php:169
59
+ msgid ""
60
+ "Example: If your site is at domain.com and you also have store.domain.com, "
61
+ "any link to store.domain.com will be treated as local."
62
  msgstr ""
63
 
64
  #: sem-external-links-admin.php:175
70
  msgstr ""
71
 
72
  #: sem-external-links-admin.php:186
73
+ msgid ""
74
+ "Note: If this option is enabled then if www.example.com is found in your "
75
+ "text, it will be converted to an html &lt;a&gt; link.\""
76
  msgstr ""
77
 
78
  #: sem-external-links-admin.php:188
79
+ msgid ""
80
+ "This conversion will occur first so external link treatment for nofollow, "
81
+ "icon and target will be applied to this auto links."
82
  msgstr ""
83
 
84
  #: sem-external-links-admin.php:194
85
+ msgid "Add No Follow"
86
  msgstr ""
87
 
88
  #: sem-external-links-admin.php:202
89
+ msgid "Add a rel=\"nofollow\" attribute to outbound links."
90
  msgstr ""
91
 
92
  #: sem-external-links-admin.php:205
93
+ msgid ""
94
+ "Note: You can override this behavior by adding the attribute rel=\"follow\" "
95
+ "to individual links."
96
  msgstr ""
97
 
98
  #: sem-external-links-admin.php:211
99
+ msgid "Add Icons"
100
  msgstr ""
101
 
102
  #: sem-external-links-admin.php:219
103
+ msgid "Mark outbound links with an icon."
 
 
 
 
 
 
 
 
 
 
 
 
104
  msgstr ""
105
 
106
+ #: sem-external-links-admin.php:222
107
+ msgid ""
108
+ "Note: You can override this behavior by adding a class=\"no_icon\" or "
109
+ "\"noicon\" to individual links."
110
  msgstr ""
111
 
112
+ #: sem-external-links-admin.php:228
113
  msgid "Open in New Windows"
114
  msgstr ""
115
 
116
+ #: sem-external-links-admin.php:236
117
  msgid "Open outbound links in new windows."
118
  msgstr ""
119
 
120
+ #: sem-external-links-admin.php:239
121
+ msgid ""
122
+ "Note: Some usability experts discourage this, claiming that <a href=\"http://"
123
+ "www.useit.com/alertbox/9605.html\">this can damage your visitors' trust</a> "
124
+ "towards your site. Others highlight that computer-illiterate users do not "
125
+ "always know how to use the back button, and encourage the practice for that "
126
+ "reason."
127
  msgstr ""
128
 
129
+ #: sem-external-links-admin.php:247
130
  msgid "Save Changes"
131
  msgstr ""
132
 
133
+ #. #-#-#-#-# sem-external-links.pot (External Links 6.1) #-#-#-#-#
134
+ #. Plugin Name of the plugin/theme
135
+ #: sem-external-links-info.php:2 sem-external-links.php:785
136
+ #: sem-external-links.php:786
137
  msgid "External Links"
138
  msgstr ""
139
 
140
+ #. #-#-#-#-# sem-external-links.pot (External Links 6.1) #-#-#-#-#
141
+ #. Description of the plugin/theme
142
  #: sem-external-links-info.php:3
143
+ msgid ""
144
+ "Marks outbound links as such, with various effects that are configurable "
145
+ "under <a href=\"options-general.php?page=external-links\">Settings / "
146
+ "External Links</a>."
147
  msgstr ""
148
 
149
  #. Plugin URI of the plugin/theme
150
  msgid "http://www.semiologic.com/software/external-links/"
151
  msgstr ""
152
 
 
 
 
 
153
  #. Author of the plugin/theme
154
  msgid "Denis de Bernardy & Mike Koepke"
155
  msgstr ""