如何为控制器的所有操作/视图设置相同的标题?

发布于 2024-12-10 13:56:54 字数 162 浏览 1 评论 0原文

所有操作/视图都将具有相同的标题。

喜欢=>

<?php $this->set('title_for_layout', 'mysite'); ?>

如何为 CakePHP 中的所有操作/视图设置此标题?

All actions/views will have same title.

Like=>

<?php $this->set('title_for_layout', 'mysite'); ?>

How can I set this title for all actions/views in CakePHP ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

风吹雪碎 2024-12-17 13:56:54

如果您只想让您的网站名称出现在每个页面上;我只需在布局中手动设置它:

<?php echo $title_for_layout; ?> - 我的网站名称

这样您就可以拥有动态标题,并让您的网站名称出现在页面的</code> 中。

如果您不希望这样做,您可以在 app_controller.php 中的 beforeFilter 中设置值:

function beforeFilter() {
    parent::beforeFilter();
    $this->set('title_for_layout', 'My Site');
}

这将为每个操作/视图提供标题“我的网站” ,如果需要,您可以在每个控制器/操作的基础上覆盖它。

然而,您的页面标题对于每个页面来说确实应该是唯一的(通常);因此,除非您有理由拥有相同的标题,否则我会另外考虑。

If you just want your site's name to appear on every page; I would simply set it manually in your layout:

<title><?php echo $title_for_layout; ?> - My Site Name</title>

that way you can have a dynamic title, and have your site's name appear in the <title> of the page.

If you don't want this, you could set the value in a beforeFilter in your app_controller.php:

function beforeFilter() {
    parent::beforeFilter();
    $this->set('title_for_layout', 'My Site');
}

This will give every action/view the title My Site, and you can overwrite this on a per controller/action basis if needed.

Your page title should really be unique for every page however (generally); so unless you have a reason for having the same title I would consider otherwise.

梦里的微风 2024-12-17 13:56:54

在控制器中,您可以设置:

function beforeFilter()
{

$this->pageTitle = "我的页面标题";

父级::beforeFilter();
}

In a controller you can set:

function beforeFilter()
{

$this->pageTitle = "my page title";

parent::beforeFilter();
}

苦行僧 2024-12-17 13:56:54

在您的应用控制器中将其设置在 beforeFilter() 回调函数中

class AppController extends Controller
{
    function beforeFilter()
    {
        $this->set('title_for_layout','Your title');
    }
}       

In your app controller set it in the beforeFilter() callback function

class AppController extends Controller
{
    function beforeFilter()
    {
        $this->set('title_for_layout','Your title');
    }
}       
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文