PHPbb Передача параметров или определение параметров - PullRequest
0 голосов
/ 07 декабря 2011

Как {CONSTANT} в файле aboutus.html может отображать «Hello world».который я определил в aboutus.php?

Большое спасибо.

aboutus.php - Я определил CONSTANT для hello world.

<?php
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

define("CONSTANT", "Hello world.");

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();

if ($user->data['user_id'] == ANONYMOUS)
{
    login_box('', $user->lang['LOGIN']);
} 

page_header('Title Here');

$template->set_filenames(array(
    'body' => 'aboutus_body.html',
));

make_jumpbox(append_sid("{$phpbb_root_path}viewforum.$phpEx"));
page_footer();
?>

aboutus_body.html - какможет {CONSTANT} отображать "Hello World."что определено выше?

<h2>About Us2</h2>

<div class="panel">
   <div class="inner"><span class="corners-top"><span></span></span>

   <div class="content">
      <p>
         We were founded this year to bring you the best forum on the Internet!

         We promise to do the following:
         <ul>
            <li>Provide new content</li>
            <li>provide a friendly atmosphere</li>
            <li>Provide an environment where you can have fun!</li>
         </ul>
         <p>{CONSTANT}</p>
      </p>
   </div>

   <span class="corners-bottom"><span></span></span></div>
</div>

1 Ответ

2 голосов
/ 09 декабря 2011

Шаблонные переменные, как вы пытаетесь определить, не являются традиционными константами PHP.Вместо этого они назначаются шаблону из файла PHP с использованием методов assign_var () / assign_vars () / assign_block_vars () класса шаблона.

Например:

<?php
// assign a single template variable
$template->assign_var('CONSTANT', 'Hello World');
/// assign an array of template variables
$template->assign_vars(array(
      'CONSTANT' => 'Hello World',
      'CONSTANT2' => 'Goodbye World',
));
// assign a loop/block
for($i = 0;....)
{
     $template->assign_block_vars('blockname', array(
           'CONSTANT' => 'Hello World',
     ));
}
?>

Обратите внимание, что шаблонпеременные должны быть UPPERCASE, а имена блоков должны быть строчными.

Затем вы вызываете переменную в файле следующим образом: {CONSTANT} Для блока:

<!-- BEGIN blockname -->
{blockname.CONSTANT}
<!-- END blockname -->
...