добавление логотипа в рамки торта путем редактирования default.ctp - PullRequest
0 голосов
/ 07 февраля 2010

куда я помещу код для изображения, тогда куда я бы положил сам файл фактического изображения

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <?php echo $html->charset(); ?>
    <title>
        <?php __('neigh*borrow'); ?>
        <?php echo $title_for_layout; ?>
    </title>
    <?php
        echo $html->meta('icon');

        echo $html->css('cake.generic');

        echo $scripts_for_layout;
    ?>
</head>
<body>
    <div id="container">
        <div id="header">
            <h1><?php echo $html->link(__('neigh*borrow, the communty for borrowing things you need when you need them. NYU students interested in participating in the BETA should enter an item they would like to borrow along with their .NYU.EDU email address. ', true), 'http://cakephp.org'); ?></h1>
        </div>
        <div id="content">

            <?php $session->flash(); ?>

            <?php echo $content_for_layout; ?>

        </div>
        <div id="footer">
            <?php echo $html->link(
                    $html->image('cake.power.gif', array('alt'=> __("CakePHP: the rapid development php framework", true), 'border'=>"0")),
                    'http://www.cakephp.org/',
                    array('target'=>'_blank'), null, false
                );
            ?>
        </div>
    </div>
    <?php echo $cakeDebug; ?>
</body>
</html>

Ответы [ 3 ]

3 голосов
/ 08 февраля 2010

Поместите изображение в папку /app/webroot/img/ и используйте HtmlHelper в любом месте представления (включая макет) для вывода тега изображения для него:

// outputs tag for /webroot/img/myimage.jpg
echo $html->image('myimage.jpg');

// outputs tag for /webroot/img/subfolder/otherimage.jpg
echo $html->image('subfolder/otherimage.jpg');

// outputs tag for /webroot/img/myimage.jpg with an alt attribute
echo $html->image('myimage.jpg', array('alt' => 'My Text for My Image'));

Чтобы ваше приложение было переносимым и обслуживаемым, вам необходимо использовать HtmlHelper для вывода тега изображения с правильным URL-адресом изображения. Это касается практически всего URL, связанного с Cake: таблицы стилей, изображения, ссылки, URL в целом.

1 голос
/ 09 февраля 2010

Адам, как отмечает Deceze, изображения обычно идут в папке img, ниже webroot. Таким образом, доступ легко. Вы можете поместить их в другие папки ниже webroot, но тогда перед спецификацией пути должен стоять каталог_сепаратор:

//folder = webroot/myImages
echo $html->image('/myImages/image.png');

Все это становится весьма полезным, когда вы начинаете, включая javascript и css:

echo $javascript->link('someJavascript',false);
echo $html->css('bigStyles',true);

false приведет к включению скрипта или стилей в <head>...</head> true приведет к тому, что они будут включены в тот момент, когда произойдет php.

Обратите внимание на отсутствие расширений для javascript и css.

Пока мы на эту тему, если вы хотите использовать изображение в качестве ссылки, вам нужно отключить экранирование в операторе ссылки, а именно:

$eye = $html->image('eye.jpg');
// the final false disables escaping.
echo $html->link($eye,$url,array('target'=>'_blank'),false,false); 

редактирование: Я намеревался включить эту ссылку: http://cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf, которая является удобным, но разочаровывающе неполным кратким справочником.

0 голосов
/ 07 февраля 2010

Использование html-помощника является дорогостоящим и бесполезным ресурсом: в конечном итоге вы будете писать больше кода.

Почему бы вам просто не написать то, что вам нужно, в простом HTML?

(Также может быть полезно немного отформатировать ваш код)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...