我有一个1.5 MB(约有20,000行)的CSV文件,我想将它导入我的新WordPress网站。下面的代码不会创建所有类别,只会创建其中的一些类别。我已经为PHP增加了以下设置:
max_execution_time = 2000
max_input_time = 2000
max_input_vars = 20000
memory_limit = 1024M
我尝试将CSV拆分为多个单独的文件,但代码执行需要更长时间。第一部分在30秒内执行,但第二部分在大约10分钟内执行,并且不会创建所有类别。
有人可以帮我解决错误吗?
<?php
ini_set('memory_limit', '1024M');
ini_set('max_execution_time', '2000');
register_activation_hook(__FILE__, 'wpse_57865_activation_run');
function wpse_57865_activation_run()
{
$file = file_get_contents( plugin_dir_path( __FILE__ ) . 'categories.csv' );
$data = array_map( "str_getcsv", preg_split( '/\r*\n+|\r+/', $file ) );
if( count($data) < 1)
return;
foreach( $data as $cat )
{
$cat_defaults = array(
'cat_name' => $cat[0],
'category_nicename' => $cat[1]
);
wp_insert_category($cat_defaults);
}
}