【问题标题】:Concrete5 Displaying Database ValuesConcrete5 显示数据库值
【发布时间】:2015-04-14 09:00:21
【问题描述】:

我正在使用 Concrete5,我想在页面上显示页面版本和上次修改日期。我设法让它显示使用的版本:

<?php echo t('Version %s', $c->getVersionID())?>

这是我感到困惑的地方,我相信这是来自表 collectionversions 和列 cvID。我可以这样假设吗?

然后我尝试输入:

<?php echo t('Version %s', $c->getVersionDateCreated())?>

再次假设它正在查看表 collectionversions 和列 DateCreated。但它不起作用。

因此,我的问题是:如何让 Concrete5 显示来自某个表和列的数据?另外,我的代码指向的表格是否与我认为的不同?

【问题讨论】:

    标签: php mysql concrete5


    【解决方案1】:

    实际上,因为您使用的是代表当前页面的变量 $c,所以您在执行 $c->getVersionID() 时使用的是来自 Page 模型的函数。该模型本身扩展了 Collection 模型。

    实际上,在 Concrete5 legacy 中,它位于 Page 模型中。在 5.7 中它在集合模型中。

    这里的数据库表并不重要,因为您已经编写了函数来获取所需的数据。

    了解这一点后,您可以使用 3 个功能:

    要获取当前版本的公开日期:

    $c->getCollectionDatePublic();
    

    获取最后修改的日期 - 不一定与前一个相同:

    $c->getCollectionDateLastModified();
    

    要获取页面的创建日期,而不仅仅是最新版本:

    $c->getCollectionDateAdded();
    

    如果你想查看文件,在 Concrete5 legacy 中: 混凝土\核心\模型\page.php 和混凝土\核心\模型\collection.php

    在concrete5 5.7.x 中:如果您想查看文件,在Concrete5 legacy 中: 具体\src\Page\Page.php 和concrete\src\Page\Collection\Collection.php

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-03
      • 2011-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-11
      相关资源
      最近更新 更多