
Речь снова пойдёт о моём городском портале. Так уж сложилось, что сейчас он является моим основыным проектом, на который тратится львиная доля времени. И там же ставятся эксперименты — что WordPress может, а что — нет. Хотя… Поэтому правильнее будет так: что я могу сделать на WP, а что — нет. Поскольку чем больше я работаю с этим движком, тем больше убеждаюсь в том, что на нём можно сделать всё. Вообще всё. Если мозгов хватит на основательное видоизменение кода.
Это к теме популярного в определённых кругах вопроса: «Можно ли на Битриксе сделать Яндекс?»
( Внешняя ссылка: Для крупных компаний интересным решением является корпоративное ТВ в сети интранет, позволяющее доносить корпоративную информацию до сотрудников в виде роликов. )
Ну так вот, возвращаясь к заголовку. Изначально я использовал на портале один движок WordPress. Затем появилась новостная лента, которая не вписывалась в существующий формат. Наверняка можно было придумать и решение поизящнее, но я решил пойти по самому простому пути — поставить второй движок WP в папку NEW и фигачить там новости.
Зачем делать такие вещи?
Как я уже сегодня рассказывал, весь контент портала имеет тип «записи». Изначально мне это доставляло неудобства, поскольку статьи-то имеют справочный и энциклопедический характер. Пришлось убирать комментарии, вырубать RSS, убирать метки и категории, выкидывать информацию о дате публикации и её авторе. Ну и так далее. В итоге родился шаблон, ориентированный именно на городской портал. И всё было хорошо до тех пор, пока я не начал с новостями.
Поскольку новости требуют как раз обратное — чтобы были дата и время публикации, чтобы были категории и комментарии. Поэтому я и поставил второй движок, где все эти опции остались в нетронутом виде. Причём я решился ещё и на дополнительную кастомизацию новостного раздела. В нём отсутствует сайдбар (что позволяет фигачить фотографии с шириной в 950 пикселей), другая фотография (милое женское личико) в качестве фона футера. Ну и система комментариев от ВКонтакте.
Из неудобств:
1. Раздельный поиск. Поисковая форма на главной и энциклопедических страницах не учитывает новости. Ну и наоборот, соответственно. Хотя, возможно, что это не баг, а фича.
2. Необходимость при глобальных изменениях (касающихся всего портала) переписывать в два раза больше файлов.
Вот вроде бы и все минусы. Хотя и тут я нашёл несколько способов оптимизировать процесс. Информация, которая изменяется наиболее часто, была вынесена в отдельные файлы. Например, новости на главной странице у меня расположены в блоке header. Что позволяет им отображаться ещё и на всех страницах.
Но! Я вынужден несколько раз в день обновлять этот файл, чтобы добавить другие новости. Чтобы не редактировать всякий раз огромный header.php (с риском что-нибудь испортить по невнимательности), я выделил пять новостных строчек в отдельный файл: iknews.php, который подгружается через инклудсы.

Всё, больше там ничего нет. Ровно то, что нужно. Редактирование занимает секунды.
Наверняка можно было бы написать скрипт, который дёргает для этого блока заголовки из новостного раздела на автомате. Но я не стал над этим заморачиваться. Поскольку у ручного обновления есть ряд важных преимуществ.

а) Я сам определяю — какой заголовок подойдёт для главной страницы. В большинстве случаев он более короткий, чем на странице новости.
б) Я сам решаю — какая часть заголовка будет ссылкой. Стараюсь делать так, чтобы ссылка было поочерёдно: то в начале, то в середине, то в конце заголовка. Чтобы было более приятно глазу. Мне кажется, что если бы заголовки дёргались автоматически, то потребовался бы очень сложный алгоритм для подобного.
в) Бывает так (например), что четвёртая новость теряет актуальность быстрее пятой. Поэтому, когда появляется новый материал, я могу четвёртую новость выкинуть из блока, а пятую оставить.
