Для одного сайта понадобилось изменять Titile страницы, так как по всему CMS у него один и тот же Titile практически.
Нашел в сети код:
PHP код:Который без проблем заменяет title на текст из H1.
<?php
$content = ob_get_contents();
ob_end_clean();
preg_match ( "/<h1>(.*)<\/h1>/i", $content, $matches);
$content = preg_replace ( "/<title>(.*)<\/title>/i", '<title>' . strip_tags($matches[1]) . '</title>', $content);
echo $content;
?>
Но, если на странице нет тега H1 то он заменяет его на пустоту
Подскажите, как сделать так чтобы на странице если нету тега H1, то он не заменял Titile страницы и наоборот?
Спасибо заранее!
- 04.04.2013 13:36
- 04.04.2013 13:49PHP код:Если то, на что хотите заменить, не пустое - произойдет замена. Если пустое - title останется без изменений
<?php
$content = ob_get_contents();
ob_end_clean();
preg_match ( "/<h1>(.*)<\/h1>/i", $content, $matches);
if(!empty(strip_tags($matches[1])) $content = preg_replace ( "/<title>(.*)<\/title>/i", '<title>' . strip_tags($matches[1]) . '</title>', $content);
echo $content;
?>Спасибо сказали:
CaHbKa(04.04.2013), - 04.04.2013 14:00
Вылезла такая ошибка:
Fatal error: Can't use function return value in write context in
PHP код:if(!empty(strip_tags($matches[1])) $content = preg_replace ( "/<title>(.*)<\/title>/i", '<title>' . strip_tags($matches[1]) . '</title>', $content);
- 04.04.2013 14:07
Щас, я у себя на тестовом сайте попробую:) Сам начинающий, поэтому сходу правильно не всегда получается)
----------------
Вот это у меня работает
PHP код:<?php
$content = ob_get_contents();
ob_end_clean();
preg_match ( "/<h1>(.*)<\/h1>/i", $content, $matches);
if(!empty($matches)) $content = preg_replace ( "/<title>(.*)<\/title>/i", '<title>' . strip_tags($matches[1]) . '</title>', $content);
echo $content;
?>Последний раз редактировалось OKyJIucT; 04.04.2013 в 14:17.
Спасибо сказали:
CaHbKa(04.04.2013), - 04.04.2013 14:19
OKyJIucT, большое спасибо! То что нужно!!!!
Спасибо сказали:
OKyJIucT(04.04.2013), - 11.04.2013 05:12
М-м-м.... Делать title из H1 - думаю это плохая идея. Как в плане оптимизации, так и гибкости.
Идеальным была бы возможность настраивать эти теги по отдельности.
Если движок не слишком навороченный. То возможно имеет смысл добавить ещё поля в базу данных, отвечающие за эти теги. А в самом двиге задать их вывод и редактирование в админке - взяв в качестве примера куски кода из этого двига, которые отвечают за другие поля в материалах.
Похожие темы
Темы | Раздел | Ответов | Последний пост |
---|---|---|---|
Замена плагинов на код | WordPress | 6 | 13.01.2013 18:18 |
Автоматическая замена букв | Софт, скрипты, сервисы | 9 | 14.10.2011 22:35 |
Есть замена All in One SEO Pack? | Вопросы от новичков | 4 | 21.01.2011 02:07 |
замена строк | Софт, скрипты, сервисы | 1 | 26.01.2010 00:25 |