Difference between revisions of "Template:ShortURL"

From FollowTheScore
Jump to: navigation, search
(Replacing page with 'delete me')
 
(55 intermediate revisions by the same user not shown)
Line 1: Line 1:
<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|
+
delete me
{{#expr:{{{count|35}}}-{{#len:{{#explode:{{#replace:{{#replace:{{{url|}}}|http://|}}|www.|}}|/|}}}}}}
 
}}}}{{{suffix|…}}}]{{#ifeq:{{{plain}}}|yes|</span>|}}|{{#ifeq:{{{domainforce}}}|yes|[{{{url|}}} {{#replace:{{#replace:{{{url|}}}|http://|}}|www.|}}]|{{{url|}}}}}}}</includeonly><noinclude>__NOTOC__
 
==The template==
 
<pre>This is not finished yet.</pre>
 
 
 
==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 [[DPL:Manual_-_DPL_parameters:_Controlling_output_format#format|%EXTERNALLINK%]]. Consider that shortened URLs may cause wrong copy-paste by unexperienced users.<br>Note: Requires [http://www.mediawiki.org/wiki/Extension:StringFunctions Extension:StringFunctions]
 
 
 
===Usage===
 
<pre>{{ShortURL
 
|url    =
 
|count  =
 
|suffix =
 
|plain  =(yes)
 
|domainonly  =(yes)
 
|domainbold  =(yes)
 
|domainforce =(yes)
 
|tolerance  =
 
|forcecount  =(yes)
 
}}</pre>
 
*'''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 <nowiki>http://...</nowiki>
 
*'''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 [http://www.mediawiki.org/wiki/Plainlinks 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===
 
<pre>{{ShortURL|url=http://semeb.com/dpldemo/index.php?title=Template:ShortURL}}</pre>
 
The URL (stripped: without "http://" and "www") has 45 characters. That's more than count (default 35) + tolerance (default 5) = "emplate:ShortURL" > 5.<br>Result: {{ShortURL|url=http://semeb.com/dpldemo/index.php?title=Template:ShortURL}}
 
 
 
<pre>{{ShortURL|url=http://www.imdb.com|suffix=....}}</pre>
 
The (stripped) URL is shorter than the count (default 35). It will be fully returned without suffix.<bR>Result: {{ShortURL|url=http://www.imdb.com|suffix=....}}
 
 
 
<pre>{{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}}</pre>
 
We use a count of 50.<br>Result: {{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}}
 
 
 
<pre>{{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}}</pre>
 
We add a custom suffix and use class="plainlinks".<br>Result: {{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}}
 
 
 
<pre>{{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}}</pre>
 
We highlight the domain.<br>Result: {{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}}
 
 
 
<pre>{{ShortURL|url=http://www.mediawiki.org/wiki/Manual:Configuration_settings_%28alphabetical%29|domainonly=yes}} and
 
{{ShortURL|url=http://commons.wikimedia.org/wiki/Category:Icons|domainonly=yes}}</pre>
 
We only want the domain.<br>Result: {{ShortURL|url=http://www.mediawiki.org/wiki/Manual:Configuration_settings_%28alphabetical%29|domainonly=yes}} and {{ShortURL|url=http://commons.wikimedia.org/wiki/Category:Icons|domainonly=yes}}
 
 
 
<pre>*{{ShortURL|url=http://commons.wikimedia.org/wiki/Commons:Village_pump/Archive/2008Sep#Hack_for_search_suggestion_field_width_will_be_obsolete
 
|count=50|domainforce=yes}}
 
*{{ShortURL|url=http://commons.wikimedia.org/wiki/Main_Page
 
|count=50|domainforce=yes}}</pre>
 
When you use this template in another template or DPL output, it might useful if the URLs all look the same. Therefor we use domainforce. Result: *{{ShortURL|url=http://commons.wikimedia.org/wiki/Commons:Village_pump/Archive/2008Sep#Hack_for_search_suggestion_field_width_will_be_obsolete
 
|count=50|domainforce=yes}}
 
*{{ShortURL|url=http://commons.wikimedia.org/wiki/Main_Page
 
|count=50|domainforce=yes}}
 
 
 
<pre>{{ShortURL|url=http://www.mediawiki.org/wiki/Manual:Configuration|domainonly=yes}}</pre>
 
The (stripped) URL is exactly count + tolerance = 40 charcters long.<br>Result:{{ShortURL|url=http://www.mediawiki.org/wiki/Manual:Configuration|domainonly=yes}}
 
 
 
 
 
For forcecount and tolerance examples see <nowiki>{{</nowiki>[[Template:Short#Examples|Short]]<nowiki>}}</nowiki>.
 

Latest revision as of 05:01, 24 July 2009

delete me