Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Caching 类型3:将插件从用户类型更改为用户类型_Caching_Typo3 - Fatal编程技术网

Caching 类型3:将插件从用户类型更改为用户类型

Caching 类型3:将插件从用户类型更改为用户类型,caching,typo3,Caching,Typo3,我有一个3号分机。附件。如何更改此扩展的代码,使其成为USER_INT类型?也就是说,我不希望TYPO3缓存此插件的输出,也不希望TYPO3在使用扩展的页面上调用扩展,即禁用此扩展的缓存。要禁用扩展的缓存,请转到您的piX/class.tx\u XXX\u piX.php文件并删除以下行(在您的类声明下面): 您还需要在main方法中添加以下行(在$this->pi_loadLL()下面): 使用Kickstarter创建扩展名后,还必须转到文件[yourextension]/ext\u loc

我有一个3号分机。附件。如何更改此扩展的代码,使其成为USER_INT类型?也就是说,我不希望TYPO3缓存此插件的输出,也不希望TYPO3在使用扩展的页面上调用扩展,即禁用此扩展的缓存。

要禁用扩展的缓存,请转到您的piX/class.tx\u XXX\u piX.php文件并删除以下行(在您的类声明下面):

您还需要在main方法中添加以下行(在$this->pi_loadLL()下面):


使用Kickstarter创建扩展名后,还必须转到文件[yourextension]/ext\u localconf.php并更改此行

t3lib_extMgm::addPItoST43($_EXTKEY,'piX/class.tx_yourextension_piX.php','_piX','list_type',0);
为此:

t3lib_extMgm::addPItoST43($_EXTKEY,'piX/class.tx_yourextension_piX.php','_piX','list_type',1);
t3lib_extMgm::addPItoST43($_EXTKEY,'piX/class.tx_yourextension_piX.php','_piX','list_type',0);

grunwalski相反,你必须改变这一点:

t3lib_extMgm::addPItoST43($_EXTKEY,'piX/class.tx_yourextension_piX.php','_piX','list_type',1);
为此:

t3lib_extMgm::addPItoST43($_EXTKEY,'piX/class.tx_yourextension_piX.php','_piX','list_type',1);
t3lib_extMgm::addPItoST43($_EXTKEY,'piX/class.tx_yourextension_piX.php','_piX','list_type',0);

解决问题的最简单方法是返回Extension Maganer,选择您的扩展,从下拉菜单中选择“在Kickstarter中编辑”,然后选择相应的前端插件来编辑其属性


选中第一个复选框,这意味着您希望将插件呈现为用户对象。然后单击查看结果按钮,取消选中右侧的所有自定义PHP文件(您自己的代码,如模块和插件),然后单击写入按钮。请小心。如果您不取消选中自己文件的复选框,它们将被虚拟文件覆盖。

正确且完整的方法是将@arturh和@Mehdi Guermazi的答案组合在一起:

  • 将ext_localconf.php中的
    addPItoST43()
    调用中的最后一个参数从1更改为0
  • 删除
    var$pi\u checkCHash=truepi1类头部属性定义中的行
  • 添加
    $this->pi\u USER\u INT\u obj=1行到pi1中main()函数的开头

  • 这些更改与使用@bencuss解决方案中解释的kickstarter方法时得到的更改相同。

    编辑扩展名“myext”的setup.txt文件。将“USER”更改为“USER_INT”


    此扩展将永远不会被缓存。

    我现在在其他项目中,没有测试此扩展的环境,但这对于其他有相同问题的人来说将是有用的信息。感谢您的回复。这不会禁用缓存,它只会禁用对cHash参数的检查。虽然您的回答是正确的,但最好不要更改扩展的php类文件。可以尝试使用XCLASS函数修改它,也可以使用下面的(匿名)方法,只更改
    ext\u localconf.php
    file.php。“如果$cached设置为创建用户内容对象(cObject),则会创建一个USER_INT对象。”
    plugin.tx_myext = USER_INT
    plugin.tx_myxt {