Improve annoying URL parameters cleaning:
* Use regular expressions to avoid suplicating params depending on their position in the URL (¶m=,?param=) * Only remove the relevant URL pattern and don't remove following params, fixes https://github.com/shaarli/Shaarli/issues/136 * Credits to Marcus Rohrmoser (https://github.com/mro)
This commit is contained in:
parent
ad2a397c66
commit
403a199409
1 changed files with 3 additions and 2 deletions
|
@ -1642,11 +1642,12 @@ function renderPage()
|
||||||
{
|
{
|
||||||
$url=$_GET['post'];
|
$url=$_GET['post'];
|
||||||
|
|
||||||
|
|
||||||
// We remove the annoying parameters added by FeedBurner, GoogleFeedProxy, Facebook...
|
// We remove the annoying parameters added by FeedBurner, GoogleFeedProxy, Facebook...
|
||||||
$annoyingpatterns = array('&utm_source=', '?utm_source=', '#xtor=RSS-', '?fb_', '?__scoop', '#tk.rss_all?', '?utm_campaign=', '?utm_medium=');
|
$annoyingpatterns = array('/[\?&]utm_source=[^&]*/', '/[\?&]utm_campaign=[^&]*/', '/[\?&]utm_medium=[^&]*/', '/#xtor=RSS-[^&]*/', '/[\?&]fb_[^&]*/', '/[\?&]__scoop[^&]*/', '/#tk\.rss_all\?/');
|
||||||
foreach($annoyingpatterns as $pattern)
|
foreach($annoyingpatterns as $pattern)
|
||||||
{
|
{
|
||||||
$i=strpos($url,$pattern); if ($i!==false) $url=substr($url,0,$i);
|
$url = preg_replace($pattern, "", $url);
|
||||||
}
|
}
|
||||||
|
|
||||||
$link_is_new = false;
|
$link_is_new = false;
|
||||||
|
|
Loading…
Reference in a new issue