Version Description
Download this release
Release Info
| Developer | freediver |
| Plugin | |
| Version | 2.3 |
| Comparing to | |
| See all releases | |
Code changes from version 2.2.2 to 2.3
- readme.txt +3 -0
- seo-links.php +26 -1
readme.txt
CHANGED
|
@@ -25,6 +25,9 @@ Plugin by Vladimir Prelovac a <a href="http://www.prelovac.com/vladimir/services
|
|
| 25 |
|
| 26 |
== Changelog ==
|
| 27 |
|
|
|
|
|
|
|
|
|
|
| 28 |
= 2.2.2 =
|
| 29 |
* Readme file consolidated
|
| 30 |
|
| 25 |
|
| 26 |
== Changelog ==
|
| 27 |
|
| 28 |
+
= 2.3=
|
| 29 |
+
* Prevent linking inside heading tags (h1, h2..) (credits to <a href="http://www.munchweb.com">Chris Tew</a>)
|
| 30 |
+
|
| 31 |
= 2.2.2 =
|
| 32 |
* Readme file consolidated
|
| 33 |
|
seo-links.php
CHANGED
|
@@ -2,7 +2,7 @@
|
|
| 2 |
|
| 3 |
/*
|
| 4 |
Plugin Name: SEO Smart Links
|
| 5 |
-
Version: 2.
|
| 6 |
Plugin URI: http://www.prelovac.com/vladimir/wordpress-plugins/seo-smart-links
|
| 7 |
Author: Vladimir Prelovac</a>
|
| 8 |
Author URI: http://www.prelovac.com/vladimir
|
|
@@ -88,6 +88,10 @@ function SEOLinks_process_text($text, $mode)
|
|
| 88 |
$minusage = ($options['minusage']>0) ? $options['minusage'] : 1;
|
| 89 |
|
| 90 |
$arrignore=$this->explode_trim(",", ($options['ignore']));
|
|
|
|
|
|
|
|
|
|
|
|
|
| 91 |
|
| 92 |
// $reg_post = $options['casesens'] ? '/(?!(?:[^<]+>|[^>]+<\/a>))($name)/msU' : '/(?!(?:[^<]+>|[^>]+<\/a>))($name)/imsU';
|
| 93 |
// $reg = $options['casesens'] ? '/(?!(?:[^<]+>|[^>]+<\/a>))\b($name)\b/msU' : '/(?!(?:[^<]+>|[^>]+<\/a>))\b($name)\b/imsU';
|
|
@@ -239,6 +243,10 @@ function SEOLinks_process_text($text, $mode)
|
|
| 239 |
}
|
| 240 |
}
|
| 241 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 242 |
return trim( $text );
|
| 243 |
|
| 244 |
}
|
|
@@ -296,6 +304,7 @@ function SEOLinks_comment_text_filter($text) {
|
|
| 296 |
'page' => 'on',
|
| 297 |
'pageself' => '',
|
| 298 |
'comment' => '',
|
|
|
|
| 299 |
'lposts' => 'on',
|
| 300 |
'lpages' => 'on',
|
| 301 |
'lcats' => '',
|
|
@@ -352,6 +361,7 @@ function SEOLinks_comment_text_filter($text) {
|
|
| 352 |
$options['page']=$_POST['page'];
|
| 353 |
$options['pageself']=$_POST['pageself'];
|
| 354 |
$options['comment']=$_POST['comment'];
|
|
|
|
| 355 |
$options['lposts']=$_POST['lposts'];
|
| 356 |
$options['lpages']=$_POST['lpages'];
|
| 357 |
$options['lcats']=$_POST['lcats'];
|
|
@@ -385,6 +395,7 @@ function SEOLinks_comment_text_filter($text) {
|
|
| 385 |
$page=$options['page']=='on'?'checked':'';
|
| 386 |
$pageself=$options['pageself']=='on'?'checked':'';
|
| 387 |
$comment=$options['comment']=='on'?'checked':'';
|
|
|
|
| 388 |
$lposts=$options['lposts']=='on'?'checked':'';
|
| 389 |
$lpages=$options['lpages']=='on'?'checked':'';
|
| 390 |
$lcats=$options['lcats']=='on'?'checked':'';
|
|
@@ -451,6 +462,9 @@ function SEOLinks_comment_text_filter($text) {
|
|
| 451 |
<br />
|
| 452 |
<input type="checkbox" name="comment" $comment /><label for="comment"> Comments</label> (may slow down performance) <br>
|
| 453 |
|
|
|
|
|
|
|
|
|
|
| 454 |
<h4>Target</h4>
|
| 455 |
<p>The targets SEO Smart links should consider. The match will be based on post/page title or category/tag name, case insensitive.</p>
|
| 456 |
<input type="checkbox" name="lposts" $lposts /><label for="lposts"> Posts</label> <br>
|
|
@@ -547,4 +561,15 @@ if ( class_exists('SEOLinks') ) :
|
|
| 547 |
}
|
| 548 |
endif;
|
| 549 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 550 |
?>
|
| 2 |
|
| 3 |
/*
|
| 4 |
Plugin Name: SEO Smart Links
|
| 5 |
+
Version: 2.3
|
| 6 |
Plugin URI: http://www.prelovac.com/vladimir/wordpress-plugins/seo-smart-links
|
| 7 |
Author: Vladimir Prelovac</a>
|
| 8 |
Author URI: http://www.prelovac.com/vladimir
|
| 88 |
$minusage = ($options['minusage']>0) ? $options['minusage'] : 1;
|
| 89 |
|
| 90 |
$arrignore=$this->explode_trim(",", ($options['ignore']));
|
| 91 |
+
if ($options['excludeheading'] == "on") {
|
| 92 |
+
//Here insert special characters
|
| 93 |
+
$text = preg_replace('%(<h.*?>)(.*?)(</h.*?>)%sie', "'\\1'.insertspecialchars('\\2').'\\3'", $text);
|
| 94 |
+
}
|
| 95 |
|
| 96 |
// $reg_post = $options['casesens'] ? '/(?!(?:[^<]+>|[^>]+<\/a>))($name)/msU' : '/(?!(?:[^<]+>|[^>]+<\/a>))($name)/imsU';
|
| 97 |
// $reg = $options['casesens'] ? '/(?!(?:[^<]+>|[^>]+<\/a>))\b($name)\b/msU' : '/(?!(?:[^<]+>|[^>]+<\/a>))\b($name)\b/imsU';
|
| 243 |
}
|
| 244 |
}
|
| 245 |
|
| 246 |
+
if ($options['excludeheading'] == "on") {
|
| 247 |
+
//Here insert special characters
|
| 248 |
+
$text = preg_replace('%(<h.*?>)(.*?)(</h.*?>)%sie', "'\\1'.removespecialchars('\\2').'\\3'", $text);
|
| 249 |
+
}
|
| 250 |
return trim( $text );
|
| 251 |
|
| 252 |
}
|
| 304 |
'page' => 'on',
|
| 305 |
'pageself' => '',
|
| 306 |
'comment' => '',
|
| 307 |
+
'excludeheading' => 'on',
|
| 308 |
'lposts' => 'on',
|
| 309 |
'lpages' => 'on',
|
| 310 |
'lcats' => '',
|
| 361 |
$options['page']=$_POST['page'];
|
| 362 |
$options['pageself']=$_POST['pageself'];
|
| 363 |
$options['comment']=$_POST['comment'];
|
| 364 |
+
$options['excludeheading']=$_POST['excludeheading'];
|
| 365 |
$options['lposts']=$_POST['lposts'];
|
| 366 |
$options['lpages']=$_POST['lpages'];
|
| 367 |
$options['lcats']=$_POST['lcats'];
|
| 395 |
$page=$options['page']=='on'?'checked':'';
|
| 396 |
$pageself=$options['pageself']=='on'?'checked':'';
|
| 397 |
$comment=$options['comment']=='on'?'checked':'';
|
| 398 |
+
$excludeheading=$options['excludeheading']=='on'?'checked':'';
|
| 399 |
$lposts=$options['lposts']=='on'?'checked':'';
|
| 400 |
$lpages=$options['lpages']=='on'?'checked':'';
|
| 401 |
$lcats=$options['lcats']=='on'?'checked':'';
|
| 462 |
<br />
|
| 463 |
<input type="checkbox" name="comment" $comment /><label for="comment"> Comments</label> (may slow down performance) <br>
|
| 464 |
|
| 465 |
+
<h4>Excluding</h4>
|
| 466 |
+
<input type="checkbox" name="excludeheading" $excludeheading/><label for="excludeheading">Prevent linking in heading tags (h1,h2,h3,h4,h5,h6).</label>
|
| 467 |
+
|
| 468 |
<h4>Target</h4>
|
| 469 |
<p>The targets SEO Smart links should consider. The match will be based on post/page title or category/tag name, case insensitive.</p>
|
| 470 |
<input type="checkbox" name="lposts" $lposts /><label for="lposts"> Posts</label> <br>
|
| 561 |
}
|
| 562 |
endif;
|
| 563 |
|
| 564 |
+
function insertspecialchars($str) {
|
| 565 |
+
$strarr = str_split($str);
|
| 566 |
+
$str = implode("<!---->", $strarr);
|
| 567 |
+
return $str;
|
| 568 |
+
}
|
| 569 |
+
function removespecialchars($str) {
|
| 570 |
+
$strarr = explode("<!---->", $str);
|
| 571 |
+
$str = implode("", $strarr);
|
| 572 |
+
return $str;
|
| 573 |
+
}
|
| 574 |
+
|
| 575 |
?>
|
