вывод тегов или фильтров похожего на тег


вывод тегов или фильтров похожего на тег

Параметры:

передача параметра

<a href=":host:search?YEAR=:ref1:">:ref1:</a>

или

<li><a class="{%inj|cmd@eval |php@ global $global_year_id; if (!$global_year_id) $out='active'; |%}" href=":host:search">all years</a></li>
{%inj|cmd@loop|father_id@6
|loop_part@
<li><a class=":act:" href=":host:search?YEAR=:naz:">:naz:</a></li>
|onloop_prg@
global $global_year_id;
if ($global_year_id==$rs->fields['ID']) $s=str_replace(':act:', 'active', $s);
else $s=str_replace(':act:', '', $s);
 
|%}

или

{%inj|cmd@tag_loop|pgid@_CURPAGE|tag_varname@TAG
|loop_part@<li><a href=":host:search?TAG=:id:">:naz:</a></li>
|%}

или

{%inj|cmd@tag_loop|father_id@|tag_varname@TAG
|tag_all@<li><a href=":host:search?TAG=:id:">all </a></li>
|tag_all_active@<li><a class="active" href=":host:search?TAG=:id:">all</a></li>
|loop_part@<li><a href=":host:search?TAG=:id:">:naz:</a></li>
|loop_part_active@<li><a class="active" href=":host:search?TAG=:id:">:naz:</a></li>
|%}

или

{%inj|cmd@tag_loop|father_id@|tag_varname@TAG
|tag_all@<li><a href=":host:curhurl?TAG=:id:">all </a></li>
|tag_all_active@<li><a class="active" href=":host:?TAG=:id:">all</a></li>
|loop_part@<li><a href=":host:?TAG=:id:">:naz:</a></li>
|loop_part_active@<li><a class="active" href=":host:?TAG=:id:">:naz:</a></li>
|%}

вывод результата

для первого случая, если переменная пришла из вне

если переданна одиночная переменная и нужно не только проверить существует ли она , но и получить другую для использования в цикле

{%inj|cmd@eval|php@
global $YEAR, $global_year_id;
if ($YEAR) {
$year=(int)$YEAR;
$global_year_id = GetFieldFromSql($this->conn, "SELECT M.ID FROM MTREE M WHERE M.NAZ=$year AND M.FATHID=6 " , 0);
}
|%}

если проверка не нужна или получена способом описанным выше то производится вывод при помощи циклов webbola или sql запроса

сейчас описан способ вывода через цикл webbola

{%inj|cmd@loop|father_id@
|nodetip@4

указывается отношение к типу

|tag_varname@TAG

указывается если перемееная передается при помощи тега

|loop_part@
<a href=":href:" class="gallery__item-link">
<img src="smallpic.php?FILE=:img1_src:&NEWWIDTH=300&NEWHEIGHT=300&POROG=1&BGCOLOR=255,255,255" alt=":naz:" class="gallery__item-img">
<h3 class="gallery__item-title">:naz:</h3>
</a>
|onsql_prg@
global $SEARCHTEXT;
if (strlen($SEARCHTEXT)) $sql .= " AND NAZ LIKE " . sqlSTRLIKE('%',$SEARCHTEXT,'%');

указывается если перемееная передается при помощи поиска

global $global_year_id;
if ($global_year_id) $sql .= " AND REF1=" . (int)$global_year_id. " ";

указывается если перемееная передается при помощи переменной переданной первыми 2-мя способами

|empty_part@
<h3 class="gallery__item-title">Ничего не найдено</h3>
|%}

есть так же способ вывода инфы если к примеру ее вывести как пост блога у вп

получение объекта данных при помощи переданной с другой страницы переменной

{%inj|cmd@eval|php@
global $global_prj_id, $global_prj_obj, $ID;
$global_prj_id = (int)$ID;
if (!$global_prj_id ) die('no id');
$global_prj_id = GetFieldFromSql($this->conn, "SELECT P.ID FROM PROJECT P WHERE P.ID=$global_prj_id " . fr_projectlist($this->conn, "P") , 0);
if (!$global_prj_id ) die('no id');
$global_prj_obj = newObject($this->conn,'TProject',(int)$ID);
$global_prj_obj->ReadRefFn();
|%}

теперь описаны несколько вариантов вывода

1. {%inj|cmd@eval|php@global $global_prj_obj; $out = hsc($global_prj_obj->gf('NAZ'));|%}

2. {%inj|cmd@eval|php@global $global_prj_obj; $out = hsc($global_prj_obj->gf('BEGDATE',0));|%} эта запись аналогична первой

3. {%inj|cmd@eval|php@global $global_prj_obj; $out = hsc($global_prj_obj->gf('FIRMA',1));|%} в данном случае вторым параметром можно запросить другое поле вложенного массива