Title: CSV Importer
Author: Soflyy
Published: <strong>2009.03.10.</strong>
Last modified: 2025.12.05.

---

Bővítmények keresése

![](https://ps.w.org/csv-importer/assets/banner-772x250.png?rev=3039593)

![](https://ps.w.org/csv-importer/assets/icon-256x256.png?rev=3039593)

# CSV Importer

 Szerző: [Soflyy](https://profiles.wordpress.org/soflyy/)

[Letöltés](https://downloads.wordpress.org/plugin/csv-importer.0.4.2.zip)

 * [Részletek](https://hu.wordpress.org/plugins/csv-importer/#description)
 * [Vélemények](https://hu.wordpress.org/plugins/csv-importer/#reviews)
 *  [Telepítés](https://hu.wordpress.org/plugins/csv-importer/#installation)
 * [Fejlesztés](https://hu.wordpress.org/plugins/csv-importer/#developers)

 [Támogatás](https://wordpress.org/support/plugin/csv-importer/)

## Leírás

This plugin imports posts from CSV (Comma Separated Value) files into your WordPress
blog. It can prove extremely useful when you want to import a bunch of posts from
an Excel document or the like – simply export your document into a CSV file and 
the plugin will take care of the rest.

#### Szolgáltatások

 * Imports post title, body, excerpt, tags, date, categories etc.
 * Supports custom fields, custom taxonomies and comments
 * Deals with Word-style quotes and other non-standard characters using WordPress’
   built-in mechanism (same one that normalizes your input when you write your posts)
 * Columns in the CSV file can be in any order, provided that they have correct 
   headings
 * Multi-language support

#### Drag & Drop to Import any CSV/Excel/XML with WP All Import Pro

**WP All Import Pro** can import custom fields, taxonomies, WooCommerce, images 
and galleries, users, ACF, and everything else:

 * **Drag & Drop to Import Any File:** Give any CSV or XML to WP All Import, then
   drag and drop to map data from your file into WordPress.
 * **Any Custom Post Type, Every Data Type:** Import data to custom post types, 
   with support for WooCommerce, ACF, custom fields, taxonomies, and everything 
   else.
 * **Import Images & Galleries:** Images can be uploaded, downloaded, or matched
   to media already in WordPress. Full support for WooCommerce product images and
   variation galleries.
 * **Import Files from URL:** Download and import files from external websites, 
   even if they are password protected. URL imports are can be re-run to add, edit,
   and delete posts.
 * **Scheduled Imports:** WP All Import Pro can check periodically check a file 
   for updates and then add, update, or delete to the imported posts accordingly.
 * **Developer Friendly:** Pass data through custom PHP functions. For example, 
   use something like [my_function( {user_email[1]} )] in your template, to pass
   the value of {user_email[1]} to my_function and display whatever it returns.
 * **Priority Support:** Personal support from our team of expert developers with
   over a decade of experience importing and exporting WordPress data.
 * **90 Day Money Back Guarantee:** Not 100% happy? Let us know, and we’ll promptly
   send you a refund. No questions asked.

Check out [WP All Import](https://www.wpallimport.com/?utm_source=import-plugin-free&utm_medium=readme&utm_campaign=upgrade-to-pro)
today.

 * **[Import any CSV/Excel/XML with WP All Import Pro](https://www.wpallimport.com/import-wordpress-csv-xml-excel/?utm_source=import-plugin-free&utm_medium=readme&utm_campaign=upgrade-to-pro).**
 * Need to [import XML and CSV to WooCommerce](http://www.wpallimport.com/woocommerce-product-import/?utm_source=import-plugin-free&utm_medium=readme&utm_campaign=upgrade-to-pro)?
   Check out our WooCommerce add-on.
 * How to export WordPress to CSV? Drag & drop to [export any custom post type from WordPress](http://www.wpallimport.com/export-wordpress/?utm_source=import-plugin-free&utm_medium=readme&utm_campaign=upgrade-to-pro)(
   and everything else) to a custom CSV, Excel, or XML with WP All Export Pro.

### Használat

Click on the CSV Importer link on your WordPress admin page, choose the file you
would like to import and click Import. The `examples` directory inside the plugin’s
directory contains several files that demonstrate how to use the plugin. The best
way to get started is to import one of these files and look at the results.

CSV is a tabular format that consists of rows and columns. Each row in a CSV file
represents a post; each column identifies a piece of information that comprises 
a post.

#### Basic post information

 * `csv_post_title` – title of the post
 * `csv_post_post` – body of the post
 * `csv_post_type` – `post`, `page` or a custom post type.
    **New in version 0.3.2**
   In prior versions, importing rows as pages could be specified on a per-file basis
   using the plugins UI. In 0.3.2, `csv_post_type` column was added to support custom
   post types as well. Refer to the WordPress [documentation on custom post types](https://codex.wordpress.org/Custom_Post_Types)
   for more info on how to set up custom post types.
 * `csv_post_excerpt` – post excerpt
 * `csv_post_categories` – a comma separated list of category names or ids.
    **New
   in version 0.3.5** It’s also possible to assign posts to non-existing subcategories,
   using > to denote category relationships, e.g. `Animalia > Chordata > Mammalia`.
   If any of the categories in the chain does not exist, the plugin will automatically
   create it. It’s also possible to specify the parent category using an id, as 
   in `42 > Primates > Callitrichidae`, where `42` is an existing category id.
 * `csv_post_tags` – a comma separated list of tags.
 * `csv_post_date` – about any English textual description of a date and time.
    
   For example, `now`, `11/16/2009 0:00`, `1999-12-31 23:55:00`, `+1 week`, `next
   Thursday`, `last year` are all valid descriptions. For technical details, consult
   PHP’s `strtotime()` function [documentation](http://php.net/manual/en/function.strtotime.php).

#### Custom fields

Any column that doesn’t start with `csv_` is considered to be a custom field name.
The data in that column will be imported as the custom fields value.

#### General remarks

 * WordPress pages [don’t have categories or tags](https://codex.wordpress.org/Pages).
 * Most columns are optional. Either `csv_post_title`, `csv_post_post` or `csv_post_excerpt`
   are sufficient to create a post. If all of these columns are empty in a row, 
   the plugin will skip that row.
 * The plugin will attempt to reuse existing categories or tags; if an existing 
   category or tag cannot be found, the plugin will create it.
 * To specify a category that has a greater than sign (>) in the name, use the HTML
   entity `&gt;`

#### Advanced usage

 * `csv_post_author` – numeric user id or login name. If not specified or user does
   not exist, the plugin will assign the posts to the user performing the import.
 * `csv_post_slug` – post slug used in permalinks.
 * `csv_post_parent` – post parent id.

### Custom taxonomies

**New in version 0.3.0**

Once custom taxonomies are set up in your theme’s functions.php file or by using
a 3rd party plugin, `csv_ctax_(taxonomy name)` columns can be used to assign imported
data to the taxonomies.

**Non-hierarchical taxonomies**

The syntax for non-hierarchical taxonomies is straightforward and is essentially
the same as the `csv_post_tags` syntax.

**Hierarchical taxonomies**

The syntax for hierarchical taxonomies is more complicated. Each hierarchical taxonomy
field is a tiny two-column CSV file, where _the order of columns matters_. The first
column contains the name of the parent term and the second column contains the name
of the child term. Top level terms have to be preceded either by an empty string
or a 0 (zero).

Sample `examples/custom-taxonomies.csv` file included with the plugin illustrates
custom taxonomy support. To see how it works, make sure to set up custom taxonomies
from `functions.inc.php`.

Make sure that the quotation marks used as text delimiters in `csv_ctax_` columns
are regular ASCII double quotes, not typographical quotes like “ (U+201C) and ” (
U+201D).

### Comments

**New in version 0.3.1**

An example file with comments is included in the `examples` directory. In short,
comments can be imported along with posts by specifying columns such as `csv_comment_*
_author`, `csv_comment_*_content` etc, where * is a comment ID number. This ID doesn’t
go into WordPress. It is only there to have the connection information in the CSV
file.

### Köszönet

This plugin uses [php-csv-parser](http://code.google.com/p/php-csv-parser/) by Kazuyoshi
Tlacaelel. It was inspired by JayBlogger’s [CSV Import](http://www.jayblogger.com/the-birth-of-my-first-plugin-import-csv/)
plugin.

Contributors:

 * Denis Kobozev (original author)
 * Kevin Hagerty (post_author support)
 * Edir Pedro (root category option and tableless HTML markup)
 * Frank Loeffler (comments support)
 * Micah Gates (subcategory syntax)
 * David Hollander (deprecation warnings, linebreak handling)

## Képernyőmentések

 * [[
 * Plugin interface

## Telepítés

Installing the plugin:

 1. Unzip the plugin’s directory into `wp-content/plugins`.
 2. Kapcsoljuk be a bővítményt a WordPress ‘Bővítmény’ menüben.
 3. The plugin will be available under Tools -> CSV Importer on WordPress administration
    page.

## GYIK

> I have quotation marks and commas as values in my CSV file. How do I tell CSV 
> Importer to use a different separator?

It doesn’t really matter what kind of separator you use if your file is properly
escaped. To see what I mean by proper escaping, take a look at `examples/sample.
csv` file which has cells with quotation marks and commas.

If the software you use for exporting to CSV is unable to escape quotation marks
and commas, you might want to give [OpenOffice Calc](http://www.openoffice.org/)
a try.

> How can I import characters with diacritics, Cyrillic or Han characters?

Make sure to save your CSV file with utf-8 encoding.

Prior to version 6.0.4, MySQL [did not support](http://dev.mysql.com/doc/refman/5.1/en/faqs-cjk.html#qandaitem-24-11-1-13)
some rare Han characters. As a workaround, you can insert characters such as 𠊎 (
U+2028E) by converting them to HTML entities – &#x2028e;

> I cannot import anything – the plugin displays „Imported 0 posts in 0.01 seconds.”

Update to version 0.3.1 or greater. Previous versions required write access to the/
tmp directory and the plugin failed if access was denied by PHP’s safe mode or other
settings.

> I’m importing a file, but not all rows in it are imported and I don’t see a confirmation
> message. Why?

WordPress can be many things, but one thing it’s not is blazing fast. The reason
why not all rows are imported and there’s no confirmation message is that the plugin
times out during execution – PHP decides that it has been running too long and terminates
it.

There are a number of solutions you can try. First, make sure that you’re not using
any plugins that may slow down post insertion. For example, a Twitter plugin might
attempt to tweet every post you import – not a very good idea if you have 200 posts.
Second, you can break up a file into smaller chunks that take less time to import
and therefore will not cause the plugin to time out. Third, you can try adjusting
PHP’s `max_execution_time` option that sets how long scripts are allowed to run.
Description of how to do it is beyond the scope of this FAQ – you should search 
the web and/or use your web host’s help to find out how. However, putting the following
line in `.htaccess` file inside public_html directory works for some people:

### Sets max execution time to 2 minutes. Adjust as necessary.

php_value max_execution_time 120

The problem can be approached from another angle, namely instead of giving scripts
more time to run making them run faster. There’s not much I can do to speed up the
plugin (you can contact me at dvkobozev at gmail.com if you like to prove me wrong),
so you can try to speed up WordPress. It is a pretty broad topic, ranging from database
optimizations to PHP accelerators such as APC, eAccelerator or XCache, so I’m afraid
you’re on your own here.

> I receive the following error when I try to import my CSV file: „Invalid CSV file:
> header length and/or row lengths do not match”. What’s wrong with your plugin/
> my file?

Short answer: update to version 0.2.0 or later. Longer answer: the number of fields(
values) in rows in your file does not match the number of columns. Version 0.2.0
pads such rows with empty values (if there are more columns than cells in a row)
or discards extra fields (if there are less columns than cells in a row).

> I’m getting the following error: `Parse error: syntax error, unexpected T_STRING,
> expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in .../public_html/wp-content/
> plugins/csv-importer/File_CSV_DataSource/DataSource.php on line 61`. What gives?

This plugin requires PHP5, while you probably have PHP4 or older. Update your PHP
installation or ask your hosting provider to do it for you.

## Vélemények

![](https://secure.gravatar.com/avatar/71991bc71d5a6c3cf29c48985ecfe880e566aa936361b63ae7ec6d14a309c681?
s=60&d=retro&r=g)

### 󠀁[Marketing Ploy](https://wordpress.org/support/topic/marketing-ploy-2/)󠁿

 [thorsolutions](https://profiles.wordpress.org/thorsolutions/) 2025.11.08.

Just a small plugin to plugin in their main marketing ploy where they didn’t live
up to their promises of original LTD owners

![](https://secure.gravatar.com/avatar/69a1f5153d8210fdacf43f3463a431553eb6b795873ae5af21e0acb5dcf69e0b?
s=60&d=retro&r=g)

### 󠀁[A small bug…](https://wordpress.org/support/topic/a-small-bug-6/)󠁿

 [franciskje](https://profiles.wordpress.org/franciskje/) 2021.06.19.

I really love this plugin, but sometimes doesn’t worked fine for me and skipped 
some posts apparently without a reason. Now I’ve found a problem with accented letters
commonly used in Italy, if one of these is used in the text the CVS plugin skip 
the post. After a lot of errors I’ve changed the „èéàìòù” characters with „a’ e’
i’ o’ u'” and what was previously skipped, is now correctly imported. Hope this 
helps some of you too.

![](https://secure.gravatar.com/avatar/b117d1429cff526413f6e66f90fa39a6f17bbc0bb66ec2f9cfc986386f2af984?
s=60&d=retro&r=g)

### 󠀁[very simple](https://wordpress.org/support/topic/very-simple-40/)󠁿

 [indianplayschools](https://profiles.wordpress.org/indianplayschools/) 2016.09.03.

wonderful

![](https://secure.gravatar.com/avatar/b9ea7654de0c95525457769255e30777dce3594d28493f783e7327bd3712f497?
s=60&d=retro&r=g)

### 󠀁[Nice little script](https://wordpress.org/support/topic/nice-little-script/)󠁿

 [myCred](https://profiles.wordpress.org/designbymerovingi/) 2016.09.03.

Works as intended. Love it.

![](https://secure.gravatar.com/avatar/a109691359dee0e804d79655217fc1cd45521129d56efd09a84956ab44b43bef?
s=60&d=retro&r=g)

### 󠀁[Excellent](https://wordpress.org/support/topic/excellent-3079/)󠁿

 [franciscus](https://profiles.wordpress.org/franciscus/) 2016.09.03.

Since I often have to create custom posts in batches, this saves me a lot of time.
Just be aware that csv_post_title, csv_post_excerpt and csv_post_post must be present
in the input file, even if they are empty.

![](https://secure.gravatar.com/avatar/17d434470ba899f48812aaa5aee431bc86c7b702735d3e59b78106648942e128?
s=60&d=retro&r=g)

### 󠀁[Easy, simple and works](https://wordpress.org/support/topic/easy-simple-and-works/)󠁿

 [vassilm](https://profiles.wordpress.org/vassilm/) 2016.09.03.

Easy, simple and works

 [ 28 (az összes) vélemény olvasása ](https://wordpress.org/support/plugin/csv-importer/reviews/)

## Közreműködők és fejlesztők

“CSV Importer” egy nyílt forráskódú szoftver. A bővítményhez a következő személyek
járultak hozzá:

Közreműködők

 *   [ Soflyy ](https://profiles.wordpress.org/soflyy/)
 *   [ WP All Import ](https://profiles.wordpress.org/wpallimport/)
 *   [ dvkob ](https://profiles.wordpress.org/dvkob/)

[“CSV Importer” fordítása a saját nyelvünkre.](https://translate.wordpress.org/projects/wp-plugins/csv-importer)

### Érdekeltek vagyunk a fejlesztésben?

[Browse the code](https://plugins.trac.wordpress.org/browser/csv-importer/), check
out the [SVN repository](https://plugins.svn.wordpress.org/csv-importer/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/csv-importer/) by
[RSS](https://plugins.trac.wordpress.org/log/csv-importer/?limit=100&mode=stop_on_copy&format=rss).

## Változási napló

#### 0.4.2

 * Minor ui update

#### 0.3.9

 * Minor bug and security fixes

#### 0.3.8

 * Minor bug and security fixes

#### 0.3.7

 * Make hierarchical custom taxonomy line splitting more robust
 * Fix deprecation warnings

#### 0.3.6

 * Fix category cleanup bug

#### 0.3.5

 * Added ‘greater-than’ category syntax
 * Updated the docs

#### 0.3.4

 * Added csv_post_parent column
 * Updated the docs
 * Got rid of a deprecation warning

#### 0.3.3

 * Fixes incompatibility with versions of WordPress prior to 3.0 introduced in previous
   release.

#### 0.3.2

 * Added ability to specify custom post type.

#### 0.3.1

 * Import comments.
 * Updated php-csv-parser – the plugin should no longer create files in /tmp.

#### 0.3.0

 * Custom taxonomies.

#### 0.2.4

 * Root category selection, cleaner HTML.

#### 0.2.3

 * Slight speed increase, support for post_author and post_name.

#### 0.2.2

 * Bugfix release to deal with BOM that may occur in UTF-8 encoded files.

#### 0.2.1

 * Ability to import rows as pages, not posts.
 * Starting with this version, you can also specify category ids instead of names.

#### 0.2.0

 * Ability to handle CSV files where the number of cells in rows does notmatch the
   number of columns
 * Smart date parsing
 * Code cleanup.

#### 0.1.3

 * New option to import posts with published status.

#### 0.1.2

 * Added support for post excerpts.

#### 0.1.1

 * Code cleanup
 * Changed column names for CSV input. Sorry if it breaks anything for you, folks,
   but it had to be done in order to allow for custom fields such as `title` ([All in One SEO Pack](https://wordpress.org/extend/plugins/all-in-one-seo-pack/)
   uses those, for example).

#### v0.1.0

 * Initial version of the plugin

## Meta

 *  Version **0.4.2**
 *  Last updated **4 hónap ezelőtt**
 *  Active installations **4 000+**
 *  WordPress version ** 3.1 vagy magasabb **
 *  Tested up to **6.9.4**
 *  PHP version ** 7.0 vagy magasabb **
 *  Language
 * [English (US)](https://wordpress.org/plugins/csv-importer/)
 * Tags
 * [csv](https://hu.wordpress.org/plugins/tags/csv/)[excel](https://hu.wordpress.org/plugins/tags/excel/)
   [import](https://hu.wordpress.org/plugins/tags/import/)[import csv](https://hu.wordpress.org/plugins/tags/import-csv/)
   [spreadsheet](https://hu.wordpress.org/plugins/tags/spreadsheet/)
 *  [Bővített nézet](https://hu.wordpress.org/plugins/csv-importer/advanced/)

## Vélemények

 4.2 out of 5 stars.

 *  [  19 5-star reviews     ](https://wordpress.org/support/plugin/csv-importer/reviews/?filter=5)
 *  [  4 4-star reviews     ](https://wordpress.org/support/plugin/csv-importer/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/csv-importer/reviews/?filter=3)
 *  [  1 2-star review     ](https://wordpress.org/support/plugin/csv-importer/reviews/?filter=2)
 *  [  4 1-star reviews     ](https://wordpress.org/support/plugin/csv-importer/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/csv-importer/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/csv-importer/reviews/)

## Közreműködők

 *   [ Soflyy ](https://profiles.wordpress.org/soflyy/)
 *   [ WP All Import ](https://profiles.wordpress.org/wpallimport/)
 *   [ dvkob ](https://profiles.wordpress.org/dvkob/)

## Támogatás

Vélemény? Segítségkérés?

 [Támogatói fórum megtekintése](https://wordpress.org/support/plugin/csv-importer/)