Когда я начал писать очередной проект, в качестве платформы выбрал фреймворк 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>

Свежие комментарии