【发布时间】:2014-08-21 20:11:04
【问题描述】:
我写了一个插件,它可以读取 csv 文件并创建新产品。该插件仅在我创建一个产品时有效,但当我在 Insert() 中添加 while 时,该插件不起作用。我想首先创建所有产品。也许它与 add_action 相关...请帮助。
define( 'PLUGIN_DIR', dirname(__FILE__).'/' );
function CreateProduct($line) {
$data = explode('";"', $line);
define(POST_NAME, $data[2]);
define(cena_netto_pw, $data[5]);
$post = get_page_by_title( POST_NAME, 'OBJECT', 'product' );
$product_ID = $post->ID;
$post_data = get_post($product_ID);
function hbt_create_post() {
$my_post = array(
'post_title' => POST_NAME,
'post_content' => '',
'post_status' => 'publish',
'post_author' => 1,
'post_type' =>'product'
);
$product_ID = wp_insert_post( $my_post );
}
if(!isset($post))
hbt_create_post();
return $error_obj;
}
function Import() {
$file = PLUGIN_DIR.'test.csv';
$open = fopen($file, 'r');
while (!feof($open)) {
$line = fgets($open);
CreateProduct($line);
}
fclose($open);
}
add_action('admin_init', 'Import' );
?>
While循环代码
while (!feof($open)) { $line = fgets($open); CreateProduct($line); }
此代码不起作用。只有
$line = fgets($open); CreateProduct($line);
【问题讨论】:
-
用 while 循环显示你的代码
-
是:while (!feof($open)) { $line = fgets($open);创建产品($行);这段代码不起作用。只有 $line = fgets($open); CreateProduct($line);
-
请使用
txt文件而不是csv进行测试。结果如何?
标签: wordpress