Облако тегов для сайта (кластеризация)

Не так давно я рассказывал о том, как создать простое облако тегов для сайта (блога) и думал, что обо всех основных принципах рассказал. Но неожиданно (для меня
) тема получила продолжение.
Началось все с комментария автора блога От новичка до профессионала (имени я, к сожалению, не нашел). Он рассказал, что написал похожий пост и от Сергея Олейника получил ссылку на очень интересную статью.
Я кратко поясню, в чем основной недостаток облака тегов. Представьте, что у вас есть парочка тегов, которые вы используете очень часто и несколько других тегов, которые встречаются от случая к случаю. Каким шрифтом будут написаны имена тегов?
Читать дальше »
Опубликовано в CodeIgniter, PHP, Web разработка | Комментарии (29) »
Разработчики CodeIgniter вводят правила оформления кода

В документации к новой версии CodeIgniter 1.7 появился новый раздел General Style and Syntax (Общий стиль и синтаксис). В нем описаны рекомендации по оформлению кода при разработке с использованием CodeIgniter.
Релиз этой версии фреймворка еще не вышел. Поэтому скачать ее можно только из репозитория Subversion по адресу (http://dev.ellislab.com/svn/CodeIgniter/trunk/). А страница документации с рекомендациями находится здесь.
Пересказывать их все нет смысла. Большую часть этих правил и так все соблюдают. Но вот некоторые – довольно интересны. О них я и расскажу.
Читать дальше »
Опубликовано в CodeIgniter, PHP, Web разработка | Комментарии (35) »
Поддержка тем в CodeIgniter

Практически все современные CMS имеют поддержку тем. Т.е. вы можете создать несколько вариантов оформления ресурса и переключаться между ними. В этой статье речь пойдет о том, как добавить поддержку тем к фреймворку CodeIgniter.
Примечание. Если вы не знакомы с этим фреймворком, то сначала вам стоит почитать статью «Как создать свой сайт на PHP? Или зачем нужны фреймворки?».
Прежде всего, сформулируем задачу:
1) контроллер должен оставаться неизменным при использовании любой из тем;
2) файлы тем должны находится в отдельных папках;
3) минимальная нагрузка на систему (т.е. шаблонизаторы и дополнительные библиотеки не используем).
В принципе, поддержка тем изначально заложена в CodeIgniter. Если придерживаться архитектуры MVC, то весь код, связанный с отображением страниц, будет находиться в представлениях, а работа с данными и обработка запросов пользователя – в моделях и контроллере.
Отсюда вытекает простейший вариант решения задачи. Читать дальше »
Опубликовано в CodeIgniter, PHP, Web разработка | Комментарии (27) »
Ускоряем работу с CodeIgniter. Шаблоны для Eclipse.

В одном из прошлых постов я выкладывал свои шаблоны Eclipse для создания комментариев.
Сейчас я хочу поделиться другим набором. Он предназначен для работы с PHP фреймворком CodeIgniter.
Установка шаблонов стандартная.
1) Качаете архив с шаблонами (ссылка в конце поста) и распаковываете его.
2) Запускаете Eclipse и заходите в меню Window -> Preferences.
3) В левой части окна выбираем PHP -> Templates (см. скриншот).
4) После этого, нажимаете кнопку Import и указываете xml файл с шаблонами.
Читать дальше »
Опубликовано в CodeIgniter, Eclipse, PHP, Web разработка | Комментарии (7) »
Публикация постов в WordPress с помощью XML-RPC и CodeIgniter

Движок WordPress буквально «нашпигован» различными функциями и возможностями. В этой статье я расскажу, как написать небольшое web приложение, из которого вы сможете публиковать посты в ваш блог.
Как вы понимаете, писать такое приложение имеет смысл только в том случае, если оно расширяет стандартные возможности движка.
На мой взгляд, есть две области, для которых такие приложения подходят лучше всего.
Первая – это блог-клиенты. Тут преимущество в том, что вы можете писать пост без доступа в интернет и сохранить его на винчестере, а позже подключиться и опубликовать в блоге.
Вторая – различные программы для сеошников. Здесь смысл в том, чтобы публиковать посты автоматически в нескольких блогах.
Эта статья больше ориентирована на второй вариант.
Читать дальше »
Опубликовано в CodeIgniter, PHP, Web разработка, WordPress | Комментарии (118) »
Inferno: подключаем сторонние библиотеки к CodeIgniter

Использовать библиотеки сторонних разработчиков вместе с фреймворком CodeIgniter в большинстве случаев не сложно. Достаточно, чтобы библиотека соответствовала небольшому перечню требований.
Для большинства библиотек это означает, что нужно править их исходных код. Изменений обычно не много, но они есть. И если вы решите обновить библиотеку, то их придется делать заново.
Избавиться от этой проблемы можно с помощью библиотеки Inferno. Ее предназначение – подключение сторонних библиотек к фреймворку.
Читать дальше »
Опубликовано в CodeIgniter, PHP, Web разработка | Комментарии (30) »
Диаграммы взаимосвязей

Блог PHP::Impact опубликовал очень интересную подборку диаграмм.
Диаграммы отражают взаимосвязи между компонентами нескольких популярных php движков и фреймворков.
А именно:
WordPress 2.2.1
MediaWiki 1.12
phpBB 3.0
phpMyAdmin 2.9.1.1
Symfony 1.1
Zend Framework 1.5.2
CakePHP
CodeIgniter
Версии диаграмм немного отстают от последних релизов движков, но это не снижает их ценности. По-моему самое большое отставание у WordPress. 2.2.1 против 2.6. Особенно, если учесть, что в версию 2.5 были внесены довольно существенные изменения.
Глядя на диаграммы можно сразу выделить Zend Framework. Его структура явно сложнее большинства фреймворков. Хорошо это или плохо – вопрос философский
. Ответ будет зависеть от требований к конкретному проекту.
Самый простой – CodeIgniter. Отсюда высокая скорость, нетребовательность к ресурсам, легкость в изучении. Кстати, становится очевидной слабая связь (loose coupling) между его компонентами. Т.е. модули практически не зависят друг от друга, и загружаются, только когда вы их сами подключаете. Самое то для небольших проектов.
В общем, всем советую посмотреть эти диаграммы.
Спонсор поста:
Интересный Блог КОДера
Опубликовано в CodeIgniter, PHP, Web разработка, WordPress | Комментарии (10) »
Программирование на PHP. Подключаем FirePHP к фреймворку CodeIgniter

В этой статье я продолжу тему использования библиотеки FirePHP при разработке web приложений. Сегодня речь пойдет о подключении этой библиотеки к фреймворку CodeIgniter. Из предыдущей статьи вы, наверное, помните, что подключение этой библиотеки к обычному php скрипту не представляет сложности. С подключением к CodeIgniter ситуация немного сложнее, но прелесть ситуации в том, что основная часть работы уже сделана за нас.
Правда, есть несколько нюансов.
Читать дальше »
Опубликовано в CodeIgniter, PHP, Web разработка | Комментарии (12) »
Как создать облако тегов для своего сайта на PHP

В этой статье я расскажу и, естественно, покажу пример создания облака тегов для сайта (блога). Основные инструменты – PHP и фреймворк CodeIgniter (подойдет любой другой).
Но, прежде всего, хочу поблагодарить Delchyve за идею.
Итак, переходим к делу.
Вы, конечно, знаете, что облако тегов используется на многих сайтах (в основном это блоги) как элемент навигации. По-сути, облако тегов – это набор ссылок с ключевыми словами, рядом с которыми обычно пишут количество постов, которые относятся к данному тегу.
Чтобы сфокусировать внимание посетителя на наиболее актуальных темах, размер шрифта тегов в облаке меняют в зависимости от количества постов, которые к нему относятся.
Если ваш сайт (блог) использует какую-нибудь CMS, например, WordPress, Joomla и т.п., то вы без труда найдете плагины, которые сами создадут облако тегов на основе ваших данных, а вам останется только разместить его в шаблоне сайта.
Но мы рассмотрим ситуацию, когда сайт пишется «с нуля» и вам нужно сформировать облако ручками
.
Читать дальше »
Опубликовано в CodeIgniter, HTML, PHP, Web разработка | Комментарии (203) »
PHP скрипт. Simple URL Checker – запуск проверок по расписанию

Приветствую всех!
Это заключительная статья о разработке web приложения, выполняющего проверку URL.
Примечание. Ссылки на предыдущие статьи этого цикла вы найдете здесь.
На данный момент у нас уже есть работоспособное приложение. Но запускать проверки мы можем только с помощью web интерфейса.
Естественно, гораздо удобнее выполнять проверки по расписанию, а потом периодически просматривать результаты.
И вот здесь возникает проблема. Мы не можем из командной строки вызвать метод ping, т.к. для этого нужно создать экземпляр класса контроллера (Main) и заодно инициализировать ядро фреймворка.
Вообще при работе с CodeIgniter все запросы отправляются скрипту index.php, а уже он в зависимости от полученных параметров инициализирует объекты и вызывает нужные методы.
Проблему можно решить несколькими способами.
Читать дальше »
Опубликовано в CodeIgniter, PHP, Web разработка | Комментарии (6) »





