如何在Bolt CMS中运行自定义PHP代码?

Dis*_*oat 1 php bolt-cms

我想要做的是有一个页面列出我的数据库中的一些数据(数据与Bolt分开).

我已经研究了扩展,但我没有看到任何方法来制作"页面",只创建"片段".但是片段实际上并没有显示在内容区域中,您只能在<body>标签之后或者在标签中添加它们<head>.它看起来似乎出现在每个页面上,而不是页面上.

是否可以在页面上运行一些自定义PHP代码来从数据库中获取一些数据并显示它?有没有人有一个简单的例子?

小智 5

这是扩展的用途,但片段不是你想要的.

Bolt是一个Silex应用程序,附带一个Doctrine DBAL提供程序,因此您可以使用它$app['db']来访问\Doctrine\DBAL\Connection可用于查询表的对象,例如

    $resultArray = $this->app['db']->createQueryBuilder()
        ->select('*')
        ->from($tableName)
        ->where('my_column_1  = :my_column_value_1')
        ->andWhere('my_column_2  = :my_column_value_2')
        ->orderBy('my_column_3', 'DESC')
        ->setParameter(':my_column_value_1', $value1)
        ->setParameter(':my_column_value_1', $value2)
        ->execute()
        ->fetch(\PDO::FETCH_ASSOC);
Run Code Online (Sandbox Code Playgroud)

然后,您可以使用数据执行所需操作,并根据需要在Twig中进行渲染.

有大量关于使用Twig函数创建扩展的文档,您可以将其放在模板中{{ my_twig_function() }}