0

boxxie テーマ フォルダを moodle/theme フォルダにコピーし、名前を自分のテーマに変更して、テーマを作成しました。今、私は独自の BEFORE LOGIN フロント ページを持ちたかったので、theme/mytheme/config.php で $THEME->layouts の 'frontpage' のファイルを 'frontpage.php' から 'index.php' に変更しました。 .php は、私のカスタム html テーマのインデックス ページです。

フォルダー (css、js など) をテーマのレイアウト フォルダーに配置し、moodle 管理セクションからテーマを選択した後、正常に動作します。

さて、問題は、about.php と他のいくつかの php ページに同じテーマを使用していることです。ブラウザーから about.php ページを開くたびに、すべてのページで $OUTPUT->login_info() メソッドを使用して、ログインしているいずれかのログイン情報を取得しているため、$OUTPUT 変数が認識できないというエラーが表示されます。またはログインしていません

以下は、theme/mytheme/layout/index.php (メインの index.php ファイルに含まれているため) で正常に動作しているコードですが、theme/mytheme/layout/about.php でエラーを示しています。

<span style="font-size: 15px; color: #ffffff;"><?php echo $OUTPUT->login_info(); ?></span>

何を試しましたか?

  1. 出力をセッション変数 ($_SESSION['myoutputvar']) に格納します。

  2. グローバル変数を作成し、その変数に $OUTPUT を格納します。

しかし、これはどれもうまくいきませんでした。私は問題を知っていますが、解決策を見つけることができず、何時間も検索した後、最終的にここに投稿しています.

ですので、少しでも皆様のお役に立てれば幸いです。前もって感謝します。

4

1 に答える 1

0

レイアウト構成ファイルのレイアウト値を確認する必要があります。

また、about.phpで設定する必要があります

$PAGE->set_pagelayout('frontpage');
于 2012-12-06T09:17:54.327 に答える