TYPO3 BE 列表视图 - 带分号的 CSV 导出
TYPO3 BE list view - CSV export with semicolon
当我尝试在 TYPO3 后端的列表视图中使用 CSV 导出时,我得到一个 CSV,其中以逗号 ,
作为分隔符而不是分号 ;
。有可能改变吗?
不可配置。您可以做什么:XClass \TYPO3\CMS\Recordlist\RecordList\DatabaseRecordList
与您自己的 class 在一个小扩展中。你只需要覆盖一个调用GeneralUtility::csvValues()
的方法。这将分隔符作为第二个参数(默认值:,
)。
<?php
// Location of file: EXT:extension/Classes/Xclass/DatabaseRecordList.php
namespace My\Extension\Xclass;
/**
* Class for rendering of Web>List module
*
* @author Kasper Skårhøj <kasperYYYY@typo3.com>
*/
class DatabaseRecordList extends \TYPO3\CMS\Recordlist\RecordList\DatabaseRecordList {
/**
* Adds input row of values to the internal csvLines array as a CSV formatted line
*
* @param array $csvRow Array with values to be listed.
* @return void
* @todo Define visibility
*/
public function setCsvRow($csvRow) {
$this->csvLines[] = \TYPO3\CMS\Core\Utility\GeneralUtility::csvValues($csvRow, ';');
}
}
在你的ext_localconf.php
中:
$GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['TYPO3\CMS\Recordlist\RecordList\DatabaseRecordList'] = array(
'className' => 'My\Extension\Xclass\DatabaseRecordList'
);
然后清除系统缓存。
从 TYPO3 9.2 开始可以配置,因为有 2 个新设置
mod.web_list.csvDelimiter = ,
- 定义 csv 值之间的分隔符
mod.web_list.csvQuote = "
- 定义引号字符来包装 csv 值
当我尝试在 TYPO3 后端的列表视图中使用 CSV 导出时,我得到一个 CSV,其中以逗号 ,
作为分隔符而不是分号 ;
。有可能改变吗?
不可配置。您可以做什么:XClass \TYPO3\CMS\Recordlist\RecordList\DatabaseRecordList
与您自己的 class 在一个小扩展中。你只需要覆盖一个调用GeneralUtility::csvValues()
的方法。这将分隔符作为第二个参数(默认值:,
)。
<?php
// Location of file: EXT:extension/Classes/Xclass/DatabaseRecordList.php
namespace My\Extension\Xclass;
/**
* Class for rendering of Web>List module
*
* @author Kasper Skårhøj <kasperYYYY@typo3.com>
*/
class DatabaseRecordList extends \TYPO3\CMS\Recordlist\RecordList\DatabaseRecordList {
/**
* Adds input row of values to the internal csvLines array as a CSV formatted line
*
* @param array $csvRow Array with values to be listed.
* @return void
* @todo Define visibility
*/
public function setCsvRow($csvRow) {
$this->csvLines[] = \TYPO3\CMS\Core\Utility\GeneralUtility::csvValues($csvRow, ';');
}
}
在你的ext_localconf.php
中:
$GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['TYPO3\CMS\Recordlist\RecordList\DatabaseRecordList'] = array(
'className' => 'My\Extension\Xclass\DatabaseRecordList'
);
然后清除系统缓存。
从 TYPO3 9.2 开始可以配置,因为有 2 个新设置
mod.web_list.csvDelimiter = ,
- 定义 csv 值之间的分隔符mod.web_list.csvQuote = "
- 定义引号字符来包装 csv 值