System777
Создатель
- Регистрация
- 20 Апр 2008
- Сообщения
- 30
- Реакции
- 13
- Автор темы
- #1
Кто знаком с WordPressом - вероятно слышал о такой вещи как тег "<!--more-->" - который ставится для отделения анонса поста во всём тексте.
Задача стоит следующая: всякие статьи парсятся с разных источников, а потом публикуются на Wordpress-блоге. И моему PHP-скрипту нужно автоматически проставлять тег <!--more--> после заданного абзаца (например, 2 или 3го, чтобы только это ограниченное число абзацев было в анонсе).
Сложность в том, что:
- попадаются теги как <p>, так и <P> (и в перемешку на одной странице - тоже).
- также закрывающий тег </p> или </P> не всегда имеется на странице, а только <p>
- возможны варианты отделения вообще только <br> или </ br>, а также другие виды тега <p> - <P align="center"> к примеру.
Нужно в любом из этих случаях проставлять тег more после заданного абзаца.
Подразумевается, что код уже обработан от лишних мусорных тегов (вроде <table>) с помощью strip_tags - оставлены только <b><i><img><p><br><strong><em>)
Если кто сможет - подскажите, пожалуйста, универсальный код для этого, а то попытки написания были - но работают в основном криво...
Заранее благодарю.
Задача стоит следующая: всякие статьи парсятся с разных источников, а потом публикуются на Wordpress-блоге. И моему PHP-скрипту нужно автоматически проставлять тег <!--more--> после заданного абзаца (например, 2 или 3го, чтобы только это ограниченное число абзацев было в анонсе).
Сложность в том, что:
- попадаются теги как <p>, так и <P> (и в перемешку на одной странице - тоже).
- также закрывающий тег </p> или </P> не всегда имеется на странице, а только <p>
- возможны варианты отделения вообще только <br> или </ br>, а также другие виды тега <p> - <P align="center"> к примеру.
Нужно в любом из этих случаях проставлять тег more после заданного абзаца.
Подразумевается, что код уже обработан от лишних мусорных тегов (вроде <table>) с помощью strip_tags - оставлены только <b><i><img><p><br><strong><em>)
Если кто сможет - подскажите, пожалуйста, универсальный код для этого, а то попытки написания были - но работают в основном криво...
Заранее благодарю.