Drupal 7: как визуализировать отдельный элемент после его рендеринга массива? - PullRequest
0 голосов
/ 23 мая 2018

Я работал над чьим-то кодом, где они рендерит форму.В файле .tpl они визуализируют некоторые отдельные элементы как таковые:

<?php print render($form['datepicker']); ?>

, а затем визуализируют остальные элементы формы с помощью:

<?php print render($form); ?>

Я узнал, что визуализация отдельного элемента массива(как и указатель даты выше) исключит его отображение при вызове всего массива.Но есть ли способ исключить что-либо и отобразить это после того, как будет обработан его родительский массив.

Например:

<?php print render($form['datepicker']); ?> //<-- Will not be rendered in render($form);
<?php print render($form); ?> 
<?php print render($form['termsAndConditions']); ?> //<-- Will be render twice, here and in render($form);

(Цель состоит в том, чтобы обернуть элемент tersmAndConditionsв своем собственном HTML-коде после визуализации остальных элементов формы.)

1 Ответ

0 голосов
/ 23 мая 2018

Использовать

hide ($ form ['datepicker']);

Это исключит 'datepicker' из формы $, но $ form ['datepicker']будет по-прежнему существовать для визуализации

. Это означает, что вы будете делать это с помощью

hide($form['datepicker']);
print render( $form );

для $ form ['TermsAndConditions'], вам нужно распечатать его дважды, прежде чем сохранить его в переменной передрендеринг

как будто ваш полный код будет как

hide($form['datepicker']); // // We hide the datepicker now so that we can render them later.
print render($form['datepicker']);
$termsAndCond = $form['termsAndConditions'];
print render( $form );
print render($termsAndCond);

НАДЕЖДА это решит вашу проблему

СПАСИБО

...