4.2 Начало работы с Zend_Layout. Использование Zend_Layout

Zend, “Getting Started with Zend_Layout. Using Zend_Layout”, public translation into Russian from English More about this translation.

See also 44 similar translations

Translate into another language.

Participants

S.Voytovich 698 points
antdmi 84 points
Join Translated.by to translate! If you already have a Translated.by account, please sign in.
If you do not want to register an account, you can sign in with OpenID.
Pages: ← previous Ctrl next
1 2 3

Getting Started with Zend_Layout. Using Zend_Layout

4.2 Начало работы с Zend_Layout. Использование Zend_Layout

History of edits (Latest: antdmi 6 years, 10 months ago) §

Basic usage of Zend_Layout is fairly trivial. Assuming you're using Zend_Application already, you can simply provide some configuration options and create a layout view script.

Основы использования Zend_Layout достаточно просты. Особенно если вы уже применяете Zend_Application, то вам достаточно указать несколько параметров конфигурации и создать скрипт макета.

History of edits (Latest: S.Voytovich 7 years, 8 months ago) §

Layout Configuration

Конфигурирование Zend_Layout

History of edits (Latest: S.Voytovich 7 years, 8 months ago) §

The recommended location of layouts is in a "layouts/scripts/" subdirectory of your application:

Рекомендуется размещать макеты (шаблоны) в подкаталоге "layouts/scripts" вашего приложения:

History of edits (Latest: antdmi 7 years, 5 months ago) §

  01. application

01. application

History of edits (Latest: antdmi 7 years, 8 months ago) §

  02. |-- Bootstrap.php

02. |-- Bootstrap.php

History of edits (Latest: antdmi 7 years, 8 months ago) §

  03. |-- configs

03. |-- configs

History of edits (Latest: antdmi 7 years, 8 months ago) §

  04. |   `-- application.ini

04. | `-- application.ini

History of edits (Latest: antdmi 7 years, 8 months ago) §

  05. |-- controllers

05. |-- controllers

History of edits (Latest: antdmi 7 years, 8 months ago) §

  06. |-- layouts

06. |-- layouts

History of edits (Latest: antdmi 7 years, 8 months ago) §

  07. |   `-- scripts

07. | `-- scripts

History of edits (Latest: antdmi 7 years, 8 months ago) §

  08. |       |-- layout.phtml

08. | |-- layout.phtml

History of edits (Latest: antdmi 7 years, 8 months ago) §

To initialize Zend_Layout, add the following to your configuration file ("application/configs/application.ini"):

Для инициализации Zend_Layout добавьте в конфигурационный файл ("/application/configs/application.ini") следующие строки:

History of edits (Latest: S.Voytovich 7 years, 8 months ago) §

  01. resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts"

01. resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts"

History of edits (Latest: antdmi 7 years, 8 months ago) §

  02. resources.layout.layout = "layout"

02. resources.layout.layout = "layout"

History of edits (Latest: antdmi 7 years, 8 months ago) §

The first line indicates where to look for layout scripts; the second line gives the name of the layout to use, minus the view script extension (which is assumed to be ".phtml" by default).

Первая строка указывает, где располагаются скрипты макетов (шаблонов); вторая строка указывает имя макета(шаблона) по умолчанию, без указания расширения скриптов вида (по умолчанию используется ".phtml").

History of edits (Latest: S.Voytovich 7 years, 8 months ago) §

Create a Layout Script

Создание скрипта Макета

History of edits (Latest: antdmi 7 years, 5 months ago) §

Now that you have your configuration in place, you need to create your layout script. First, make sure that you've created the "application/layouts/scripts" directory; then, open an editor, and create the markup for your layout. Layout scripts are simply view scripts, with some slight differences.

Теперь, когда в конфигурации произведена настройка, необходимо создать скрипт макета. Для начала убедитесь, что у вас создана следующую структуру каталогов: "/application/layouts/scripts"; после этого в редакторе создайте ваш макет. Скрипты макетов - это те же скрипты вида, с небольшими отличиями.

History of edits (Latest: S.Voytovich 7 years, 8 months ago) §

  01. <html>

01. <html>

History of edits (Latest: antdmi 7 years, 8 months ago) §

  02. <head>

02. <head>

History of edits (Latest: antdmi 7 years, 8 months ago) §

  03.     <title>My Site</title>

03. <title>My Site</title>

History of edits (Latest: antdmi 7 years, 8 months ago) §

  04. </head>

04. </head>

History of edits (Latest: antdmi 7 years, 8 months ago) §

  05. <body>

05. <body>

History of edits (Latest: antdmi 7 years, 8 months ago) §

  06.     <?php echo $this->layout()->content ?>

06. <?php echo $this->layout()->content ?>

History of edits (Latest: antdmi 7 years, 8 months ago) §

  07. </body>

07. </body>

History of edits (Latest: antdmi 7 years, 8 months ago) §

  08. </html>

08. </html>

History of edits (Latest: antdmi 7 years, 8 months ago) §

In the example above, you'll note the call to a layout() view helper. When you register the Zend_Layout resource, you also gain access to both an action and view helper that allow you access to the Zend_Layout instance; you can then call operations on the layout object. In this case, we're retrieving a named variable, $content, and echoing it. By default, the $content variable is populated for you from the application view script rendered. Otherwise, anything you'd normally do in a view script is perfectly valid -- call any helpers or view methods you desire.

Как вы могли заметить, в данном примере производится вызов макета, являющегося помощником вида. Когда вы регистрируете ресурс Zend_Layout, то вы так же получаете доступ к действиям и помощникам вида, через которые получаете доступ к инстанцированному Zend_Layout; в результате можно выполнять различные операции в макете. В данном случае мы получаем переменную $content и отображаем её. По умолчанию, переменную $content приложение за вас наполняет скриптом вида. В остальных случаях вы можете выполнять все то, что делаете с обычными скриптами вида -- вызов помощников или различных действий.

History of edits (Latest: S.Voytovich 7 years, 8 months ago) §

At this point, you have a working layout script, and your application is informed of its location and knows to render it.

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

History of edits (Latest: S.Voytovich 7 years, 8 months ago) §
Pages: ← previous Ctrl next
1 2 3