Difference between revisions of "Template:ShortURL"

From FollowTheScore
Jump to: navigation, search
Line 1: Line 1:
<includeonly>{{#ifexpr:{{#len:{{#replace:{{#replace:{{{url|}}}|http://|}}|www.|}}}} > {{#expr:{{{count|35}}}{{#ifeq:{{{forcecount}}}|yes||+{{{tolerance|5}}}}}}}|[{{{url|}}} {{#ifeq:{{{plain}}}|yes|<span class="plainlinks">|}}{{#ifeq:{{{domainbold}}}|yes|'''}}{{#explode:{{#replace:{{#replace:{{{url|}}}|http://|}}|www.|}}|/|}}{{#ifeq:{{{domainbold}}}|yes|'''}}{{#ifeq:{{{domainonly}}}|yes||{{#sub:{{#replace:{{#replace:{{#replace:{{{url|}}}|http://|}}|www.|}}|{{#explode:{{#replace:{{#replace:{{{url|}}}|http://|}}|www.|}}|/|}}}}|0|
+
<includeonly>{{#ifexpr:{{#len:{{#replace:{{#replace:{{{url|}}}|http://|}}|www.|}}}} > {{#expr:{{{count|35}}}{{#ifeq:{{{forcecount}}}|yes||+{{{tolerance|5}}}}}}}|{{#ifeq:{{{plain}}}|yes|<span class="plainlinks">|}}[{{{url|}}} {{#ifeq:{{{domainbold}}}|yes|'''}}{{#explode:{{#replace:{{#replace:{{{url|}}}|http://|}}|www.|}}|/|}}{{#ifeq:{{{domainbold}}}|yes|'''}}{{#ifeq:{{{domainonly}}}|yes||{{#sub:{{#replace:{{#replace:{{#replace:{{{url|}}}|http://|}}|www.|}}|{{#explode:{{#replace:{{#replace:{{{url|}}}|http://|}}|www.|}}|/|}}}}|0|
 
{{#expr:{{{count|35}}}-{{#len:{{#explode:{{#replace:{{#replace:{{{url|}}}|http://|}}|www.|}}|/|}}}}}}
 
{{#expr:{{{count|35}}}-{{#len:{{#explode:{{#replace:{{#replace:{{{url|}}}|http://|}}|www.|}}|/|}}}}}}
 
}}}}{{{suffix|…}}}]{{#ifeq:{{{plain}}}|yes|</span>|}}|{{{url|}}}}}</includeonly><noinclude>__NOTOC__
 
}}}}{{{suffix|…}}}]{{#ifeq:{{{plain}}}|yes|</span>|}}|{{{url|}}}}}</includeonly><noinclude>__NOTOC__

Revision as of 00:40, 24 July 2009

The template

This is not finished yet.

Usage

This shortens external URLs. It may not be useful for single usage on a page but for list output and esp. in combination with %EXTERNALLINK%. Consider that shortened URLs may cause wrong copy-paste by unexperienced users.
Note: Requires Extension:StringFunctions

Usage

{{ShortURL
|url    =
|count  =
|suffix =
|plain  =(yes)
|domainonly =(yes)
|domainbold =(yes)
|tolerance  =
|forcecount =(yes)
}}
  • count: optional / default: 35
The number of displayed characters. It counts and returns the string without "http://" and "www." (if the URL is longer than the default 35 characters).
It uses a tolerance of 5. So if you define count=10 the string will not be shortened if it is between 1 and 15 characters long.
  • url: required
Set the full URL http://...
  • suffix: optional / default: "…" (not ...)
Adds an suffix at the end of the shortened string. It is not recommend to set an empty suffix.
  • plain: optional / default: no
Returns the link in spans with the plainlinks class. Note that you should have this set up in you CSS. Also note that your page code is more clear when you set class="plainlinks" for the element that contains all your links.
  • domainonly: optional / default: no
domainonly=yes will only display the domain (including subdomains if given). A setting for count is useless here.
  • domainbold: optional / default: no
domainbold=yes will highlight the domain bold. This is useful for lists of many different external URLs.
  • tolerance: optional / default: 5
Override the default tolerance.
  • forcecount: optional / default: no
forcecount=yes overrides the (default) tolerance and forces a strict count.

Examples

{{ShortURL|url=http://semeb.com/dpldemo/index.php?title=Template:ShortURL}}

The URL (stripped: without "http://" and "www") has 45 characters. That's more than count (default 35) + tolerance (default 5) = "emplate:ShortURL" > 5.
Result: delete me

{{ShortURL|url=http://www.imdb.com|suffix=....}}

The (stripped) URL is shorter than the count (default 35). It will be fully returned without suffix.
Result: delete me

{{ShortURL
|url=http://www.google.de/search?q=DLP&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a
|count=50}}

We use a count of 50.
Result: delete me

{{ShortURL
|url=http://www.google.de/search?q=DLP&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a
|count=50
|suffix='''....'''
|plain=yes}}

We add a custom suffix and use class="plainlinks".
Result: delete me

{{ShortURL
|url=http://commons.wikimedia.org/wiki/Commons:Village_pump/Archive/2008Sep#Hack_for_search_suggestion_field_width_will_be_obsolete
|count=50
|domainbold=yes}}

We highlight the domain.
Result: delete me

{{ShortURL|url=http://www.mediawiki.org/wiki/Manual:Configuration_settings_%28alphabetical%29|domainonly=yes}}, 
{{ShortURL|url=http://commons.wikimedia.org/wiki/Category:Icons|domainonly=yes}}

We only want the domain.
Result: delete me, delete me

{{ShortURL|url=http://www.mediawiki.org/wiki/Manual:Configuration|domainonly=yes}}

The (stripped) URL is exactly count + tolerance = 40 charcters long.
Result:delete me


For forcecount and tolerance examples see {{Short}}.