编辑Typo3 CMS前端页面

时间:2018-05-23 08:30:03

标签: typo3

我得到一个使用TYPO3 CMS的项目,任务很简单,在网站的标题部分添加cookie使用通知。

我之前从未使用TYPO3,但已经阅读过文档。不知何故,我无法弄清楚要编辑的文件。甚至文档教程和文件结构也不同于我处理的项目。

我也没有该项目的任何项目文档,我也不想让你完成我的任务,但我现在空白,不知道在哪里可以找到所需的相应文件

有关如何处理此问题的任何建议或线索?

我在根文件夹上的index.php如下所示:

if (defined('E_DEPRECATED')) {
error_reporting(E_ALL ^ E_NOTICE ^ E_DEPRECATED);
} else {
    error_reporting(E_ALL ^ E_NOTICE);
}


// ******************
// Constants defined
// ******************

define('PATH_thisScript', str_replace('//', '/', str_replace('\\', '/',
    (PHP_SAPI == 'fpm-fcgi' || PHP_SAPI == 'cgi' || PHP_SAPI == 'isapi' || PHP_SAPI == 'cgi-fcgi') &&
    ($_SERVER['ORIG_PATH_TRANSLATED'] ? $_SERVER['ORIG_PATH_TRANSLATED'] : $_SERVER['PATH_TRANSLATED']) ?
    ($_SERVER['ORIG_PATH_TRANSLATED'] ? $_SERVER['ORIG_PATH_TRANSLATED'] : $_SERVER['PATH_TRANSLATED']) :
    ($_SERVER['ORIG_SCRIPT_FILENAME'] ? $_SERVER['ORIG_SCRIPT_FILENAME'] : $_SERVER['SCRIPT_FILENAME']))));

define('PATH_site', dirname(PATH_thisScript).'/');

if (@is_dir(PATH_site.'typo3/sysext/cms/tslib/')) {
    define('PATH_tslib', PATH_site.'typo3/sysext/cms/tslib/');
} elseif (@is_dir(PATH_site.'tslib/')) {
    define('PATH_tslib', PATH_site.'tslib/');
} else {

// define path to tslib/ here:
$configured_tslib_path = '';

// example:
// $configured_tslib_path = '/var/www/mysite/typo3/sysext/cms/tslib/';

define('PATH_tslib', $configured_tslib_path);
}

if (PATH_tslib=='') {
    die('Cannot find tslib/. Please set path by defining $configured_tslib_path in ' . htmlspecialchars(basename(PATH_thisScript)) . '.');
}

// ******************
// include TSFE
// ******************

require (PATH_tslib.'index_ts.php');

编辑:添加@Riccardo建议的界面截图(typo3 ver 4.4.4)

enter image description here

2 个答案:

答案 0 :(得分:0)

不要改变index.php !!
因为它是在TYPO3的更新中被覆盖的核心的一部分。

由于配置页面的选项非常多,因此没有配方可以匹配所有页面。

我的最佳提示:获取一个TYPO3 profi来查看您的安装,这样他就可以找到哪些文件负责页面呈现,并且可以包含cookie通知。
还有一些扩展可以在您的页面中以非常简单的方式呈现这样的通知。但这完全取决于您的安装配置方式。没有进一步的了解,没什么可说的。

答案 1 :(得分:0)

您正在运行哪个版本的TYPO3?正如Bernd写的那样,如果没有进一步的信息,很难帮助你......我会尝试解释你可以收集一些信息的第一段文字。

1)使用具有管理权限的用户访问TYPO3后端

2)尝试使用此过程识别主TypoScript模板:

Select TypoScript Template

  • 点击模板(1)
  • 点击"零"带有TYPO3符号的页面(2)
  • 你应该在右边看到一个TypoScript模板列表(3), 点击标记为&#34的那个;是Root"

2)之后,点击右侧区域的第一个下拉菜单(使用" info / modify"项目并选择" TypoScript对象浏览器"(又名TSOB)

Select TSOB

3)完成后,您应该看到"树"代表TypoScript配置;

  • 一定要有"设置"选中(1)
  • 搜索构建页面的对象,该对象最有可能是page = PAGE(2)

TypoScript TSOB tree

[回答编辑]

我担心我不得不要求提供调查补充

您能否确定呈现网站标题的各种对象的哪个部分?我的嫌疑人将专注于[home2][outer_frameset]对象; 希望它们包含通常的数组,如:

home2.10 = something 

我认为在整个页面之前添加之类的最快(最脏)的方法就像是

home2.1 = TEXT
home2.1.value = <div>whatever your message would be </div>

我不知道你是否需要比这更复杂的东西......

说,我承认我从未使用TYPO3中的框架,我认为我最后一次用框架做了什么......呃...可能是9年前。