This example shows how we can get the result of user function to an object. Write the following typoscript to call the user function
Including the file.
includeLibs.getpagecontent = EXT:extname/Classes/UserFunc/PageContent.php
getpagecontent : Variable to include the file.
extname : Extension name
PageContent.php : File name which contains the class for user function.
Enabling the user function
lib.subcontent = USER
lib.subcontent {
userFunc = tx_user_pagecontent->getSubPageContents
page_id.cObject < temp.pageIds
exclude_pid = 1
}
lib.subcontent: Typo3 Object
tx_user_pagecontent : Class name in the file 'PageContent.php'
getSubPageContents : Function name which return the result
page_id, exclude_pid: Parameter that is sent to the function
Now add the file called "PageContent.php" in your extension called "extname" at the path extname/Classes/UserFunc/
PageContent.php file looks like the following structure.
<?php
class tx_user_pagecontent {
/**
* Reference to the parent (calling) cObject set from TypoScript
*/
public $cObj;
/**
*
* @param array TypoScript configuration
* @return string HTML output, showing content elements
*/
public function getSubPageContents($content, $conf) {
/*
Some calculations...
*/
return $result;
}
}
?>
Now the value of $result is assigned to the object "lib.subcontent".
The value of the result can be any thing like variable, integer, HTML content, string etc..