Удалить теги из выводимых строк

aNt1

Новичок
Удалить теги из выводимых строк

Здравствуйте, есть сайт, на котором установлена коммерческая CMS - HostCMS, при создании подразделов и разделов использовались не только буквы, но и в некоторых местах теги, в частности <img src="...">, я сделал скрипт на XSL чтобы он выводил мне названия разделов в title страницы, всё выводится, только с кодом <img src="...">, который в title не нужен. Так вот в чём вопрос: XSL шаблон, формирующийся из структуры сайта для title (показ раздела, в котором Вы находитесь) вызывается через php:
PHP:
<?php  $Structure = new Structure();    $Structure->ShowStructure(false, "Title", array('show_items' => true, 'show_groups' => true)); ?>
вот таким несложным кодом, вопрос как убрать эти теги, средствами php (т.к. он вызывает шаблон XSL), ну или если есть знатоки XSL, то его средствами, заранее благодарю.
 

DiMA

php.spb.ru
Команда форума
есть готовая функция, удаляющая из строки все теги
предоставляю тебе уникальный шанс найти ее в доке .-)
 

aNt1

Новичок
она 100 пудово есть, я уже вставлял всевозможные примеры, но мб я просто не туда ставлю?
вот код, отвечающий за вывод XSL шаблона "Title"
Код:
<?php
 $Structure = new Structure();
   $Structure->ShowStructure(false, "Title", array('show_items' => true, 'show_groups' => true));
?>
Пробовал, но всё убивается, может быть потому что $Structure используется ещё далее в сайте и он убивает и там коды и сразу фатал еррор?
PHP:
string strip_tags (string str [, string allowable_tags])
PHP:
string fgetss  ( resource $handle  [, int $length  [, string $allowable_tags  ]] )
 

FB3

Новичок
Думаю, что стоит просто изменить XSLT шаблон, но когда шаблона здесь нету, что менять, не понятно.
Вообщем, пиши подробней, что есть, откуда берется и чем обрабатывается и какой результат хочется.
 

aNt1

Новичок
Автор оригинала: FB3
Думаю, что стоит просто изменить XSLT шаблон, но когда шаблона здесь нету, что менять, не понятно.
Вообщем, пиши подробней, что есть, откуда берется и чем обрабатывается и какой результат хочется.
PHP:
<xsl:template match="BR">
<xsl:text>&#xA;</xsl:text>
</xsl:template>
<xsl:template match="/document">	
<!-- Запишем в константу ID структуры, данные для которой будут выводиться пользователю -->
<xsl:variable name="current_structure_id">
<xsl:choose>
<xsl:when test="item/node()">item_<xsl:value-of select="item"/></xsl:when>
<xsl:when test="group/node()">group_<xsl:value-of select="group"/></xsl:when>
<xsl:otherwise>
<xsl:value-of select="structure/current_structure_id"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>	
<xsl:if test="count(//structure[@id = $current_structure_id]) &gt; 0">
<xsl:apply-templates select="//structure[@id = $current_structure_id]">
<xsl:with-param name="is_last_item" select="1"/>
</xsl:apply-templates>
</xsl:if>
</xsl:template>
<xsl:template match="structure">
<xsl:param name="is_last_item" select="0"/>
<!-- Выбираем все узлы структуры всех уровней вложенности -->
<xsl:apply-templates select="parent::structure"/>
<!-- Определяем адрес ссылки -->
<xsl:variable name="link">
<xsl:choose>
<!-- Если внешняя ссылка -->
<xsl:when test="is_external_link=1">
<xsl:value-of disable-output-escaping="yes" select="is_external_link"/>
</xsl:when>
<!-- Иначе если внутренняя ссылка -->
<xsl:otherwise>
<xsl:value-of disable-output-escaping="yes" select="link"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
/
<!-- Показывать ссылку, или нет -->
<xsl:choose>
<xsl:when test="show_link = 0 and $is_last_item = 0">	
<a href="{$link}">
<xsl:value-of disable-output-escaping="yes" select="name"/>
</a>
</xsl:when>
<!-- Если не показывать ссылку - выводим просто имя ссылки -->
<xsl:otherwise>
<xsl:value-of disable-output-escaping="yes" select="name"/>
</xsl:otherwise>
</xsl:choose>
		
</xsl:template>
Вот XSl код, который работает так: определяет в каком разделе ты сейчас находишься и выводит тебе полный путь до главной страницы, но самая засада в том, что в CMS в названии разделов сайта прописана пара кодов для дизайна кнопок меню(img и br), так вот он их и выводит мне в title страницы, меню тоже не хочется менять, слишком много сил потрачено. А надо чтобы он из имён структуры сайта вырезал коды <br> и <img src="/imgA/nav-arrow-right.png">, блин, если сможешь помочь буду очень благодарен, даже пива бы поставил с удовольствием :)
 

FB3

Новичок
Че-то парсер кода навставлял смайликов там, правда это ничего не меняет. Нету тут кода, который навигацию вставляет. Вообщем, ищи в коде XSLT шаблонов "nav-arrow-right.png", разбирайся, как его удалить и удаляй.
А еще лучше, переделать генерацию Title в этих шаблонах, а не заменять тэги потом в PHP.
 

aNt1

Новичок
Автор оригинала: FB3
Че-то парсер кода навставлял смайликов там, правда это ничего не меняет. Нету тут кода, который навигацию вставляет. Вообщем, ищи в коде XSLT шаблонов "nav-arrow-right.png", разбирайся, как его удалить и удаляй.
А еще лучше, переделать генерацию Title в этих шаблонах, а не заменять тэги потом в PHP.
он то и показывает, 100% (переменные structure), а картинка прописана в названии разделов некоторых, т.е. она уже содержится точно там и выводятся они через Structure эту
 

aNt1

Новичок
upd: йес сделал всё просто через php, спасибо всем за помощь и этому ресурсу за теоретические вопросы
кому интересно или понадобится для HostCMS:
PHP:
<title>
 <?php ob_start();  
$Structure = new Structure();   
 $Structure->ShowStructure(false, "Title", array('show_items' => true, 'show_groups' => true)); 
echo strip_tags(ob_get_clean()); ?> 
</title>
 
Сверху