Да, и поэтому, а также по­тому, что это возвышает значимость того единственного, что до сих пор казалось замкнуто на одном человеке?.


Этому сложному умению и
В нем можно условно

Наверное..


Можем мы сопереживать и
Психологи говорят и о

Но существо искусства — не только в возвы­шении каждой, одной реальной жизни, а в приобщении одного ко всем, человека к обществу, а отсюда в обре­тении умения посмотреть на себя с точки зрения общест­ва, а не наоборот...
Тогда и рушатся мерки обыденной, сиюминутной жизни и рождается правда иного измере­ния, измерения с позиций общественного идеала..


Нет, нельзя, хотя прекрас­но
А такое сопереживание не
memyself's picture

Перевод статьи из руководства разработчика тем.

Если вы хотите переопределить функцию темы, не включённую в основной список (block, box, comment, node, page), то вам сначала придётся сообщить сообщить об этом движку PHPTemplate.

Для этого, необходимо создать template.php в вашем каталоге с темами. Этот файл должен содержать таги <?php ?> вместе с заглушками для переопределения темы. Эти заглушки указывают движку какой файл шаблона использовать, и какие передавать в него переменные.

Во первых вам необходимо найти соответствующую функцию темы для переопределения. Их список находится в документации по API. Для примера используем theme_item_list().

Определение функции theme_item_list() выглядит следующим образом:

&lt;?php
 function theme_item_list($items = array(), $title = NULL) {
?&gt;

Теперь необходимо поместить заглушку в template.php вашей темы, вот так:

&lt;?php
/**
 * Подхватывает функцию theme_item_list, и перенаправляет её через api шаблонов
 */
function phptemplate_item_list($items = array(), $title = NULL) {
  // Проходит через phptemplate, включая перевод перевод параметров в ассоциативный массив. Названия элементов являются именами,
  // которые переменные получат внутри вашего шаблона.
  return _phptemplate_callback('item_list', array('items' => $items, 'title' => $title));
}
?&gt;

Мы заменили слово theme в названии функции на phptemplate и использовали вызов к _phptemplate_callback() для передачи параметров ($items и $title) в PHPTemplate.

Теперь, можете создать файл item_list.tpl.php в каталоге с вашей темой, который будет использоваться для ту theme item lists. Эта функция должна использовать ту же логику, что и оригинальная theme_item_list().

Вам понадобиться зайти в admininster > themes для того чтобы PHPTemplate очистил свой кэш и обнаружил новый файл. Начиная с версии 4.6, это уже не нужно.
Заметте, что switch здесь практически не нужен, но я его оставил, так как возможно вам понадобится добавить дополнительные переменные.

memyself – 13 December, 2005 – 00:55

Перевод

memyself's picture

Перевод топорный. Посему критика и изменения приветствуются.
_______________________
Учусь делать темы для Drupal...

memyself – 13 December, 2005 – 00:56

вот уж не пойму

вот уж не пойму — а зачем эти движки тем вообще надо? ведь гораздо проще не выучиватть второй макроязык тем а просто написат в пхп в обычном виде как имя_темы.theme ?

kiev1 (not verified) – 17 December, 2005 – 20:52

Почему-то не

memyself's picture

Почему-то не заметил там никакого макроязыка, кроме php. Кроме того, в обычных php темах надоедает функции переименовывать :)
_______________________
Учусь делать темы для Drupal...

memyself – 17 December, 2005 – 23:19

А не проще это

PG's picture

А не проще это было на вике замутить?

PG – 22 December, 2005 – 22:25

Дайте мне

memyself's picture

Дайте мне вакоформаттер в друпале — и всё будет аллес!
_______________________
Учусь делать темы для Drupal...

memyself – 23 December, 2005 – 00:39

Hint: wiki - это

PG's picture

Hint: wiki — это далеко не только вакоформаттер.

PG – 23 December, 2005 – 00:43

"ведь гораздо

PG's picture

"ведь гораздо проще не выучиватть второй макроязык тем а просто написат в пхп в обычном виде как имя_темы.theme?"

Когда без движка — это называется «plain theme».

Смысл движков в следующем:

1) Шаблоны для движка Xtemplate можно редактировать некоторыми wysiwyg редакторами.

2) В phpTemplate повторяющиеся/необязательные блоки выделены в отдельные файлы. Предполагается, что работа с html кодом идет вручную, при такой работе разбиение на файлы действительно упрощает поиск нужного блока html кода. А все условия/циклы/переходы выносятся в сам движок и не путаются под ногами у html-кодера.

Расценивай разницу между «phpTemplate» и «Plain Theme» как разницу между Си и Ассемблером. Ассемблер гибче, но требует большего навыка, сложнее для понимания и т.п.

PG – 26 December, 2005 – 03:07

Много людей

memyself's picture

Много людей Ваши переводы на http://perevod.drupal.ru редактировали после написания? А если честно, после пропажи десятка моих перводов на archlinux.ru, как-то подозрительно отношусь к сайтам на ваковики. Хотя должен скозать форматтер они отличный сделали. Лёгкий и удобный для русской раскладки клавиатуры.
_______________________
Учусь делать темы для Drupal...

memyself – 27 December, 2005 – 00:51

"А если честно,

PG's picture

"А если честно, после пропажи десятка моих перводов на archlinux.ru, как-то подозрительно отношусь к сайтам на ваковики."

Права надо правильно настраивать. А вообще-то, удалить статью с вики нельзя. Можно только сделать новую ревизию, из которой легко откатиться назад. Удалить статью может только хозяин (если, конечно, она не под анонимусом создана, но тут уж не на кого пенять.)

PG – 27 December, 2005 – 02:27

PG's picture

"http://perevod.drupal.ru"

Какой очаровательный сайт. :)

PG – 27 December, 2005 – 02:29

Они вместе с

memyself's picture

Они вместе с сайтом пропали :)
_______________________
Учусь делать темы для Drupal...

memyself – 27 December, 2005 – 09:45

Промазал. Ну,

Промазал. Ну, думаю вы поняли о каком я сайте.
Кстати — первое упоминание про друпал я встретил в какой-то дискуссии про вики. Там говорили о нём именно как о вики-движке.
Да и по большому счёту чем он не вики? :)

memyself-offline (not verified) – 28 December, 2005 – 23:33

"Кстати - первое

PG's picture

"Кстати — первое упоминание про друпал я встретил в какой-то дискуссии про вики. Там говорили о нём именно как о вики-движке."

Аналогично. (Я даже думаю, мы одну и ту же статью читали.)

Только WackoWiki там упоминалось в качестве лучшего Wiki-движка, а Drupal — в качестве лучшего CMS-движка. Так что, в принципе, всё правильно.

PG – 14 January, 2006 – 17:52

drupal - в качестве

bang's picture

drupal — в качестве вики-движка? а кто-нибуь его так использовал?
я для вики тоже вакку использую и не особо в этом вопросе ковырялась, но интересно

bang – 15 January, 2006 – 01:17

А ты по ссылке

PG's picture

А ты по ссылке двумя сообщениями выше сходи. Там как раз друпаловский сайт заточили под ваку. Ссылка идет как раз на статью, посвященную такой заточке.

PG – 15 January, 2006 – 01:48

мда, слона-то я

bang's picture

мда, слона-то я и не приметил :)
спасибо!

bang – 15 January, 2006 – 01:49

Post new comment

*
*
The content of this field is kept private and will not be shown publicly.


*

  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.
  • You may quote other posts using [quote] tags.
  • You may use [inline:xx] tags to display files or images inline.
  • You may link to images on this site using a special syntax
  • You may post code using <code>...</code> (generic) or <?php ... ?> (highlighted PHP) tags.
  • Web and e-mail addresses are automatically converted into links.