0

我负责一个使用 Typo3 的网页,但不是我创建的。最近(在协助下),Typo3 的版本从 6.2 升级到了 7.6。从那时起,我就失去了将 php 代码直接包含在页面中的可能性,在后端(与添加文本、图像或 html 的方式相同)。据我所知,曾经有一个扩展来做 h (php_page_content),它与这个最新版本不兼容。

我已经看到了一些关于如何在互联网上进行操作的示例(例如在https://docs.typo3.org/typo3cms/TyposcriptReference/ContentObjects/UserAndUserInt/Index.html),但这对我来说相当先进,我无法将此应用于我的问题(我的 php 技能几乎不存在)。有人可以在这件事上提供帮助吗?

4

2 回答 2

4

这是简单的东西可能对你有帮助,试试这个,它对我有用

安装程序.ts

# Add bellow typoscrip in setup.ts
lib.content = USER
lib.content {

    # Define external PHP Script file path
    includeLibs = fileadmin/function.php

    # Call user function
    userFunc = getData->GetNewsCountInCat

    # Pass your argument to the php scrpt (Here function.php)
    value = This is the value
}

函数.php

你的 PHP 逻辑在这里(路径:fileadmin/)。

class getData
{
    // Initialise cObject
    public $cObj;

    public function GetNewsCountInCat($content, $conf=array()) {
    
        // Get argument
        $arg = $this->cObj->TEXT($conf);
        echo $arg;
    }
}

现在您可以使用以下命令访问 html 中的 lib 对象:

<f:cObject typoscriptObjectPath="lib.content" />

您的输出将是:

This is the value.

但是,includeLibs已从 TYPO3 版本 8 中删除。您可以将 USER 和 USER_INT 与更高版本一起使用。找到以下网址:

网址:https ://docs.typo3.org/m/typo3/reference-typoscript/7.6/en-us/ContentObjects/UserAndUserInt/Index.html

问候!

于 2017-05-12T11:33:44.267 回答
0

您可以使用一些可用的扩展,例如 https://typo3.org/extensions/repository/view/pe_pagephpcontentelement

于 2017-05-18T11:57:02.170 回答