Можно ли получить доступ к $ this из include () 'd файла в PHP-классе?

Я работаю над виджетами WordPress, и все примеры имеют огромные фрагменты HTML / PHP, смешанные, и их невозможно прочитать, поэтому в интересах попытки очистить вещи я хотел бы переместить весь HTML-рендеринг в отдельный PHP-файл, который будет include() 'd.

Хитрость к этому заключается в том, что файл, который я включаю, похоже, не имеет доступа к $this и я не уверен, как это исправить.

widget.php

 class Preorder extends WP_Widget { ... function form() { include('form.php'); } } в class Preorder extends WP_Widget { ... function form() { include('form.php'); } } 

form.php

 <p> <?php echo $this->get_field_id('title'); ?> </p> 

Который приводит к [31-Aug-2011 19:59:19] PHP Fatal error: Call to a member function get_field_id() on a non-object in ... так ясно, что $this не получается бесплатно. Я попробовал aliasing $this для другой переменной и даже просто для удовольствия, используя ключевое слово global без успеха.

Надеюсь, я пропустил что-то легкое.

Забыл, что я повторяю каталог и include каждый файл .php, переименованный form.php в form.tmpl и, похоже, работает.

Durr.