Sidtitel i MVC i PHP
I mallfilen finns även variabeln
$title tillgänglig, som innehåller sidtiteln.
Uppenbarligen kommer denna rubrik också att vara
olika för olika sidor. Låt oss använda
denna variabel för dess avsedda ändamål:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title><?= $title ?></title>
</head>
<body>
...
</body>
</html>
För att ställa in titeln för en specifik
vy måste du i kontrollern skriva
den i egenskapen title:
<?php
namespace Project\Controllers;
use Core\Controller;
class TestController extends Controller
{
public function act()
{
// Sätt titeln:
$this->title = 'Åtgärden act i testkontrollern';
// Rendera vyn, skicka någon data:
return $this->render('test/act', [
'var1' => 'eee',
'var2' => 'bbb',
'var3' => 'kkk',
]);
}
}
?>
Modifiera mallfilen och alla dina kontrollrar så att en egen titel visas för varje vy.
Låt i kontrollern Page följande
array ges:
<?php
$this->pages = [
1 => ['title'=>'page 1', 'text'=>'text 1'],
2 => ['title'=>'page 2', 'text'=>'text 2'],
3 => ['title'=>'page 3', 'text'=>'text 3'],
];
?>
Skapa en åtgärd show som kommer att
visa en given sida. Låt i vyn
sidans text från nyckeln 'text' vara
inlindad i ett stycke, och texten från nyckeln 'title'
blir sidans titel.