0
votes

I've written an extension with Extbase/Fluid and this extension has a plugin:

\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
    'MyVendor.' . $_EXTKEY,
    'Pi1',
    array(
        'MyController' => 'list'
    ),
    // non-cacheable actions
    array(
        'MyController' => 'list'
    )
);

But when creating a link

<f:link.action arguments="{foo: 'bar'}">...</f:link.action>

the resulting url has a cHash parameter:

http://localhost/mypage/?tx_myext_pi1[foo]=bar&cHash=d1768a40d9370f7a8d327043da156a05

Why? I defined this plugin as "do not cache" so there should be no cHash parameter.

TYPO3 version is 7.6.12.

2

2 Answers

2
votes

The cHash parameter is not used to cache your content, but to cache the arguments in the url, so it has nothing to do with the action itself being cached or not.

If your action is cached and you see no changes when you change the template or the code, than may be you changed the cache settings of the action and the localconf is still cached. In that case you have to clear the system cache in the install tool or uninstall and install your extension.

1
votes

To remove the cHash parameter you can use the f:link ViewHelper Argument noCacheHash:

<f:link.action arguments="{foo: 'bar'}" noCacheHash="true">...</f:link.action>

The cHash is not used only for you plugin. Also for the rest of your page (layout, etc) so TYPO3 set always an cHash if you have an argument.

If you use RealURL, the cHash disapear if you have mapped all arguments in the url.