Counter (SPT-Tag)
Aus SiteparkWiki
Inhaltsverzeichnis |
Name
<spt:counter> - Zählt Zugriffe auf publizierte Informationen
Syntax
<spt:counter name="variable" mode="read" varname="variable"/>
Beschreibung
Mit dem sp:counter-Tag kann ermittelt werden wie oft eine Seite aufgerufen wurde.
<spt:counter name="hit"/> erzeugt in der Ausgabeseite im Standard-Fall JavaScipt-Code in folgender Form:
<script type="text/javascript" src="/ies/counter?SYS_CNTR_id=101020100000001157-1015%3Ahits;SYS_CNTR_mode=;SYS_CNTR_varname=sp_counter"> </script>
Ab Version 2.0.3 generiert spt:counter alternativ auch PHP-Code, sobald das Attribut language auf den Wert php gesetzt wird. <spt:counter name="hit" language="php"/> erzeugt PHP-Code in folgender Form:
<?php function spt_counter_getCounter() { $protocol = ($_SERVER["HTTPS"] == "on") ? "https" : "http"; $hostname = $_SERVER["HTTP_HOST"]; $url = $protocol . "://" . $hostname . "/ies/counter?SYS_CNTR_id=101020100000001157-1015%3Ahits;SYS_CNTR_mode=;SYS_CNTR_javascript=false"; return file_get_contents($url); } $sp_counter = spt_counter_getCounter(); ?>
Bei jedem Aufruf der Seite wird die angegebene Counter-Variable um den Wert eins erhöht. Es gilt zu Beachten, dass der counter-Tag ausschließlich im Ausgabebereich eines Templates genutzt wird. Der Counter-Wert kann im Eingabebereich eines Templates mit sp:print oder sp:text ausgegeben werden. Zu beachten ist hierbei, dass der Counter als Content-Typ "counter" gespeichert wird. Counter werden intern im CounterInformation-Objekt verwaltet.
Um spt:counter nutzen zu können müssen zwei Bedingungen erfüllt sein:
- Der Counter-Manager muss aktiviert sein. Dieser kann über die Administrations-Oberläche des IES im Bereich 'Dienste' gestartet werden.
- Die generierte Counter-Url im JavaScript muss per HTTP-Request erreichbar sein. Dazu ist es nötig, dass der Publikationsbereich in dem die Seite generiert wurde als Webapplikation im IES aktiviert ist. Zusätzlich muss der Webserver einen JkMount von
/ies/counterauf den IES gesetzt haben.
Attribute
| Name | Type | Required | Default | ab IES Version |
|---|---|---|---|---|
name
| Variable | Ja | None | 1 |
mode
| Text | Nein | None | 1 |
varName (deprecated ab Version 2.0.3)
| Text | Nein. | sp_counter | 1 |
varname
| Text | Nein | sp_counter | 2.0.3 |
language
| Text | Nein | javascript | 2.0.3 |
name- Name der Variable in der der Zugriffswert gespeichert wird.
mode- Der Zähler kann in verschiedenen Modi betrieben werden. Gültige Modi sind:
- read
- Counter wird nicht hochgezählt, sondern es wird nur der aktuelle Zählerstand als Variable ausgegeben.
- write
- Counter wird hochgezählt, aber es wird keine Variable gesetzt.
- keine Angabe
- Counter wird hochgezählt und der aktuelle Zählerstand wird als Variable ausgegeben.
varName- der Name der Variable, in die der aktuelle Counterwert ausgegeben wird [default=sp_counter].
- Deprecated (ab Version 2.0.3) Das Attribut ist veraltet, und sollte nicht mehr verwendet werden. Stattdessen sollte
varnameverwendet werden.
varname- der Name der Variable, in die der aktuelle Counterwert ausgegeben wird [default=sp_counter].
language- Gibt an in welcher Programmiersprache der Code generiert werden soll. Mögliche Werte sind:
javascript- Es wird JavaScript-Code generiert.
php- Es wird PHP-Code generiert.
Beispiele
Mit spt:counter eine Variable setzen
Template Quelltext
<sp:io type="in"> <sp:text name="meincounter" type="counter"/> </sp:io> <sp:io type="out"> <spt:counter name="meincounter" mode="read"/> </sp:io>

