Поиск и замена в php запросе

Статус
В этой теме нельзя размещать новые ответы.

grebovich

Гуру форума
Регистрация
19 Мар 2012
Сообщения
363
Реакции
81
Ребята помогите в запросе
Код:
<?php single_cat_title(); ?>
сделать замену части текста.
Данный запрос выводит название категории в вордпрес но берет ее из отдельного файла и вместе из форматированием то есть так :
Код:
<h1 class="page-title"><span>Категория тест</span></h1>
Вот мне и нужно что бы в запросе убирались именно <h1 class="page-title"> и соответственно </h1> Чтобы осталось только так
Код:
<span>Категория тест</span>

Вырезать именно в ручную из файла я могу, но его мне нельзя вырезать так как он по всей теме напичкан общим нужен он, а нужно именно в данном запросе все это убрать ....

Заранее всем спасибо за помощь!
 
Если у тебя single_cat_title() из WP, то там есть аргумент $display для возврата значения вместо вывода - Для просмотра ссылки Войди или Зарегистрируйся
А дальше обычный Для просмотра ссылки Войди или Зарегистрируйся или preg_replace

Если функция своя и изменять её ну никак нельзя, то почитай про ob_start, ob_get_clean
 
PHP:
$var = str_replace(
    array('<h1 class="page-title">','</h1>'),
    array('',''),
    single_cat_title('',false)
    );
 
PHP:
$var = str_replace(
    array('<h1 class="page-title">','</h1>'),
    array('',''),
    single_cat_title('',false)
    );
Спасибо, но данный вариант полностью убирает всю строку
Код:
<h1 class="page-title"><span>Категория тест</span></h1>
А нужно что бы оставалось
Код:
<span>Категория тест</span>
Ну или хотя бы просто сам текст Категория тест
 
Код:
$str = '<h1 class="page-title"><span>Категория тест</span></h1>';
echo str_replace(array('<h1 class="page-title">','</h1>'), '', $str );
 
Быть такого не может. Другого варианта вам никто не даст. По тому что этот и так рабочий. Разве что функция возвращает не те данные которые ты привел.
PHP:
<?php
function single_cat_title($a,$b){
    return '<h1 class="page-title"><span>Категория тест</span></h1>';
}


$var = str_replace(
    array('<h1 class="page-title">','</h1>'),
    array('',''),
    single_cat_title('',false)
    );

echo $var;
 

Вложения

  • Скриншот 21-08-2016 212549.png
    Скриншот 21-08-2016 212549.png
    11,7 KB · Просмотры: 7
Быть такого не может. Другого варианта вам никто не даст. По тому что этот и так рабочий. Разве что функция возвращает не те данные которые ты привел.
Да теперь все супер Спасибо тебе огромное добр человек :sun:

Я сейчас добавил так и все заработало:
Код:
<?php
$var = str_replace(
    array('<h1 class="page-title">','</h1>'),
    array('',''),
    single_cat_title('',false)
    );

echo $var;
?>
Просто в Вашем первом варианте отсутствовал echo $var;
А я не особо в этом разбираюсь вернее совсем не разбираюсь.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху