CakePHP | Кирилл Павлюков
Апр 18

Набрел я на блог Антона Шевчука. Безумно понравилась статья jQuery для начинающих. Написано очень просто и доходчиво. Рекомендую для прочтения всем.

Еще нашел сайт Visual jQuery. Это весьма толковый визуальный справочник, который будет полезен как начинающим, так и опытным разработчикам на jQuery. Всегда полезно иметь под рукой подобную шпаргалку.

А вот статья о том, как сделать AJAX-пейджинацию с использованием Cake PHP. Хотя, ИМХО, примеры на столько понятны, что даже человек не знакомый с Cake PHP Framework сможет разобраться, о чем идет речь.

Еще один полезный сайт – JStoolbox. Здесь можно найти множество статей посвященных как jQuery, так и другим JS-библиотекам и фреймворкам. В частности, рекомендую вам статью, посвященную новому методу live(), которая появилась в jQuery 1.3.

И последняя моя находка – плагин jQuery Timers, который, как видно из названия, позволяет работать с таймерами. Мне он пригодился при написании мини-чата для админ-панели. А вообще вариантов применения может быть уйма.

Share

Автор: Кирилл Павлюков \\ Метки: , ,

Апр 09

Последние полторы недели я занимался самообразованием: перечитал кучу PHP-шной документации, статей, форумов, просмотрел нововведения в общеизвестных фреймворках… Мда, ничто не стоит на месте – как всегда появилось огромное количество всякого вкусного и интересного.

Поигравшись с Zend Framework, версия 1.5 которого вышла, в общем-то не так давно, решил выбрать этот фреймворк в качестве платформы для нового нашего проекта – каталога сайтов. В общем-то, проект тривиальный, таких в Интернет можно отискать огромное количество. Но по нашей задумке, если сделать упор не на количество, а на качество сайтов, описанных в каталоге, то на этой теме можно будет неплохо и заработать.

Что-то я отдалился от темы. Итак, о выборе Zend Framework, вернее о переходе на него с CakePHP. На ZF я решил переключиться потому что:

  1. Мне понравились некоторые нововведения версии 1.5, о которых скажу чуть ниже.
  2. Мне НЕ понравилось, что CakePHP 1.2 за последнее время так и не вышел из стадии beta-тестирования. К тому же, документации по CakePHP 1.2 катастрофически не хватает, из-за чего приходится тратить много времени на изучение кода самого фреймворка, в то же время даже в официальной документации встречаются ошибки, о чем писал в недавней заметке.

Теперь о вкусностях, которые есть в Zend Framework 1.5.

  1. Однозначно понравился компонент Zend_Layout. Теперь шаблон верстки стало намного удобнее использовать. А в сочетании с хелперами Zend_View, Zend_Layout - вообще мощная штука.
  2. Zend_Form стал так же намного удобнее по сравнению с предыдущим релизом. Правда, не обошлось и без ложки дегтя – в нынешнем релизе отсутствует поддержка полей типа file.
  3. Документация. Ну, тут, пожалуй без комментариев, ибо редко встретишь какой-нибудь opensource-проект с настолько качественно составленным хендбуком и полным описанием api.

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

Share

Автор: Кирилл Павлюков \\ Метки: , ,

Мар 24

В CakePHP RSS-каналы создаются не просто, а очень просто: нужно только отредактировать 2 файла и создать еще один.
Как это сделать – читайте ниже.
Если вы до сих пор не знаете, что такое RSS и для чего этот формат создан, прочитайте эту статью из Википедии.
А по этому адресу вы можете найти полную спецификацию формата RSS на русском языке.
Читать запись полностью »

Share

Автор: Кирилл Павлюков \\ Метки: ,

Мар 21

Когда я начал писать очередной проект, в качестве платформы выбрал фреймворк CakePHP 1.2. Но позже пришлось об этом несколько раз пожалеть. Проблема крылась в том, что новая версия, хоть и называется beta2, просто кошмарно документирована. Некоторые разделы в руководстве вообще не написаны, некоторые – написаны с ошибками.
Вот над одной из ошибок в документации мне пришлось потрясти больше часа бубном. Речь идет о хелпере HTML и его методе meta(). Судя по руководству, одна из функций этого метода – добавление тега <link> для RSS-каналов. Эта ссылка указывает всякого рода поисковикам и браузерам на то, что контент сайта доступен в альтернативном оформлении (в виде RSS-потока).
Вот пример из официальной документации по CakePHP версии 1.2, который вы можете найти здесь:

1
2
3
4
5
6
<?php
echo $html->meta(
    'Comments',
    '/comments/index.rss',
    array('type' => 'rss'));
?>

Но этот пример в реальности (в самом последнем snapshot CakePHP 1.2) работал совсем не так, как нужно.

Как я и говорил, пришлось потратить больше часа на танцы с бубном, но проблема не решалась. Пришлось лезть в исходный код фреймворка, чтобы понять, почему метод работает не так, как ожидается. После небольшого исследования, стало понятно, что в текущем коде метода meta() был абсолютно изменен порядок принимаемых методом аргументов.
Вот правильный пример использования этого метода:

1
2
3
4
5
6
<?php
echo $html->meta(
    'rss',
    '/comments/index.rss',
    array('title' => 'Comments'));
?>

ЗЫ: Если кто не в курсе, то этот код нужно вставлять в верстку (layout) внутри тега <head>

Share

Автор: Кирилл Павлюков \\ Метки: , ,

Мар 04

Временами я перевожу для себя некоторые руководства, маны, справки и пр. Просто потому, что русский текст после вдумчивого перевода лучше понимается и запоминается.
Предлагаю перевод одной из глав руководства по фреймворку CakePHP 1.2 Читать запись полностью »

Share

Автор: Кирилл Павлюков \\ Метки: ,