从Typo3中获取数据

时间:2012-03-22 15:23:34

标签: typo3

我们有一个网站,我们正在接管并从typo3移植到Orchard。截至目前,我们拥有的只是数据库,没有任何站点文件。我在mysql上有数据库设置,可以查询数据。我目前不知道它使用的是什么版本的错字3。如果有必要,我可能会发现,但正如我所说,现在我所拥有的只是数据库。

我需要以可用的形式获取数据,以便我可以将其按到导入Orchard所需的xml中。问题是,我找不到关于如何设置typo3的数据库的任何文档,所以我无法获得内容...到目前为止,我找到的唯一有用的表是“页面”表,但这似乎只是存储页面的实例,减去内容。以下是我需要的东西:

Page Title
Parent Page (for hierarchical concerns)
Content for a page

是否有人可以了解我需要寻找什么样的表来提取这些内容?

  • 编辑* 我能够使用以下方法获得一些工作:

我所做的是使用此查询收集数据:

select p.Uid PageId, p.pid ParentId, Title, c.BodyText, concat('index.php?id=',p.Uid) OriginalUrl,
p.deleted, c.deleted
from pages p
left join tt_content c on p.Uid = c.Pid
where p.deleted = 0 and c.deleted = 0

然后遍历每个tt_content记录并将它们连接在一起以展平并为页面形成一些连贯的HTML ...这总比没有好。我还没有对插件做过任何事情,但我确实在那里看到了tx_表...无论如何,这是一个开始...... 按PageId,c.pid

排序

1 个答案:

答案 0 :(得分:2)

数据库结构非常简单。你有页面表有一个uid和一个pid。 pid总是定义在哪个页面上创建记录。

Page Title => pages.title
Parent Page (for hierarchical concerns) => pages.pid
Content for a page => tt_content.* where pid = pages.pid order by sorting

有不同类型的页面,其中一些只是保存记录的文件夹,但菜单中不存在该页面。

tt_content也是如此。有许多不同的内容元素(如文本,图像,文本/图像,标题等)。看看tt_content.CType。可能会发生,您已定义图像,但有人将内容元素仅更改为TEXT,因此图像将不会在TYPO3中呈现。你也需要看看colPos。该字段指示将在哪一列中显示内容。 colPos = 0通常是正常列,colPos = 1左,colPos = 2右等。但它取决于。在这些列中,您可以使用排序来获得正确的顺序。

除tt_content外,还有“插件”或“扩展”,附带其他表格。通常以tx_或tt_开头。所以,他们也会保留记录。

可以使用TYPO3为每个页面呈现所需的XML - 无需任何模板。数据库就足够了。但为此你需要了解TypoScript和TYPO3数据库方案。我想,你可以获得纯数据。

还有一些额外的字段,但是重要的字段非常容易理解:deleted = 0/1,hidden = 0/1,starttime,endtime,uid,pid。