{{indexmenu_n>10}}
====== Level-Lift ======
Level can be queried independently the ID, in addition it requires a small script. I represent here the fundamental use.
**Docu:** -- \\
**Forum:** [[http://forum.phpwcms.org/viewtopic.php?p=71772#71772|Level-Lift]] //([DE])//
**Autor:** K.Heermann (flip-flop) http://planmatrix.de //2009/05/14 // \\
**CMS-Version:** >= V1.2.7 \\
**Update:** -- \\
**Condition:** -> [[http://www.phpwcms-docu.de/conf_inc_php_en.phtml]] \\
* $phpwcms['allow_cntPHP_rt'] = 1;
----
----
\\
===== Basis level and ID =====
We differentiate between ID-and level-based points of re-entry point. ID= Absolute point of re-entry point:
Functioned in each situation in life, even if I am not located in the characterized tree part. (ID= side structure (with the mouse over the little book sheet)).
Level= relative point of re-entry point:
E.g. a script or {RT} can be processed, if I stay in the indicated level (or level range).
(Level: Regard the tree structure once in columns, then you see the level).
**Condition** //(IDs are freely invented )//:
------------------------------------
L E V E L
.: : : :
.0 1 2 3 <- LEVEL-No.
.: : : :
-+ home : ID=0
-+--+ category_01 ID=01
-+--+ category_02 ID=02
-+--+--+ category_02_01 ID=04
-+--+--+--+ category_02_01_01 ID=06
-+--+--+--+ category_02_01_02 ID=07
-+--+--+ category_02_01 ID=05
-+--+--+ category_02_02 ID=08
-+--+ category_03 ID=03
-+--+ category_04 ID=09
.: : : :
.0 1 2 3 <- LEVEL No.
------------------------------------
==== ID-based: ====
The level is absolutely addressed. \\
The advantage: This level is always processed by a script or {RT}, equal where the client stays on the side. \\
The disadvantage: If we use different level strands, we needed several templates for this procedure.
==== Level-based: ====
The level is relatively addressed . \\
The advantage: If we e.g. write one {RT} into the template all client activated levels can be addressed, which fit on the pattern. \\
The disadvantage: We cannot display a level, which is not called by the Client straight.
\\
==== Test: ====
I would like to spend a particular picture if the user stays in the category **category_02_01**, in all other categories another picture is delivered:
=== ID-based: ===
[PHP]
if ($GLOBALS['content'][cat_id] == 4) { // ist die ID=4 aktiv? (User stays at the site category_02_01)
echo '.LF;
}
else {
echo '.LF;
}
[/PHP]
A classical example of an ** ID-based absolutely addressed query **. It is insignificant in which place the user on the side is
//(except in category_02_01), // always a picture is delivered.
I would like to display a own picture in each case for the first, second and third level, therefore I must check the level.
=== Level-based: ===
[PHP]
$my_image = 'img/backend/preinfo2.jpg'; // preset picture level 0 and 1
if(isset($GLOBALS['LEVEL_ID'][2])) { // 2 for the second level -> is the 2nd level active?
$my_image = 'img/backend/hotscripts.gif'; // Picture for all categories in the 2nd level
if (isset($GLOBALS['LEVEL_ID'][3])) { // does it give an active third level?
$my_image = 'img/backend/sourceforge.gif'; // Picture for all categories in the 3rd level
}
}
// Image output
echo ''.LF;
// ======= Test section: Output level / category / ID
$level = 0;
for ($i = 0; $i <= $level; $i++) { // How many level are present?
isset($GLOBALS['LEVEL_ID'][$i]) ? $level++ : $level--;
}
// Current category alias and ID select
$cat_alias = $GLOBALS['content']["struct"][$GLOBALS['content']["cat_id"]]["acat_alias"];
$cat_id = $GLOBALS['content']['cat_id'];
echo 'Level='.$level.' Cat.'.$cat_alias.' ID='.$cat_id.LF;
// ======= Ende test section
[/PHP]
The wanted information is inside the array ##$LEVEL_ID[**X**]## .
If the level is present, //(isset($LEVEL_ID[**X**])// the current category ID is supplied as contents.
Also completely different instructions can be processed instead of the image output. No borders are set to the fantasy.
==== Level-Lift ====
The level-lift works exactly like this method and is used typically for separate navigations.
[PHP]
if(isset($GLOBALS['LEVEL_ID'][1])) { // the first level is queried
$level_id = $GLOBALS['LEVEL_ID'][1];
echo '';
}
[/PHP]
Level = column No. 0, 1, 2, .... (relative navigation) \\
ID= Numeral value of the side level in the side structure (move mouse over the little book sheet) (absolute navigation)
\\
**Since version r317 available:** //[[english/technics/system-variables#new_tag_levelx_id|New tag {LEVELX_ID}]] //
[PHP]
if(isset($GLOBALS['LEVEL_ID'][1])) { // hier wird das erste Level abgefragt
echo '';
}
[/PHP]
Have a look: [[english:navigation:nav_list_ul-example:navi-different-level]]