Ultimate CSV Importer - Version 3.9.1

Version Description

Download this release

Release Info

Developer smackcoders
Plugin Icon 128x128 Ultimate CSV Importer
Version 3.9.1
Comparing to
See all releases

Code changes from version 3.9 to 3.9.1

README.md ADDED
@@ -0,0 +1,641 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ## Import CSV with Ultimate CSV Importer ##
2
+ **Contributors:** smackcoders
3
+
4
+ **Donate link:** http://www.smackcoders.com/donate.html
5
+
6
+ **Tags:** admin, administration, author, automatic, blog, categories, category, cms, contact, content, custom, custom post, dashboard, database, e-commerce, ecommerce, edit, event, events, feed, Formatting, free, gallery, image, images, import, integration, language, link, links, list, marketing, media, menu, meta, mobile, multisite, navigation, News, page, pages, performance, photo, photos, picture, pictures, plugin, plugins, Post, posts, profile, registration, rss, seo, Share, sharing, shop, shortcode, shortcodes, statistics, stats, store, tag, tags, Taxonomy, template, text, thumbnail, thumbnails, title, upload, url, user, users, video, woocommerce, wordpress, wpmu, xml, youtube.
7
+
8
+ **Requires at least:** 4.2
9
+
10
+ **Tested up to:** 4.3.1
11
+
12
+ **Stable tag:** 3.8.3
13
+
14
+ **Version:** 3.8.3
15
+
16
+ **Author:** smackcoders
17
+
18
+ **Author URI:** http://profiles.wordpress.org/smackcoders/
19
+
20
+ **License:** GPLv2 or later
21
+
22
+ Import CSV with CSV Importer made simple to import & export posts, pages, custom posts and custom fields in few simple clicks
23
+
24
+ #### Description ####
25
+
26
+ Import CSV data to WordPress is made very easy even for novice users as in few clicks and 3 simple steps with CSV Importer plugin.
27
+
28
+ Now csv importer supports multi language and almost every WordPress modules and plugin fields as follows. Import data feed periodically from csv file as
29
+
30
+ #### Supported Core Modules and Attributes ####
31
+ * Post
32
+ * Page
33
+ * Featured image support
34
+ * Post inline image handling
35
+ * Standard WP Custom Post types
36
+ * WordPress themes custom posts
37
+ * Custom post type UI plugin Post types
38
+ * Users with roles
39
+ * Comments
40
+ * Custom Fields
41
+ * Author
42
+ * Tags import and multi tag for each post import
43
+ * Categories import and multi category for each post
44
+ * Eshop
45
+ * All-in-one SEO
46
+
47
+ #### Highlights of 3.8 ####
48
+ * Multilanguage support (fr_FR,es_ES,nl_NL)
49
+ * Inline image handling shortcode with image attributes Example:[WPIMPINLINE:greensroad.jpg|width='150'|height='80'|alt='post_title_redtree']
50
+ * Fixed user reported Warnings and Bugs
51
+ * Any delimiter support for csv export
52
+
53
+ Note: Now you can import no. of images in in-line post content as image shortcodes using advanced media handling option as zip files.
54
+
55
+ #### CSV Importer ####
56
+
57
+ WP Ultimate CSV Importer Plugin proven much effective advanced CSV Importer With Ultimate User Friendly Features. It is much easy now even for newbies to import csv file exported from any tool, app or software. Import as any WordPress post type and associated fields by simple mapping feature. Now import any CSV file as thousands of post, page and custom post types. This is admin side free plugin helps you in bulk edit, create and import posts type for your blog or site.
58
+
59
+ It is more easy to import csv database maintained in Excel xls or spread sheets into valuable content for your web site without missing any. It is possible now to schedule a import csv periodically for content update, maintenance, prices, offers, coupons and inventory etc.
60
+
61
+ Much improved User interface with most flexible jquery plugin features and bootstrap UI design makes csv import more simple, easy, fast and even more flexible for better user experience. With improved Multi site, buddy press compatibility (except user import module) works well for most of the best WordPress themes available online. Now manage multi site & buddy press, Amazon data import, affiliates blog, product inventory, ecommerce store, multi author blog, automatic news import, photo blog etc periodically with simple click import.
62
+
63
+ #### Helpful Links ####
64
+
65
+ [Get More Details Here>>](https://www.smackcoders.com/wp-ultimate-csv-importer-pro.html?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
66
+
67
+ [Test Drive Our Live Demo](http://demo.smackcoders.com/demowpthree/wp-admin/admin.php?page=wp-ultimate-csv-importer-pro/index.php&__module=dashboard?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
68
+
69
+ [Get Started Sample CSV Files](https://www.smackcoders.com/blog/wordpress-ultimate-csv-importer-csv-sample-files-and-updates.html?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
70
+
71
+ [Documentation and Tutorial for CSV Importer ](https://www.smackcoders.com/documentation/ultimate-csv-importer-pro?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
72
+
73
+
74
+ #### Video Walkthrough ####
75
+ [![Demo CountPages alpha](https://i.ytimg.com/vi/Guv5zR7fgW0/sddefault.jpg)](https://www.youtube.com/watch?v=Guv5zR7fgW0&list=PL2k3Ck1bFtbQqFhOK7g08kxENI4qQkmC)
76
+
77
+ #### Highlights ####
78
+ * import csv from any source as WordPress posts
79
+ * New Terminate & Continue feature is added.
80
+ * Complete export feature with improved filters
81
+ * Import external/internal images in line to any posts
82
+ * Upload images related to each csv
83
+ * Auto delimiter
84
+ * Auto UTF-8 handling
85
+ * All-in-SEO import support.
86
+ * Drag drop import
87
+ * Define any type of post
88
+ * Control post status (Publish, Private, Pending, Draft, Sticky and Protected)
89
+ * Simple yet Powerful mapping feature
90
+ * Convert any csv import as perfect posts and fields
91
+ * Scheduled Publishing
92
+ * Duplicate Title and content handling
93
+ * Multi Lingual import (CSV format must be UTF-8 without BOM)
94
+ * Multi-site also supported now
95
+ * Compatible to WordPress themes
96
+ * Better alternative for xml
97
+ * Post Format option added
98
+ * Page template attribute feature
99
+ * EShop Products import (included from V3.6.3)
100
+
101
+ #### Power Import Features to Control your csv import ####
102
+ * Post title, content and even excerpt
103
+ * Text, WYSIWYG/HTML, in line CSS in post content
104
+ * Images, Youtube, Videos in post content
105
+ * Featured image by Url
106
+ * Multi authors
107
+ * Multiple tags and categories
108
+ * Non existing tags and categories are created automatically
109
+ * Any Short Codes in post content
110
+ * Assign sidebar widget, slider, slide show as short codes
111
+ * Manual slug feature for SEO friendly urls
112
+ * Different post status for each post in CSV file.
113
+ * Custom fields support for WP standard
114
+ * Map custom fields by adding new on the fly.
115
+
116
+ #### Imp. Notes ####
117
+ * All CSV files should be should be strictly UTF-8 CSV format. Now this can be handled by plugin.
118
+ * All WordPress supported languages can imported with csv format as UTF-8 without BOM (See FAQ for instructions).
119
+ * User import option is disabled for multi site mode.
120
+ * To Schedule posts for publishing provide future date and time in date column in CSV File.
121
+
122
+ #### Featured Image Support ####
123
+ Your WordPress theme should support featured image. If not, please add the following code to where you need to display. E.g)wp-contents/themes/header.php
124
+
125
+ `<?php add_theme_support( 'post-thumbnails' ); ?>`
126
+
127
+ #### Pro Features ####
128
+ * Advanced Features
129
+ * Multi language Support
130
+ * Woocommerce Support with woocommerce_products, woocommerce_variations, woocommerce_refunds, woocommerce_orders, woocommerce_coupons
131
+ * Market press
132
+ * ACF, TYPES, PODS, CCTM Custom Fields
133
+ * Advanced Export with Delimiter and Filters
134
+ * Advanced Media Handling
135
+ * Schedule Imports
136
+ * Dashboard, CSV Manager and Custom Mapping Templates
137
+ * DB Optimizer, System status etc.
138
+
139
+ Compare Free Vs Pro [Features](https://www.wpultimatecsvimporter.com/wp-ultimate-csv-importer-plugin?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)>>
140
+ Learn More from [User Manual](https://www.wpultimatecsvimporter.com/documentation?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)>>
141
+
142
+
143
+ #### Common Issues ####
144
+
145
+ How to solve auto_prepend_file and auto_append_file error?
146
+
147
+ Check your phpinfo.php. Ensure that auto_prepend_file and auto_append_file options are disabled. If not you can disable it in php.ini settings file your self. You can also do it by a .htaccess file
148
+
149
+ Create an .htaccess file in root and set the following values.
150
+ php_value auto_prepend_file none
151
+ php_value auto_append_file none
152
+
153
+ This will solve your issue or get support from hosting if you dint have sufficient permission.
154
+
155
+ Also you can follow the instructions as given here
156
+
157
+ * [http://codex.wordpress.org/Function_Reference/the_post_thumbnail](http://codex.wordpress.org/Function_Reference/the_post_thumbnail)
158
+ * [http://codex.wordpress.org/Post_Thumbnails](http://codex.wordpress.org/Post_Thumbnails)
159
+ * [http://wordpress.org/support/topic/featured-image-not-showing-7?replies=5](http://wordpress.org/support/topic/featured-image-not-showing-7?replies=5)
160
+
161
+
162
+ #### Extended Pro Power Features in WP Ultimate CSV Importer ####
163
+ * Types Plugin support
164
+ * Woocommerce CSV importer with product variation
165
+ * Marketpress Lite Importer
166
+ * WP Members Importer
167
+ * WP Customer Reviews Importer
168
+ * Auto Schedule all your Imports
169
+ * Save mapping as Templates for reuse
170
+ * Auto Mapping Feature
171
+ * Strict UTF-8 auto conversion
172
+ * All In One SEO Fields Import
173
+ * WordPress SEO by Yoast Fields Import
174
+ * Custom Post Type UI plugin import
175
+ * Advanced Custom Fields Import
176
+ * CCTM Posts and Fields Import
177
+ * Woocommerce CSV Importer,
178
+ * WP ecommerce Products CSV Importer with WP e-Commerce Custom Fields
179
+ * Categories & tags Import with Category icons plugin support
180
+ * Custom Taxonomy import
181
+
182
+ #### And we thank @respectyoda, @alantygel and @James Golovich for their wonderful support to us. ####
183
+
184
+ #### Installation ####
185
+
186
+ * [Step By Step Installation with Snaps](https://www.wpultimatecsvimporter.com/documentation/all-import/user-guide/simple-step-by-step-user-guide/?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
187
+
188
+
189
+ #### Screenshots ####
190
+
191
+ 1. New Interactive Dashboard with Chart and Graph
192
+ 2. Advanced CSV Importer With Ultimate User Friendly Features with drag and drop etc.
193
+ 3. User friendly easy mapping for any csv file data to WordPress field attributes with sampling.
194
+ 4. Advanced duplicate post name and content check with server request control for high performance factor.
195
+ 5. Detailed real time log to know pinpoint status.
196
+ 6. Module based environment for easy and reduced interface to enable most required modules and when ever needed.
197
+ 7. Inbuilt support form for easy feedback, support, feature request with all useful links for easy and better csv import.
198
+ 8. New export module for posts, page, eshop, users, comments and all custom posts type plugins.
199
+
200
+
201
+ #### Frequently Asked Questions ####
202
+
203
+ How to solve auto_prepend_file and auto_append_file error?
204
+
205
+ Check your phpinfo.php. Ensure that auto_prepend_file and auto_append_file options are disabled. If not you can disable it in php.ini settings file your self. You can also do it by a .htaccess file
206
+
207
+ Create an .htaccess file in root and set the following values.
208
+ php_value auto_prepend_file none
209
+ php_value auto_append_file none
210
+
211
+ This will solve your issue or get support from hosting if you dint have sufficient permission.
212
+
213
+ [Click Here for More Details](https://www.wpultimatecsvimporter.com/documentation/all-import/user-guide/simple-step-by-step-user-guide/?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
214
+
215
+ #### Changelog ####
216
+
217
+ **3.8.3**
218
+ * Fixed : Text domain is added for language translation system.
219
+ * Fixed : Bugs fixed for detecting duplicate post content and title option.
220
+
221
+ **3.8.2**
222
+ * Fixed : Wordpress 4.3.1 compatibility added.
223
+ * Fixed : Dashboard entry issue fix.
224
+ * Fixed : Featured image filename with empty space import issue fix.
225
+ * Fixed : Duplicate featured images on import fixed.
226
+ * Fixed : Core custom Field mapping group added
227
+
228
+ **3.8.1**
229
+ * Fixed : WordPress 4.2.3 and 4.2.4 compatibility checked.
230
+ * Fixed : Fixed the unwanted warnings in all files.
231
+ * Fixed : XSS vulnerability.
232
+ * Fixed : Removed the ../../../../../../wp-load.php and used the wordpress ajax call.
233
+ * Fixed : Removed the wp-content that are directly used in some files.
234
+ * Added : Checked the ABSPATH in each file.
235
+ * Added : Comments are exported by specific date and author option.
236
+
237
+ **3.8**
238
+ * Multilanguage support (fr_FR,es_ES,nl_NL)
239
+ * Inline image handling shortcode with image attributes
240
+ * Warnings and bugs Fixes
241
+ * Any delimiter support for csv export
242
+
243
+ **3.7.4**
244
+ * Fixed : Allow Editor/Author to import.(Multisite also).
245
+ * Added : WordPress 4.2.2 compatibility.
246
+
247
+ **3.7.3**
248
+ * Fixed: Vulnerablility security issue fix.
249
+
250
+ **3.7.2**
251
+ * Added: WordPress 4.2 and 4.2.1 compatibility.
252
+ * Fixed: Blank page conflict issue
253
+
254
+ **3.7.1**
255
+ * Added: Security fix for curl.
256
+ * Added: Security fix for session status.
257
+
258
+ **3.7**
259
+ * Fixed: Featured image hotlink issue.
260
+
261
+ **3.6.78**
262
+ * Added: Hot security fix in readfile.php. ( Thanks - @James Golovich )
263
+
264
+ **3.6.77**
265
+ * Added: WordPress 4.1.1 compatibility checked.
266
+ * Improved: Inline image import feature. Added recursive method to assign the image.
267
+ * Fixed: Featured image naming issue. [Solved](https://wordpress.org/support/topic/problem-in-import-with-the-image-name)
268
+ * Fixed: Removed unwanted warnings.
269
+
270
+ **3.6.76**
271
+ * Improved: Post Format.
272
+ * Fixed: Export eshop data issue.
273
+ * Fixed: Import with image name issue.
274
+ * Fixed: Groups plugin conflict.
275
+
276
+ **3.6.75**
277
+ * Added: Terminate & Continue option in import section.
278
+ * Improved: Log section. Issue fixed in Web View & Admin View.
279
+ * Fixed: Security fix for export module.
280
+
281
+ **3.6.74**
282
+ * Added: Security fix.
283
+
284
+ **3.6.73**
285
+ * Added: WordPress 4.0 compatibility checked.
286
+ * Added: https format support for all WP instances.
287
+ * Added: Warning to guide user to create uploads directory with writeable permissions.
288
+ * Fixed: Image handling issues in featured image.
289
+ * Fixed: Multisite compatible issue.
290
+ * Removed: Post Content field mandatory option.
291
+ * Removed: All console warnings.
292
+ * Improved: Details added in security and performance tab under settings module.
293
+
294
+ **3.6.72**
295
+ * Added: Debug mode enable/disable options.
296
+ * Modified: Menu order changes.
297
+
298
+ **3.6.71**
299
+ * Minor bug fixed
300
+
301
+ **3.6.7**
302
+ * Added: Export features for all missing modules.
303
+ * Fixed: All console warnings and reported logs.
304
+
305
+ **3.6.6**
306
+ * Dashboard chart issue fixed for multi site.
307
+ * UI improvements along with easy usability.
308
+ * Fixed Groups plugin conflicts
309
+
310
+ **3.6.5**
311
+ * Added in line image support with advance media handling
312
+ * PDO check added
313
+
314
+ **3.6.4**
315
+ * Added: Advanced export features with filter options.
316
+ * Improved: Advanced log section.
317
+ * Fixed reported jquery issues.
318
+ * WordPress 4.0 compatibility checked.
319
+
320
+ **3.6.3**
321
+ * Added: Eshop import support.
322
+ * Fixed reported conflicts with other plugins.
323
+ * WordPress 3.9.2 compatibility checked.
324
+
325
+ **3.6.2**
326
+ * Hot security fix added.
327
+
328
+ **3.6.1**
329
+ * Multi-site support issue fixed
330
+ * Duplicate import issue fixed
331
+ * Security issue fixed
332
+
333
+ **3.6**
334
+ * New interactive graphs and charts in plugin dashboard
335
+ * New Admin dashboard widgets
336
+ * Added Users and comments export feature
337
+ * Auto delimiter handling
338
+ * Auto mapping feature
339
+ * Now allow authors to access import features
340
+
341
+ **3.5.5**
342
+ * post_format attribute support added
343
+ * page_template attribute added
344
+ * update_post_meta added for duplicate meta issue (Thanks to @alantygel)
345
+ * Type error issue in jQuery fixed
346
+
347
+ **3.5.4**
348
+ * Added: All-in-SEO import support.
349
+ * WordPress 3.9.1 compatibility added.
350
+
351
+ **3.5.3**
352
+ * Added: Compatible up to WordPress 3.9.
353
+ * Added: Export feature added for posts, page, custom posts type plugins.
354
+ * Improved: Removed all warnings.
355
+ * Fixed reported bugs
356
+
357
+ **3.5.2**
358
+ * Import posts with author names as numerical apart from User ID
359
+ * Added menu_order attribute import
360
+ * Added Auto image rename option
361
+ * Option to cancel an partial import at middle
362
+ * Improved image handling even special characters in Url
363
+ * Import can handle image urls without any extensions
364
+ * User reported bugs fixed
365
+
366
+ **3.5.1**
367
+ * User reported issue fixes
368
+ * Activation and other plugin conflict issue solved like Jet pack
369
+ * Admin UI freezing issues - screen option, Help links issues fixed.
370
+ * WYSIWIG editor UI issue fixed.
371
+
372
+ **3.5.0**
373
+ * Combined major release version of 3.5 and 3.4
374
+ * Improved MVC structure.
375
+ * Improved User interface with drag and drop feature.
376
+ * Improved: WordPress 3.8.1 compatibility added.
377
+ * Module based system allows simplify UI
378
+ * Added: Detailed log feature added.
379
+ * Added: Support and Useful links added.
380
+ * Added: Support made easy now from plugin.
381
+
382
+ **3.3.1**
383
+ * Added: Multi site compatibility except User import.
384
+ * Added: Comments, Users modules mandatory fields validation added.
385
+ * Improved: Removed unwanted warnings.
386
+
387
+ **3.3.0**
388
+ * Added: WordPress 3.8 compatibility.
389
+ * Added: Bulk users with role import feature.
390
+ * Added: Comments import feature with relevant post ids.
391
+
392
+ **3.2.3**
393
+ * Added: WordPress 3.7.1 compatibility added.
394
+ * Added: Different media path support added.
395
+ * Added: Sub folder installations support added.
396
+ * Improved: Updated plugin directory path.
397
+ * Improved: Removed unwanted warnings.
398
+ * Improved: Performance check.
399
+
400
+ **3.2.2**
401
+ * Added: WordPress 3.6.1 compatibility added.
402
+ * Added: Mapping UI improved with on select dynamic update feature
403
+ * Added: Help content added
404
+ * Fixed: Post slug issue fixed and tested for 3.6 and 3.6.1
405
+
406
+ **3.2.1**
407
+ * Improved: Performance improvements on SQL and CSV parsing
408
+ * Fixed: Plugin deactivation issue fixed and updated the code.
409
+ * Fixed: Links in the cells makes problems with the "quote"
410
+ * Fixed: Loading content from more than one column
411
+ * Fixed: Custom Post type issues fixed
412
+
413
+ **3.2.0**
414
+ * Improved: User interface improvements
415
+ * Improved:WordPress 3.6 compatibility added, Much Improved UI.
416
+ * Fixed: Featured image issues fixed for WordPress-3.6.
417
+
418
+ **3.1.0**
419
+ * Improved: Much Improved Featured Image feature
420
+ * Fixed: Image url for featured image issues fixed
421
+ * Fixed: PHP 5.4 upgrade fix
422
+
423
+ **3.0.0**
424
+ * Added: Category in numericals are restricted and skipped to Uncategorized
425
+ * Added: Now password should be mentioned as {password}
426
+ * Added: Post authors can be User ID or name
427
+ * Improved: Much improved work flow
428
+ * Improved: Add custom field option improved.
429
+ * Improved: Date format handling improved
430
+ * Improved: Any Date format is supported now
431
+ * Improved: Future scheduling and status improved
432
+ * Improved: Can apply post status for individual post via csv itself
433
+ * Improved: Featured image handling improved and fixed. More improvement are scheduled.
434
+ * Improved: Duplicate check options improved for both title and content option.
435
+ * Improved: Post author issue fixed and improved
436
+ * Improved: Wrong user id or name are automatically assigned under admin
437
+ * Improved: Multi category and tags improved
438
+ * Fixed: Custom Field mapping and import fixed
439
+ * Fixed: Overall Status option improved and issue fixed
440
+ * Fixed: Password field fixed for Protected
441
+ * Fixed: Status as in CSV option improved and fixed
442
+
443
+ **2.7.0**
444
+ * Added: Added more post status options
445
+ * Added: Publish, Sticky, Private, Draft and Pending Status for whole import
446
+ * Added: Protected status with a common password option added
447
+ * Added: "Status as in CSV" to assign status for individual post through CSV as ID or Field Tag
448
+ * Added: User ID and User Name support for Post author feature added
449
+ * Added: In case of missing or false IDs post assigned to admin as draft
450
+ * Added: Add Custom Field Text box auto-filled with CSV header tag.
451
+ * Added: Duplicate detection for post content and post title added as options.
452
+ * Added: User can choose either one or both to avoid duplicate issues.
453
+ * Improved: 6 Standard date format added as drop down to choose.
454
+ * Improved: Renamed post_name as post_slug to avoid confusion
455
+ * Improved: Mapping Fields
456
+ * Improved: Field tags are formatted to support auto mapping option (next milestone)
457
+ * Improved: Listed custom fields with prefix as CF: Name for easy identification.
458
+ * Fixed: Date format conflict at import fixed.
459
+
460
+ **2.6.0**
461
+ * Fixed: Major Bug fixed
462
+ * Fixed: Added UTF-8 support.
463
+ * Fixed: Fixed Html tag conflicts.
464
+
465
+ **2.5.0**
466
+ * Major issues fixed and updated to WordPress-3.5.1 compatibility.
467
+
468
+ **2.0.1**
469
+ * Update to WordPress-3.5 compatibility.
470
+
471
+ **2.0.0**
472
+ * WPDEBUG errors fixed. CSV import folder changed to WP native uploads folder.
473
+
474
+ **1.1.1**
475
+ * Renamed the mapping field attachment as featured_image and category as post_category.
476
+
477
+ **1.1.0**
478
+ * Added featured image import feature along with post/page/custom post.
479
+
480
+ **1.0.2**
481
+ * Bug fixed to recognize the trimmed trailing space in the CSV file
482
+ * Added validation for the duplicate field mapping.
483
+
484
+ **1.0.1**
485
+ * Added features to import multiple tags and categories with different delimiters.
486
+
487
+ **1.0.0**
488
+ * Initial release version. Tested and found works well without any issues.
489
+
490
+
491
+
492
+ #### Upgrade Notice ####
493
+
494
+ **3.8.3**
495
+ * Upgrade now for improvements in multi language translation.
496
+
497
+ **3.8.2**
498
+ * Upgrade now for more improvements.
499
+
500
+ **3.8.1**
501
+ * Upgrade now for ABSPATH used in all files and also fixed all the warnings,bugs.
502
+
503
+ **3.8**
504
+ * Upgrade now for Multi language support and bug fixes
505
+
506
+ **3.7.4**
507
+ * Upgrade now for allow author/editor to import fix.
508
+
509
+ **3.7.3**
510
+ * Upgrade now for Vulnerability fix.
511
+
512
+ **3.7.2**
513
+ * Important Upgrade for wordpress 4.2 and above
514
+
515
+ **3.7.1**
516
+ * Upgrade now for security fix.
517
+
518
+ **3.7**
519
+ * Upgrade now for minor bug fixes.
520
+
521
+ **3.6.78**
522
+ * Upgrade now for security fix.
523
+
524
+ **3.6.77**
525
+ * Upgrade now for WordPress 4.1.1 compatibility and minor bug fixes.
526
+
527
+ **3.6.76**
528
+ * Upgrade now for more bug fixes.
529
+
530
+ **3.6.75**
531
+ * Upgrade now for improved experience.
532
+
533
+ **3.6.74**
534
+ * Upgrade now for security fix.
535
+
536
+ **3.6.73**
537
+ * Upgrade now for WordPress 4.0 compatibility and minor bug fixes.
538
+
539
+ **3.6.72**
540
+ * Upgrade to enable/disable debug mode in settings.
541
+
542
+ **3.6.71**
543
+ * Upgrade now for complete export features as in Pro with bug fix.
544
+
545
+ **3.6.7**
546
+ * Upgrade now for complete export features as in Pro.
547
+
548
+ **3.6.6**
549
+ * Upgrade now for improved experience.
550
+
551
+ **3.6.5**
552
+ * Upgrade Now for advanced media handling for post in line images
553
+
554
+ **3.6.4**
555
+ * Upgrade Now for filtered export and improved log features.
556
+
557
+ **3.6.3**
558
+ * Upgrade now for Eshop product import feature.
559
+
560
+ **3.6.2**
561
+ * Important Security Update
562
+
563
+ **3.6.1**
564
+ * Important issue fixes update
565
+
566
+ **3.6**
567
+ * Must upgrade with major values added features
568
+
569
+ **3.5.5**
570
+ * Upgrade for minor bug fix, conflicts and new attribute support.
571
+
572
+ **3.5.4**
573
+ * Upgrade now for All-in-SEO import support.
574
+
575
+ **3.5.3**
576
+ * Upgrade for added export feature and bug fixes
577
+
578
+ **3.5.2**
579
+ * Upgrade for bug free version and improved image handling
580
+
581
+ **3.5.1**
582
+ * Must upgrade now for 3.5 bug fixes
583
+
584
+ **3.5.0**
585
+ * Upgrade now for major release 3.5. Note - Old version files need to be deleted.
586
+
587
+ **3.3.1**
588
+ * Upgrade now for multi site compatibility.
589
+
590
+ **3.3.0**
591
+ * Upgrade now for WP 3.8 compatibility and added bulk user,comments feature.
592
+
593
+ **3.2.3**
594
+ * Upgrade for WordPress 3.7.1 compatibility and minor bug fixes
595
+
596
+ **3.2.2**
597
+ * WordPress 3.6.1 compatible, bug fix and UI improvements
598
+
599
+ **3.2.1**
600
+ * Performance improvements on SQL and CSV parsing
601
+
602
+ **3.2.0**
603
+ * Now compatible with 3.6 and improved featured image
604
+
605
+ **3.1.0**
606
+ * Now Much Improved Featured Image and url handling
607
+
608
+ **3.0.0**
609
+ * Must upgrade to have Major improvements, performance fixes and issue fixes
610
+
611
+ **2.7.0**
612
+ * Major improvements and feature changes.
613
+
614
+ **2.6.0**
615
+ * Bug fixed and should upgrade.
616
+
617
+ **2.5.0**
618
+ * Duplicate detection added.
619
+ * Added more information in success message.
620
+ * Import memory issues solved.
621
+
622
+ **2.0.1**
623
+ * Update to WordPress-3.5 compatibility.
624
+
625
+ **2.0.0**
626
+ * Major Bug fixed and should upgrade. WPDEBUG errors fixed. CSV import folder changed to WP native uploads folder.
627
+
628
+ **1.1.1**
629
+ * Minor correction and fix applied.
630
+
631
+ **1.1.0**
632
+ * A major new feature added in this version. Update needed.
633
+
634
+ **1.0.2**
635
+ * This version have important bug fixes and newly added features. Must be upgrade immediately.
636
+
637
+ **1.0.1**
638
+ * Added features to import multiple tags and categories with different delimiters.
639
+
640
+ **1.0.0**
641
+ * Initial release of plugin.
Readme.txt CHANGED
@@ -1,95 +1,82 @@
1
  === WP Ultimate CSV Importer ===
2
  Contributors: smackcoders
3
  Donate link: http://www.smackcoders.com/donate.html
4
- Tags: categories, category, custom post type, e-commerce, ecommerce, free, html, html5, image, images, import, multisite, page, pages, picture, plugin, Post, products, rss, seo, shortcode, tag, Taxonomy, template, thumbnail, upload, url, user, woocommerce, WordPress, wpmu, xml.
5
- Requires at least: 4.0
6
  Tested up to: 4.4.2
7
- Stable tag: 3.9
8
- Version: 3.9
9
  Author: smackcoders
10
  Author URI: http://profiles.wordpress.org/smackcoders/
11
-
12
  License: GPLv2 or later
13
-
14
  WP Ultimate CSV Importer is a WordPress extension to import and export CSV files.
15
-
16
  == Description ==
 
17
 
18
- WP Ultimate CSV Importer is a import and export tool that helps to build WordPress site at the drop of a hat by importing Post, Page, Custom Post, Users, WordPress Custom Fields, Products of eShop and SEO fields of All in One SEO. The plugin supports export and import of Custom Post Type created with CPT UI plugin and default WordPress functions. The import is for selective modules but the export is for all the core modules along with few third party plugins.
19
-
20
- = Modules supported in Import and Export =
21
 
 
22
  * Core Modules - Post, Page, Custom Post and Users.
23
  * eCommerce Products - eShop.
24
  * Custom Post - CPT UI and default WordPress Custom Post.
25
  * SEO field - All in One SEO.
26
-
27
  = Modules supported in Export =
28
-
29
  * Core Modules - Category, Tag, Custom Taxonomy, Customer Reviews, Comments.
30
- * eCommerce Products - WP e-Commerce, WooCommerce, MarketPress.
31
  * Custom fields and SEO fields imported along with these modules can be exported.
32
-
33
- = Highlighted Feature =
34
-
35
- * Imports inline images with shortcodes and images from external URL.
36
  * WordPress core custom fields can be dynamically registered on the flow of import.
37
  * Can be used in WordPress multisite.
38
  * Multi category and multi tag import.
39
  * Handles duplicate with title and content.
40
  * CSV with any delimiter in UTF-8 format can be imported.
41
  * Exports all the imported files of different modules with filters.
42
-
43
  = Note =
44
-
45
- * Users module is disabled in multisite.
46
  * Password protected image can't be imported in featured image.
47
  * All languages supported by WordPress can be imported in UTF-8 without BOM format.
48
 
49
- = Ultimate CSV Importer PRO =
50
-
51
- Ultimate CSV Importer PRO has all the features of Ultimate CSV Importer and it is extended with lot of features that enables to import, schedule, update and export both CSV and XML files. The import details over an year is maintained in dashboard chart and the site updates can be tracked in a fraction of second. Any changes like modifying existing content or appending new content can be done with update. The update or import can be performed periodically with scheduler. The update or schedule is done with the templates which is created with mapped fields in the mapping section of the import. The export option enables to export the imported modules as CSV based on the filters.
52
-
53
- = Supported Modules To Import and Export =
54
 
 
 
 
55
  * Core Module - Post, Page, Custom Post, Category, Tags, Users, Customer Reviews.
56
- * eCommerce Products – eShop, WP e-Commerce, WooCommerce, MarketPress.
57
  * SEO field - All in One SEO and Yoast SEO.
58
- * Custom fields – ACF, CCTM, Pods, Types.
59
- * Custom Post – CPT UI, CCTM, Pods, Types.
60
-
61
  = Highlighted Feature of PRO =
62
-
63
- * Import inline image with shortcode and featured images with shortcode or external URL.
64
- * The image zip can be uploaded even after the completion of import flow to populate the shortcode image.
65
- * Registers Custom Fields of ACF, Types, Pods and WordPress fields on the flow of import.
 
66
  * Supports Custom Posts created with CPT UI, CCTM, Types and Pods
67
- * Specific record import. (I.e) Selective records in a CSV/XML can be imported or scheduled.
68
- * Imported modules can be managed in File manager.
69
-
70
- Compare Free Vs Pro [Features](https://www.wpultimatecsvimporter.com/wp-ultimate-csv-importer-plugin?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)>>
71
- Learn More from [User Manual](https://www.wpultimatecsvimporter.com/documentation/all-import/wordpress-ultimate-csv-importer/?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)>>
72
 
73
  = Helpful Links =
 
74
 
75
- [Documentation](https://www.wpultimatecsvimporter.com/documentation/all-import/wordpress-ultimate-csv-importer/)
 
 
 
 
 
76
 
77
- [Live Demo](http://demo.smackcoders.com/demowpthree/wp-login.php?redirect_to=http%3A%2F%2Fdemo.smackcoders.com%2Fdemowpthree%2Fwp-admin%2Fadmin.php%3Fpage%3Dwp-ultimate-csv-importer-pro%2Findex.php%26__module%3Ddashboard&reauth=1)
78
 
79
 
80
- = Video Walkthrough =
81
- [youtube https://www.youtube.com/watch?v=S1P8KebpLaU&list=PL2k3Ck1bFtbTtSX3hEFoBvK_Ka0pfYwp_]
82
-
83
 
84
  == Installation ==
85
-
86
  1. Extract the wp-ultimate-csv-importer.zip in wordpress/wp-content/plugins using FTP or with plugin install in wp-admin.
87
- 2. Create folder named “uploads” within wp-content.
88
- 3. Give 755 permission for both wp-content and uploads folder. (i.e) In terminal run the command, chmod 755 -R wp-content
89
- 4. Activate the plugin in WordPress plugin list.
90
 
91
  == Screenshots ==
92
-
93
  1. Dashboard view of the importer
94
  2. Upload section view of CSV/XML.
95
  3. Mapping view of the uploaded CSV/XML fields with WordPress fields
@@ -97,30 +84,24 @@ Learn More from [User Manual](https://www.wpultimatecsvimporter.com/documentatio
97
  5. Detailed real time log.
98
  6. Settings with php.ini details.
99
  7. Export module with filters.
100
-
101
  == Frequently Asked Questions ==
102
-
103
  = Common Issues =
104
-
105
  How to solve auto_prepend_file and auto_append_file error?
106
  Check your phpinfo.php. Ensure that auto_prepend_file and auto_append_file options are disabled.
107
-
108
  If not you can disable it in php.ini settings file yourself. You can also do it by a .htaccess file
109
- Create an .htaccess file in root and set the following values.
110
-
111
  php_value auto_prepend_file none
112
  php_value auto_append_file none
113
-
114
  This will solve your issue or get support from hosting if you didn’t have sufficient permission.
115
-
116
  == Changelog ==
117
-
 
 
118
  = 3.9 =
119
  * Added: PHP 7 compatibility.
120
  * Added: Support for all post date formats.
121
  * Fixed: Featured image and Inline image naming issues.
122
  * Fixed: Auto mapping issues in Custom Fields and SEO Fields.
123
-
124
  = 3.8.8 =
125
  * Added: Localize script for multi language support.
126
  * Added: WordPress 4.4.1 compatibility.
@@ -131,96 +112,75 @@ This will solve your issue or get support from hosting if you didn’t have suff
131
  * Fixed: User mail notification on new user imports.
132
  * Fixed: Category & Tag import issue in eShop module.
133
  * Removed: Mod security check.
134
-
135
  = 3.8.6 =
136
  * Added: Compatibility for WordPress 4.4.
137
  * Modified: Support page UI.
138
  * Fixed: Post date issue.
139
  * Fixed: Custom Post Type listing issue.
140
-
141
  = 3.8.5 =
142
- * Added: Restriction to view the image without password for protected status content.
143
  * Modified: Settings page UI.
144
  * Fixed: post_status mandatory validation issue.
145
  * Fixed: SEO Fields mapping issue.
146
  * Fixed: Known issues in export.
147
  * Fixed: Mandatory validation issues.
148
  * Fixed: Console TypeError issue.
149
-
150
-
151
  = 3.8.4 =
152
  * Modified: Changed the Dashboard view.
153
-
154
  = 3.8.3 =
155
  * Added : Text domain for language translation system.
156
  * Fixed : Detect duplicate issue.
157
-
158
  = 3.8.2 =
159
  * Added : Compatibility for WordPress 4.3.1.
160
  * Added : Grouped core custom field in mapping section.
161
  * Added : Image import with spaces in image name.
162
  * Fixed : Module entry count in dashboard issue.
163
  * Fixed : Duplication of image in media gallery.
164
-
165
  = 3.8.1 =
166
  * Added : Compatibility for WordPress 4.2.3 and 4.2.4.
167
  * Added : Export by specific date and author option in comments.
168
  * Fixed : warnings triggered in console.
169
  * Fixed : XSS vulnerability.
170
- * Removed : ../../../../../../wp-load.php and replaced with WordPress ajax call.
171
  * Removed : Direct usage of wp-content.
172
-
173
-
174
  = 3.8 =
175
- * Added : Multilanguage support (fr_FR,es_ES,nl_NL).
176
  * Added : Inline image handling with shortcode along with image attributes.
177
- * Added: Any delimiter support for csv export.
178
  * Fixed: Warnings and bugs Fixes
179
-
180
-
181
  = 3.7.4 =
182
  * Added : WordPress 4.2.2 compatibility.
183
  * Fixed : Allow Editor/Author to import.(Multisite also).
184
-
185
  = 3.7.3 =
186
  * Fixed: Vulnerability security issue.
187
-
188
  = 3.7.2 =
189
  * Added: WordPress 4.2 and 4.2.1 compatibility.
190
  * Fixed: Blank page issue conflicts.
191
-
192
  = 3.7.1 =
193
  * Added: Security fix for curl.
194
  * Added: Security fix for session status.
195
-
196
  = 3.7 =
197
  * Fixed: Featured image hot link issue.
198
-
199
  = 3.6.78 =
200
  * Added: Hot security fix in readfile.php.
201
-
202
  = 3.6.77 =
203
  * Added: WordPress 4.1.1 compatibility.
204
  * Improved: Inline image import feature.
205
  * Added recursive method to assign the image.
206
  * Fixed: Featured image naming issue. [Solved](https://wordpress.org/support/topic/problem-in-import-with-the-image-name)
207
  * Removed: Warnings.
208
-
209
  = 3.6.76 =
210
  * Improved: Post Format.
211
  * Fixed: Export eShop content issue.
212
  * Fixed: Import with image name issue.
213
  * Fixed: Groups plugin conflict.
214
-
215
  = 3.6.75 =
216
  * Added: Terminate & Continue option in import.
217
  * Improved: Log section.
218
  * Fixed: Web View & Admin View issue.
219
  * Fixed: Security issue in export module.
220
-
221
  = 3.6.74 =
222
  * Fixed: Security issue.
223
-
224
  = 3.6.73 =
225
  * Added: WordPress 4.0 compatibility.
226
  * Added: https format support for all WP instances.
@@ -230,47 +190,36 @@ This will solve your issue or get support from hosting if you didn’t have suff
230
  * Fixed: Multisite compatibility issue.
231
  * Fixed: All console warnings.
232
  * Removed: Post Content field mandatory option.
233
-
234
-
235
  = 3.6.72 =
236
  * Added: Debug mode enable/disable options.
237
  * Modified: Menu order changes.
238
-
239
  = 3.6.71 =
240
  * Fixed: Minor bugs.
241
-
242
  = 3.6.7 =
243
  * Added: Export features for all missing modules.
244
  * Fixed: All console warnings and reported logs.
245
-
246
  = 3.6.6 =
247
  * Fixed: Dashboard chart issue in multi site.
248
  * Modified: UI to improve usability.
249
  * Fixed: Groups plugin conflicts.
250
-
251
  = 3.6.5 =
252
  * Added : Inline image support with advanced media handling.
253
  * Added: PDO check.
254
-
255
  = 3.6.4 =
256
  * Added: WordPress 4.0 compatibility.
257
  * Added: Advanced export features with filter options.
258
  * Improved: Advanced log section.
259
  * Fixed: jQuery issues.
260
-
261
  = 3.6.3 =
262
  * Added: eShop import support.
263
  * Added: WordPress 3.9.2 compatibility.
264
  * Fixed: Conflicts with other plugins.
265
-
266
  = 3.6.2 =
267
  * Fixed: Hot security issue.
268
-
269
  = 3.6.1 =
270
  * Fixed: Multi-site support issue.
271
  * Fixed: Duplicate import issue.
272
  * Fixed: Security issue.
273
-
274
  = 3.6 =
275
  * Added: Interactive graphs and charts in plugin dashboard.
276
  * Added: Admin dashboard widgets.
@@ -278,39 +227,32 @@ This will solve your issue or get support from hosting if you didn’t have suff
278
  * Added: Auto delimiter handling.
279
  * Added: Auto mapping feature.
280
  * Added: Allow authors to access import features.
281
-
282
  = 3.5.5 =
283
  * Added: post_format attribute support.
284
  * Added: page_template attribute.
285
  * Added: update_post_meta for duplicate meta issue
286
  * Fixed: TypeError issue in jQuery.
287
-
288
  = 3.5.4 =
289
- * Added: All-in-SEO import support.
290
  * Added: WordPress 3.9.1 compatibility.
291
-
292
  = 3.5.3 =
293
  * Added: Compatibility for WordPress 3.9.
294
  * Added: Export feature for Posts, Page, Custom Post.
295
  * Fixed: Reported bugs
296
  * Removed: all warnings.
297
-
298
-
299
  = 3.5.2 =
300
  * Import posts with author names as numerical apart from User ID
301
  * Added: menu_order attribute import
302
  * Added: Auto image rename option
303
  * Option to cancel an partial import at middle
304
  * Improved image handling even special characters in URL
305
- * Import can handle image urls without any extensions
306
  * User reported bugs fixed
307
-
308
  = 3.5.1 =
309
  * User reported issue fixes
310
  * Activation and other plugin conflict issue solved like Jet pack
311
  * Admin UI freezing issues - screen option, Help links issues fixed.
312
  * WYSIWYG editor UI issue fixed.
313
-
314
  = 3.5.0 =
315
  * Combined major release version of 3.5 and 3.4
316
  * Improved MVC structure.
@@ -320,17 +262,14 @@ This will solve your issue or get support from hosting if you didn’t have suff
320
  * Added: Detailed log feature added.
321
  * Added: Support and Useful links added.
322
  * Added: Support made easy now from plugin.
323
-
324
  = 3.3.1 =
325
  * Added: Multisite compatibility except User import.
326
  * Added: Comments, Users modules mandatory fields validation added.
327
  * Improved: Removed unwanted warnings.
328
-
329
  = 3.3.0 =
330
  * Added: WordPress 3.8 compatibility.
331
  * Added: Bulk users with role import feature.
332
  * Added: Comments import feature with relevant post ids.
333
-
334
  = 3.2.3 =
335
  * Added: WordPress 3.7.1 compatibility added.
336
  * Added: Different media path support added.
@@ -338,32 +277,27 @@ This will solve your issue or get support from hosting if you didn’t have suff
338
  * Improved: Updated plugin directory path.
339
  * Improved: Removed unwanted warnings.
340
  * Improved: Performance check.
341
-
342
  = 3.2.2 =
343
  * Added: WordPress 3.6.1 compatibility added.
344
  * Added: Mapping UI improved with on select dynamic update feature
345
  * Added: Help content added
346
  * Fixed: Post slug issue fixed and tested for 3.6 and 3.6.1
347
-
348
  = 3.2.1 =
349
  * Improved: Performance improvements on SQL and CSV parsing
350
  * Fixed: Plugin deactivation issue fixed and updated the code.
351
  * Fixed: Links in the cells makes problems with the "quote"
352
  * Fixed: Loading content from more than one column
353
  * Fixed: Custom Post type issues fixed
354
-
355
  = 3.2.0 =
356
  * Improved: User interface improvements
357
  * Improved:WordPress 3.6 compatibility added, Much Improved UI.
358
  * Fixed: Featured image issues fixed for WordPress-3.6.
359
-
360
  = 3.1.0 =
361
  * Improved: Much Improved Featured Image feature
362
- * Fixed: Image url for featured image issues fixed
363
  * Fixed: PHP 5.4 upgrade fix
364
-
365
  = 3.0.0 =
366
- * Added: Category in numericals are restricted and skipped to Uncategorized
367
  * Added: Protected status password inclusion as {password}.
368
  * Added: Post authors can be User ID or name
369
  * Improved: Much improved work flow
@@ -371,7 +305,7 @@ This will solve your issue or get support from hosting if you didn’t have suff
371
  * Improved: Date format handling improved
372
  * Improved: Any Date format is supported now
373
  * Improved: Future scheduling and status improved
374
- * Improved: Can apply post status for individual post via csv itself
375
  * Improved: Featured image handling improved and fixed. More improvement are scheduled.
376
  * Improved: Duplicate check options improved for both title and content option.
377
  * Improved: Post author issue fixed and improved
@@ -381,7 +315,6 @@ This will solve your issue or get support from hosting if you didn’t have suff
381
  * Fixed: Overall Status option improved and issue fixed
382
  * Fixed: Password field fixed for Protected
383
  * Fixed: Status as in CSV option improved and fixed
384
-
385
  = 2.7.0 =
386
  * Added: Added more post status options
387
  * Added: Publish, Sticky, Private, Draft and Pending Status for whole import
@@ -398,204 +331,141 @@ This will solve your issue or get support from hosting if you didn’t have suff
398
  * Improved: Field tags are formatted to support auto mapping option (next milestone)
399
  * Improved: Listed custom fields with prefix as CF: Name for easy identification.
400
  * Fixed: Date format conflict at import fixed.
401
-
402
-
403
  = 2.6.0 =
404
  * Fixed: Major Bug fixed
405
  * Fixed: Added UTF-8 support.
406
- * Fixed: Fixed Html tag conflicts.
407
-
408
  = 2.5.0 =
409
  * Major issues fixed and updated to WordPress-3.5.1 compatibility.
410
-
411
  = 2.0.1 =
412
  * Update to WordPress-3.5 compatibility.
413
-
414
  = 2.0.0 =
415
  * WPDEBUG errors fixed. CSV import folder changed to WP native uploads folder.
416
-
417
  = 1.1.1 =
418
  * Renamed the mapping field attachment as featured_image and category as post_category.
419
-
420
  = 1.1.0 =
421
  * Added featured image import feature along with post/page/custom post.
422
-
423
  = 1.0.2 =
424
  * Bug fixed to recognize the trimmed trailing space in the CSV file
425
  * Added validation for the duplicate field mapping.
426
-
427
  = 1.0.1 =
428
  * Added features to import multiple tags and categories with different delimiters.
429
-
430
  = 1.0.0 =
431
  * Initial release version. Tested and found works well without any issues.
432
-
433
-
434
-
435
  == Upgrade Notice ==
436
-
 
437
  = 3.9 =
438
  * Upgrade now for PHP 7 and WordPress 4.4.2 compatibility.
439
-
440
  = 3.8.8 =
441
  * Upgrade now for security fix and WordPress 4.1.1 compatibility with minor bug fixes.
442
-
443
  = 3.8.6 =
444
  * Upgrade now for import the default CPTs.
445
-
446
  = 3.8.5 =
447
  * Upgrade now for known bug fixes.
448
-
449
  = 3.8.4 =
450
  * Upgrade now for new dashboard view.
451
-
452
  = 3.8.3 =
453
  * Upgrade now for improvements in multi language translation.
454
-
455
  = 3.8.2 =
456
  * Upgrade now for more improvements.
457
-
458
  = 3.8.1 =
459
  * Upgrade now for ABSPATH used in all files and also fixed all the warnings,bugs.
460
-
461
  = 3.8 =
462
  * Upgrade now for Multi language support and bug fixes
463
-
464
  = 3.7.4 =
465
  * Upgrade now for allow author/editor to import fix.
466
-
467
  = 3.7.3 =
468
  * Upgrade now for Vulnerability fix.
469
-
470
  = 3.7.2 =
471
- * Important Upgrade for wordpress 4.2 and above
472
-
473
  = 3.7.1 =
474
  * Upgrade now for security fix.
475
-
476
  = 3.7 =
477
  * Upgrade now for minor bug fixes.
478
-
479
  = 3.6.78 =
480
  * Upgrade now for security fix.
481
-
482
  = 3.6.77 =
483
  * Upgrade now for WordPress 4.1.1 compatibility and minor bug fixes.
484
-
485
  = 3.6.76 =
486
  * Upgrade now for more bug fixes.
487
-
488
  = 3.6.75 =
489
  * Upgrade now for improved experience.
490
-
491
  = 3.6.74 =
492
  * Upgrade now for security fix.
493
-
494
  = 3.6.73 =
495
  * Upgrade now for WordPress 4.0 compatibility and minor bug fixes.
496
-
497
  = 3.6.72 =
498
  * Upgrade to enable/disable debug mode in settings.
499
-
500
  = 3.6.71 =
501
  * Upgrade now for complete export features as in Pro with bug fix.
502
-
503
  = 3.6.7 =
504
  * Upgrade now for complete export features as in Pro.
505
-
506
  = 3.6.6 =
507
  * Upgrade now for improved experience.
508
-
509
  = 3.6.5 =
510
  * Upgrade Now for advanced media handling for post in line images
511
-
512
  = 3.6.4 =
513
  * Upgrade Now for filtered export and improved log features.
514
-
515
  = 3.6.3 =
516
- * Upgrade now for Eshop product import feature.
517
-
518
  = 3.6.2 =
519
  * Important Security Update
520
-
521
  = 3.6.1 =
522
  * Important issue fixes update
523
-
524
  = 3.6 =
525
  * Must upgrade with major values added features
526
-
527
  = 3.5.5 =
528
  * Upgrade for minor bug fix, conflicts and new attribute support.
529
-
530
  = 3.5.4 =
531
- * Upgrade now for All-in-SEO import support.
532
-
533
  = 3.5.3 =
534
  * Upgrade to add export feature and fix bug.
535
-
536
  = 3.5.2 =
537
  * Upgrade for bug free version and improved image handling
538
-
539
  = 3.5.1 =
540
  * Must upgrade now for 3.5 bug fixes
541
-
542
  = 3.5.0 =
543
  * Upgrade now for major release 3.5. Note - Old version files need to be deleted.
544
-
545
  = 3.3.1 =
546
  * Upgrade now for multisite compatibility.
547
-
548
  = 3.3.0 =
549
  * Upgrade now for WP 3.8 compatibility and added bulk user,comments feature.
550
-
551
  = 3.2.3 =
552
  * WordPress 3.7.1 compatibility and minor bug fixes
553
-
554
  = 3.2.2 =
555
  * WordPress 3.6.1 compatibility, bug fix and UI improvements
556
-
557
  = 3.2.1 =
558
  * Performance improvements on SQL and CSV parsing
559
-
560
  = 3.2.0 =
561
  * Compatibility for 3.6 and improved featured image.
562
-
563
  = 3.1.0 =
564
  * Improved Featured image and URL handling
565
-
566
  = 3.0.0 =
567
  * Major performance improvements and issue fixes.
568
-
569
  = 2.7.0 =
570
  * Major improvements and feature changes.
571
-
572
  = 2.6.0 =
573
  * Bug fixed and should upgrade.
574
-
575
  = 2.5.0 =
576
  * Duplicate detection added.
577
  * Added more information in success message.
578
  * Import memory issues solved.
579
-
580
  = 2.0.1 =
581
  * WordPress-3.5 compatibility.
582
-
583
  = 2.0.0 =
584
  * Major Bug fix and need to be upgraded.
585
  * WPDEBUG error fixed.
586
  * CSV import folder changed to WP native uploads folder.
587
-
588
  = 1.1.1 =
589
  * Minor correction and fix applied.
590
-
591
  = 1.1.0 =
592
  * Major feature added.
593
-
594
  = 1.0.2 =
595
  * Bug fixes along with new features. Need to be upgraded immediately.
596
-
597
  = 1.0.1 =
598
  * Added features to import multiple tags and categories with different delimiters.
599
-
600
  = 1.0.0 =
601
  * Initial release of plugin.
 
 
1
  === WP Ultimate CSV Importer ===
2
  Contributors: smackcoders
3
  Donate link: http://www.smackcoders.com/donate.html
4
+ Tags: csv importer, import, export, featured image, migration, scheduled importer, categories, custom post type, ecommerce, free, images, multisite, page, plugin, Post, products, rss, seo, shortcode, tag, Taxonomy, template, thumbnail, upload, url, user, woocommerce, MarketPress, WordPress, wpml, multilingual, csv, xml, csvimporter.
5
+ Requires at least: 4.0
6
  Tested up to: 4.4.2
7
+ Stable tag: 3.9.1
8
+ Version: 3.9.1
9
  Author: smackcoders
10
  Author URI: http://profiles.wordpress.org/smackcoders/
 
11
  License: GPLv2 or later
 
12
  WP Ultimate CSV Importer is a WordPress extension to import and export CSV files.
 
13
  == Description ==
14
+ WP Ultimate CSV Importer is an import and export tool that helps to a build WordPress site at the drop of a hat by importing Post, Page, Custom Post, Users, WordPress Custom Fields, Products of eShop and SEO fields of All in One SEO. The plugin supports export and import of Custom Post Type created with the CPT UI plugin and default WordPress functions. The import is for selective modules, but the export is for all the core modules along with few third party plugins.
15
 
16
+ Please show your support for WP Ultimate CSV Importer by giving it a [rating](https://wordpress.org/support/view/plugin-reviews/wp-ultimate-csv-importer?rate=5#postform) :)
 
 
17
 
18
+ = Modules supported in Import and Export =
19
  * Core Modules - Post, Page, Custom Post and Users.
20
  * eCommerce Products - eShop.
21
  * Custom Post - CPT UI and default WordPress Custom Post.
22
  * SEO field - All in One SEO.
 
23
  = Modules supported in Export =
 
24
  * Core Modules - Category, Tag, Custom Taxonomy, Customer Reviews, Comments.
25
+ * eCommerce Products - WooCommerce, MarketPress, WP e-Commerce.
26
  * Custom fields and SEO fields imported along with these modules can be exported.
27
+ = Highlighted Feature =
28
+ * Imports inline images with shortcodes and images from an external URLs.
 
 
29
  * WordPress core custom fields can be dynamically registered on the flow of import.
30
  * Can be used in WordPress multisite.
31
  * Multi category and multi tag import.
32
  * Handles duplicate with title and content.
33
  * CSV with any delimiter in UTF-8 format can be imported.
34
  * Exports all the imported files of different modules with filters.
 
35
  = Note =
36
+ * The Users module is disabled in multisite.
 
37
  * Password protected image can't be imported in featured image.
38
  * All languages supported by WordPress can be imported in UTF-8 without BOM format.
39
 
40
+ [youtube https://www.youtube.com/watch?v=S1P8KebpLaU&list=PL2k3Ck1bFtbTtSX3hEFoBvK_Ka0pfYwp_]
 
 
 
 
41
 
42
+ = Ultimate CSV Importer PRO =
43
+ Ultimate CSV Importer PRO has all the features of WP Ultimate CSV Importer and it is extended with a lot of features that enables to [import](https://www.youtube.com/watch?v=S1P8KebpLaU&index=1&list=PL2k3Ck1bFtbTtSX3hEFoBvK_Ka0pfYwp_), schedule, [update](https://www.youtube.com/watch?v=VEumAqpJfSw&list=PL2k3Ck1bFtbTtSX3hEFoBvK_Ka0pfYwp_&index=2) and [export](https://www.youtube.com/watch?v=0YA0au4cXW0) both CSV and XML files. The import details over a year is mentioned in dashboard chart and the site updates can be tracked in a fraction of a second. Any changes like modifying existing content or appending new content can be done with the update. The update or import can be performed periodically with scheduler. The update or schedule is done with the templates which is created with mapped fields in the mapping section of the import. The export option enables to export the imported modules as CSV based on the filters.
44
+ = Supported Modules To Import and Export =
45
  * Core Module - Post, Page, Custom Post, Category, Tags, Users, Customer Reviews.
46
+ * eCommerce Products – WooCommerce, MarketPress, eShop, WP e-Commerce.
47
  * SEO field - All in One SEO and Yoast SEO.
48
+ * Custom fields – ACF, Types, Pods, CCTM.
49
+ * Custom Post – Types, Pods, CPT UI, CCTM.
 
50
  = Highlighted Feature of PRO =
51
+ * [Import inline image with shortcode and featured images with shortcode or external URL.](https://www.youtube.com/watch?v=VvcVLERTEHo)
52
+ * The image zip can be uploaded even after the completion of the import flow to populate the shortcode image.
53
+ * Supports WooCommerce product import along with 5 WooCommerce add-on.
54
+ * Imports MarketPress PRO add-on to import products.
55
+ * Registers Custom Fields of [ACF](https://www.youtube.com/watch?v=6tdiOjw4EDk&list=PL2k3Ck1bFtbTtSX3hEFoBvK_Ka0pfYwp_&index=4), Types, [Pods](https://www.youtube.com/watch?v=ziDeb0iXXXA&list=PL2k3Ck1bFtbTtSX3hEFoBvK_Ka0pfYwp_&index=5) and WordPress fields in the flow of import.])
56
  * Supports Custom Posts created with CPT UI, CCTM, Types and Pods
57
+ * Specific record import. (i.e) Selective records in a CSV/XML can be imported or scheduled.
58
+ * [Imported modules can be managed in the File manager and the logs are maintained in the Log manager.](https://www.youtube.com/watch?v=iBqWrq7M6g0)
 
 
 
59
 
60
  = Helpful Links =
61
+ [Documentation](https://www.wpultimatecsvimporter.com/documentation/all-import/wordpress-ultimate-csv-importer/?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
62
 
63
+ Try the demo of our [PRO plugin](http://demo.smackcoders.com/wordpressdemofour/wp-admin/admin.php?page=wp-ultimate-csv-importer-pro%2Findex.php&__module=dashboard)
64
+ and [Free plugin](
65
+ http://demo.smackcoders.com/wordpressdemotwo/wp-admin/admin.php?page=wp-ultimate-csv-importer%2Findex.php&__module=dashboard
66
+ ). You can also read our [blog](
67
+ https://www.smackcoders.com/blog/import-marketpress-pro-event-manager-and-more.html
68
+ ) to know more about the new features of PRO plugin.
69
 
70
+ Compare Free Vs Pro [Features](https://www.wpultimatecsvimporter.com/wp-ultimate-csv-importer-plugin?utm_source=WpOrg&utm_medium=Readme&utm_campaign=ListingTraffic)
71
 
72
 
73
+ [Troubleshooting tips](https://wordpress.org/support/topic/tips-to-trouble-shoot-wp-ultimate-csv-importer-issues-1)
 
 
74
 
75
  == Installation ==
 
76
  1. Extract the wp-ultimate-csv-importer.zip in wordpress/wp-content/plugins using FTP or with plugin install in wp-admin.
77
+ 2. Activate the plugin in WordPress plugin list.
 
 
78
 
79
  == Screenshots ==
 
80
  1. Dashboard view of the importer
81
  2. Upload section view of CSV/XML.
82
  3. Mapping view of the uploaded CSV/XML fields with WordPress fields
84
  5. Detailed real time log.
85
  6. Settings with php.ini details.
86
  7. Export module with filters.
 
87
  == Frequently Asked Questions ==
 
88
  = Common Issues =
 
89
  How to solve auto_prepend_file and auto_append_file error?
90
  Check your phpinfo.php. Ensure that auto_prepend_file and auto_append_file options are disabled.
 
91
  If not you can disable it in php.ini settings file yourself. You can also do it by a .htaccess file
92
+ Create an .htaccess file in the root and set the following values.
 
93
  php_value auto_prepend_file none
94
  php_value auto_append_file none
 
95
  This will solve your issue or get support from hosting if you didn’t have sufficient permission.
 
96
  == Changelog ==
97
+ = 3.9.1 =
98
+ * Added: Post parent now supports for post title and post name.
99
+ * Fixed: jQuery conflicts.
100
  = 3.9 =
101
  * Added: PHP 7 compatibility.
102
  * Added: Support for all post date formats.
103
  * Fixed: Featured image and Inline image naming issues.
104
  * Fixed: Auto mapping issues in Custom Fields and SEO Fields.
 
105
  = 3.8.8 =
106
  * Added: Localize script for multi language support.
107
  * Added: WordPress 4.4.1 compatibility.
112
  * Fixed: User mail notification on new user imports.
113
  * Fixed: Category & Tag import issue in eShop module.
114
  * Removed: Mod security check.
 
115
  = 3.8.6 =
116
  * Added: Compatibility for WordPress 4.4.
117
  * Modified: Support page UI.
118
  * Fixed: Post date issue.
119
  * Fixed: Custom Post Type listing issue.
 
120
  = 3.8.5 =
121
+ * Added: Restriction to view the image without password for protected status content.
122
  * Modified: Settings page UI.
123
  * Fixed: post_status mandatory validation issue.
124
  * Fixed: SEO Fields mapping issue.
125
  * Fixed: Known issues in export.
126
  * Fixed: Mandatory validation issues.
127
  * Fixed: Console TypeError issue.
 
 
128
  = 3.8.4 =
129
  * Modified: Changed the Dashboard view.
 
130
  = 3.8.3 =
131
  * Added : Text domain for language translation system.
132
  * Fixed : Detect duplicate issue.
 
133
  = 3.8.2 =
134
  * Added : Compatibility for WordPress 4.3.1.
135
  * Added : Grouped core custom field in mapping section.
136
  * Added : Image import with spaces in image name.
137
  * Fixed : Module entry count in dashboard issue.
138
  * Fixed : Duplication of image in media gallery.
 
139
  = 3.8.1 =
140
  * Added : Compatibility for WordPress 4.2.3 and 4.2.4.
141
  * Added : Export by specific date and author option in comments.
142
  * Fixed : warnings triggered in console.
143
  * Fixed : XSS vulnerability.
144
+ * Removed : ../../../../../../wp-load.php and replaced with WordPress Ajax call.
145
  * Removed : Direct usage of wp-content.
 
 
146
  = 3.8 =
147
+ * Added : Multi language support (fr_FR,es_ES,nl_NL).
148
  * Added : Inline image handling with shortcode along with image attributes.
149
+ * Added: Any delimiter support for CSV export.
150
  * Fixed: Warnings and bugs Fixes
 
 
151
  = 3.7.4 =
152
  * Added : WordPress 4.2.2 compatibility.
153
  * Fixed : Allow Editor/Author to import.(Multisite also).
 
154
  = 3.7.3 =
155
  * Fixed: Vulnerability security issue.
 
156
  = 3.7.2 =
157
  * Added: WordPress 4.2 and 4.2.1 compatibility.
158
  * Fixed: Blank page issue conflicts.
 
159
  = 3.7.1 =
160
  * Added: Security fix for curl.
161
  * Added: Security fix for session status.
 
162
  = 3.7 =
163
  * Fixed: Featured image hot link issue.
 
164
  = 3.6.78 =
165
  * Added: Hot security fix in readfile.php.
 
166
  = 3.6.77 =
167
  * Added: WordPress 4.1.1 compatibility.
168
  * Improved: Inline image import feature.
169
  * Added recursive method to assign the image.
170
  * Fixed: Featured image naming issue. [Solved](https://wordpress.org/support/topic/problem-in-import-with-the-image-name)
171
  * Removed: Warnings.
 
172
  = 3.6.76 =
173
  * Improved: Post Format.
174
  * Fixed: Export eShop content issue.
175
  * Fixed: Import with image name issue.
176
  * Fixed: Groups plugin conflict.
 
177
  = 3.6.75 =
178
  * Added: Terminate & Continue option in import.
179
  * Improved: Log section.
180
  * Fixed: Web View & Admin View issue.
181
  * Fixed: Security issue in export module.
 
182
  = 3.6.74 =
183
  * Fixed: Security issue.
 
184
  = 3.6.73 =
185
  * Added: WordPress 4.0 compatibility.
186
  * Added: https format support for all WP instances.
190
  * Fixed: Multisite compatibility issue.
191
  * Fixed: All console warnings.
192
  * Removed: Post Content field mandatory option.
 
 
193
  = 3.6.72 =
194
  * Added: Debug mode enable/disable options.
195
  * Modified: Menu order changes.
 
196
  = 3.6.71 =
197
  * Fixed: Minor bugs.
 
198
  = 3.6.7 =
199
  * Added: Export features for all missing modules.
200
  * Fixed: All console warnings and reported logs.
 
201
  = 3.6.6 =
202
  * Fixed: Dashboard chart issue in multi site.
203
  * Modified: UI to improve usability.
204
  * Fixed: Groups plugin conflicts.
 
205
  = 3.6.5 =
206
  * Added : Inline image support with advanced media handling.
207
  * Added: PDO check.
 
208
  = 3.6.4 =
209
  * Added: WordPress 4.0 compatibility.
210
  * Added: Advanced export features with filter options.
211
  * Improved: Advanced log section.
212
  * Fixed: jQuery issues.
 
213
  = 3.6.3 =
214
  * Added: eShop import support.
215
  * Added: WordPress 3.9.2 compatibility.
216
  * Fixed: Conflicts with other plugins.
 
217
  = 3.6.2 =
218
  * Fixed: Hot security issue.
 
219
  = 3.6.1 =
220
  * Fixed: Multi-site support issue.
221
  * Fixed: Duplicate import issue.
222
  * Fixed: Security issue.
 
223
  = 3.6 =
224
  * Added: Interactive graphs and charts in plugin dashboard.
225
  * Added: Admin dashboard widgets.
227
  * Added: Auto delimiter handling.
228
  * Added: Auto mapping feature.
229
  * Added: Allow authors to access import features.
 
230
  = 3.5.5 =
231
  * Added: post_format attribute support.
232
  * Added: page_template attribute.
233
  * Added: update_post_meta for duplicate meta issue
234
  * Fixed: TypeError issue in jQuery.
 
235
  = 3.5.4 =
236
+ * Added: All in One SEO Pack import support.
237
  * Added: WordPress 3.9.1 compatibility.
 
238
  = 3.5.3 =
239
  * Added: Compatibility for WordPress 3.9.
240
  * Added: Export feature for Posts, Page, Custom Post.
241
  * Fixed: Reported bugs
242
  * Removed: all warnings.
 
 
243
  = 3.5.2 =
244
  * Import posts with author names as numerical apart from User ID
245
  * Added: menu_order attribute import
246
  * Added: Auto image rename option
247
  * Option to cancel an partial import at middle
248
  * Improved image handling even special characters in URL
249
+ * Import can handle image URLs without any extensions
250
  * User reported bugs fixed
 
251
  = 3.5.1 =
252
  * User reported issue fixes
253
  * Activation and other plugin conflict issue solved like Jet pack
254
  * Admin UI freezing issues - screen option, Help links issues fixed.
255
  * WYSIWYG editor UI issue fixed.
 
256
  = 3.5.0 =
257
  * Combined major release version of 3.5 and 3.4
258
  * Improved MVC structure.
262
  * Added: Detailed log feature added.
263
  * Added: Support and Useful links added.
264
  * Added: Support made easy now from plugin.
 
265
  = 3.3.1 =
266
  * Added: Multisite compatibility except User import.
267
  * Added: Comments, Users modules mandatory fields validation added.
268
  * Improved: Removed unwanted warnings.
 
269
  = 3.3.0 =
270
  * Added: WordPress 3.8 compatibility.
271
  * Added: Bulk users with role import feature.
272
  * Added: Comments import feature with relevant post ids.
 
273
  = 3.2.3 =
274
  * Added: WordPress 3.7.1 compatibility added.
275
  * Added: Different media path support added.
277
  * Improved: Updated plugin directory path.
278
  * Improved: Removed unwanted warnings.
279
  * Improved: Performance check.
 
280
  = 3.2.2 =
281
  * Added: WordPress 3.6.1 compatibility added.
282
  * Added: Mapping UI improved with on select dynamic update feature
283
  * Added: Help content added
284
  * Fixed: Post slug issue fixed and tested for 3.6 and 3.6.1
 
285
  = 3.2.1 =
286
  * Improved: Performance improvements on SQL and CSV parsing
287
  * Fixed: Plugin deactivation issue fixed and updated the code.
288
  * Fixed: Links in the cells makes problems with the "quote"
289
  * Fixed: Loading content from more than one column
290
  * Fixed: Custom Post type issues fixed
 
291
  = 3.2.0 =
292
  * Improved: User interface improvements
293
  * Improved:WordPress 3.6 compatibility added, Much Improved UI.
294
  * Fixed: Featured image issues fixed for WordPress-3.6.
 
295
  = 3.1.0 =
296
  * Improved: Much Improved Featured Image feature
297
+ * Fixed: Image URL for featured image issues fixed
298
  * Fixed: PHP 5.4 upgrade fix
 
299
  = 3.0.0 =
300
+ * Added: Category in numerics are restricted and skipped to Uncategorized
301
  * Added: Protected status password inclusion as {password}.
302
  * Added: Post authors can be User ID or name
303
  * Improved: Much improved work flow
305
  * Improved: Date format handling improved
306
  * Improved: Any Date format is supported now
307
  * Improved: Future scheduling and status improved
308
+ * Improved: Can apply post status for individual post via CSV itself
309
  * Improved: Featured image handling improved and fixed. More improvement are scheduled.
310
  * Improved: Duplicate check options improved for both title and content option.
311
  * Improved: Post author issue fixed and improved
315
  * Fixed: Overall Status option improved and issue fixed
316
  * Fixed: Password field fixed for Protected
317
  * Fixed: Status as in CSV option improved and fixed
 
318
  = 2.7.0 =
319
  * Added: Added more post status options
320
  * Added: Publish, Sticky, Private, Draft and Pending Status for whole import
331
  * Improved: Field tags are formatted to support auto mapping option (next milestone)
332
  * Improved: Listed custom fields with prefix as CF: Name for easy identification.
333
  * Fixed: Date format conflict at import fixed.
 
 
334
  = 2.6.0 =
335
  * Fixed: Major Bug fixed
336
  * Fixed: Added UTF-8 support.
337
+ * Fixed: Fixed HTML tag conflicts.
 
338
  = 2.5.0 =
339
  * Major issues fixed and updated to WordPress-3.5.1 compatibility.
 
340
  = 2.0.1 =
341
  * Update to WordPress-3.5 compatibility.
 
342
  = 2.0.0 =
343
  * WPDEBUG errors fixed. CSV import folder changed to WP native uploads folder.
 
344
  = 1.1.1 =
345
  * Renamed the mapping field attachment as featured_image and category as post_category.
 
346
  = 1.1.0 =
347
  * Added featured image import feature along with post/page/custom post.
 
348
  = 1.0.2 =
349
  * Bug fixed to recognize the trimmed trailing space in the CSV file
350
  * Added validation for the duplicate field mapping.
 
351
  = 1.0.1 =
352
  * Added features to import multiple tags and categories with different delimiters.
 
353
  = 1.0.0 =
354
  * Initial release version. Tested and found works well without any issues.
 
 
 
355
  == Upgrade Notice ==
356
+ = 3.9.1 =
357
+ * Upgrade now for import post parent with post name and post title.
358
  = 3.9 =
359
  * Upgrade now for PHP 7 and WordPress 4.4.2 compatibility.
 
360
  = 3.8.8 =
361
  * Upgrade now for security fix and WordPress 4.1.1 compatibility with minor bug fixes.
 
362
  = 3.8.6 =
363
  * Upgrade now for import the default CPTs.
 
364
  = 3.8.5 =
365
  * Upgrade now for known bug fixes.
 
366
  = 3.8.4 =
367
  * Upgrade now for new dashboard view.
 
368
  = 3.8.3 =
369
  * Upgrade now for improvements in multi language translation.
 
370
  = 3.8.2 =
371
  * Upgrade now for more improvements.
 
372
  = 3.8.1 =
373
  * Upgrade now for ABSPATH used in all files and also fixed all the warnings,bugs.
 
374
  = 3.8 =
375
  * Upgrade now for Multi language support and bug fixes
 
376
  = 3.7.4 =
377
  * Upgrade now for allow author/editor to import fix.
 
378
  = 3.7.3 =
379
  * Upgrade now for Vulnerability fix.
 
380
  = 3.7.2 =
381
+ * Important Upgrade for WordPress 4.2 and above
 
382
  = 3.7.1 =
383
  * Upgrade now for security fix.
 
384
  = 3.7 =
385
  * Upgrade now for minor bug fixes.
 
386
  = 3.6.78 =
387
  * Upgrade now for security fix.
 
388
  = 3.6.77 =
389
  * Upgrade now for WordPress 4.1.1 compatibility and minor bug fixes.
 
390
  = 3.6.76 =
391
  * Upgrade now for more bug fixes.
 
392
  = 3.6.75 =
393
  * Upgrade now for improved experience.
 
394
  = 3.6.74 =
395
  * Upgrade now for security fix.
 
396
  = 3.6.73 =
397
  * Upgrade now for WordPress 4.0 compatibility and minor bug fixes.
 
398
  = 3.6.72 =
399
  * Upgrade to enable/disable debug mode in settings.
 
400
  = 3.6.71 =
401
  * Upgrade now for complete export features as in Pro with bug fix.
 
402
  = 3.6.7 =
403
  * Upgrade now for complete export features as in Pro.
 
404
  = 3.6.6 =
405
  * Upgrade now for improved experience.
 
406
  = 3.6.5 =
407
  * Upgrade Now for advanced media handling for post in line images
 
408
  = 3.6.4 =
409
  * Upgrade Now for filtered export and improved log features.
 
410
  = 3.6.3 =
411
+ * Upgrade now for eShop product import feature.
 
412
  = 3.6.2 =
413
  * Important Security Update
 
414
  = 3.6.1 =
415
  * Important issue fixes update
 
416
  = 3.6 =
417
  * Must upgrade with major values added features
 
418
  = 3.5.5 =
419
  * Upgrade for minor bug fix, conflicts and new attribute support.
 
420
  = 3.5.4 =
421
+ * Upgrade now for All in SEO Pack import support.
 
422
  = 3.5.3 =
423
  * Upgrade to add export feature and fix bug.
 
424
  = 3.5.2 =
425
  * Upgrade for bug free version and improved image handling
 
426
  = 3.5.1 =
427
  * Must upgrade now for 3.5 bug fixes
 
428
  = 3.5.0 =
429
  * Upgrade now for major release 3.5. Note - Old version files need to be deleted.
 
430
  = 3.3.1 =
431
  * Upgrade now for multisite compatibility.
 
432
  = 3.3.0 =
433
  * Upgrade now for WP 3.8 compatibility and added bulk user,comments feature.
 
434
  = 3.2.3 =
435
  * WordPress 3.7.1 compatibility and minor bug fixes
 
436
  = 3.2.2 =
437
  * WordPress 3.6.1 compatibility, bug fix and UI improvements
 
438
  = 3.2.1 =
439
  * Performance improvements on SQL and CSV parsing
 
440
  = 3.2.0 =
441
  * Compatibility for 3.6 and improved featured image.
 
442
  = 3.1.0 =
443
  * Improved Featured image and URL handling
 
444
  = 3.0.0 =
445
  * Major performance improvements and issue fixes.
 
446
  = 2.7.0 =
447
  * Major improvements and feature changes.
 
448
  = 2.6.0 =
449
  * Bug fixed and should upgrade.
 
450
  = 2.5.0 =
451
  * Duplicate detection added.
452
  * Added more information in success message.
453
  * Import memory issues solved.
 
454
  = 2.0.1 =
455
  * WordPress-3.5 compatibility.
 
456
  = 2.0.0 =
457
  * Major Bug fix and need to be upgraded.
458
  * WPDEBUG error fixed.
459
  * CSV import folder changed to WP native uploads folder.
 
460
  = 1.1.1 =
461
  * Minor correction and fix applied.
 
462
  = 1.1.0 =
463
  * Major feature added.
 
464
  = 1.0.2 =
465
  * Bug fixes along with new features. Need to be upgraded immediately.
 
466
  = 1.0.1 =
467
  * Added features to import multiple tags and categories with different delimiters.
 
468
  = 1.0.0 =
469
  * Initial release of plugin.
470
+
471
+
images/icon.png CHANGED
File without changes
images/noimage.png ADDED
Binary file
includes/WPImporter_includes_helper.php CHANGED
@@ -178,6 +178,7 @@ class WPImporter_includes_helper {
178
  if (!isset($_REQUEST['__module'])) {
179
  if (!isset($_REQUEST['__module'])) {
180
  wp_redirect(get_admin_url() . 'admin.php?page=' . WP_CONST_ULTIMATE_CSV_IMP_SLUG . '/index.php&__module=dashboard');
 
181
  }
182
  }
183
  }
@@ -820,6 +821,27 @@ class WPImporter_includes_helper {
820
  $postid = wp_insert_post($data_array);
821
  $post_id = $inlineImagesObj->importwithInlineImages($postid, $currentLimit, $data_array, $this, $importinlineimageoption, $extractedimagelocation, $sample_inlineimage_url);
822
  } else {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
823
  $post_id = wp_insert_post($data_array);
824
  if($post_id != false) {
825
  $this->detailedLog[$currentLimit]['post_id'] = "<b>" . __('Created Post_ID', 'wp-ultimate-csv-importer') . " - </b>" . $post_id . " - success";
@@ -2077,6 +2099,7 @@ class WPImpCSVParserLib {
2077
  if ($value !== null && $value != '') {
2078
  $delimiter = preg_quote($this->delimiter, '/');
2079
  $enclosure = preg_quote($this->enclosure, '/');
 
2080
  if (preg_match("/" . $delimiter . "|" . $enclosure . "|\n|\r/i", $value) || ($value{0} == ' ' || substr($value, -1) == ' ')) {
2081
  $value = str_replace($this->enclosure, $this->enclosure . $this->enclosure, $value);
2082
  $value = $this->enclosure . $value . $this->enclosure;
178
  if (!isset($_REQUEST['__module'])) {
179
  if (!isset($_REQUEST['__module'])) {
180
  wp_redirect(get_admin_url() . 'admin.php?page=' . WP_CONST_ULTIMATE_CSV_IMP_SLUG . '/index.php&__module=dashboard');
181
+ exit();
182
  }
183
  }
184
  }
821
  $postid = wp_insert_post($data_array);
822
  $post_id = $inlineImagesObj->importwithInlineImages($postid, $currentLimit, $data_array, $this, $importinlineimageoption, $extractedimagelocation, $sample_inlineimage_url);
823
  } else {
824
+ /* Check post parent is exist or not */
825
+ if(isset($data_array['post_parent']) && isset($data_array['post_type']) && $data_array['post_type'] == 'page'){
826
+ global $wpdb;
827
+ $postparent = $data_array['post_parent'];
828
+ if(is_numeric($postparent)){
829
+ $get_data = $wpdb->get_results($wpdb->prepare("select post_title from $wpdb->posts where id = %d",$postparent));
830
+ if(empty($get_data)){
831
+ $data_array['post_parent'] = '';
832
+ }
833
+ }else{
834
+
835
+ $post_tit_id = $wpdb->get_results($wpdb->prepare("select ID from $wpdb->posts where post_title = %s and post_type = %s order by ID DESC",$postparent,$data_array['post_type']));
836
+
837
+ $post_name_id = $wpdb->get_results($wpdb->prepare("select ID from $wpdb->posts where post_name = %s and post_type = %s order by ID DESC",$postparent,$data_array['post_type']));
838
+ if($post_tit_id){
839
+ $data_array['post_parent'] = $post_tit_id[0]->ID;
840
+ }elseif($post_name_id){
841
+ $data_array['post_parent'] = $post_name_id[0]->ID;
842
+ }
843
+ }
844
+ }
845
  $post_id = wp_insert_post($data_array);
846
  if($post_id != false) {
847
  $this->detailedLog[$currentLimit]['post_id'] = "<b>" . __('Created Post_ID', 'wp-ultimate-csv-importer') . " - </b>" . $post_id . " - success";
2099
  if ($value !== null && $value != '') {
2100
  $delimiter = preg_quote($this->delimiter, '/');
2101
  $enclosure = preg_quote($this->enclosure, '/');
2102
+ if($value[0]=='=') $value="'".$value;
2103
  if (preg_match("/" . $delimiter . "|" . $enclosure . "|\n|\r/i", $value) || ($value{0} == ' ' || substr($value, -1) == ' ')) {
2104
  $value = str_replace($this->enclosure, $this->enclosure . $this->enclosure, $value);
2105
  $value = $this->enclosure . $value . $this->enclosure;
index.php CHANGED
@@ -2,7 +2,7 @@
2
  /******************************
3
  * Plugin Name: WP Ultimate CSV Importer
4
  * Description: A plugin that helps to import the data's from a CSV file.
5
- * Version: 3.9
6
  * Author: smackcoders.com
7
  * Text Domain: wp-ultimate-csv-importer
8
  * Domain Path: /languages
@@ -81,7 +81,7 @@ define('WP_CONST_ULTIMATE_CSV_IMP_URL', 'http://www.smackcoders.com/wp-ultimate-
81
  define('WP_CONST_ULTIMATE_CSV_IMP_NAME', 'WP Ultimate CSV Importer');
82
  define('WP_CONST_ULTIMATE_CSV_IMP_SLUG', 'wp-ultimate-csv-importer');
83
  define('WP_CONST_ULTIMATE_CSV_IMP_SETTINGS', 'WP Ultimate CSV Importer');
84
- define('WP_CONST_ULTIMATE_CSV_IMP_VERSION', '3.9');
85
  define('WP_CONST_ULTIMATE_CSV_IMP_DIR', WP_PLUGIN_URL . '/' . WP_CONST_ULTIMATE_CSV_IMP_SLUG . '/');
86
  define('WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY', plugin_dir_path(__FILE__));
87
  define('WP_CSVIMP_PLUGIN_BASE', WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY);
@@ -139,10 +139,11 @@ function action_csv_imp_admin_init() {
139
  if (isset($_REQUEST['page']) && (sanitize_text_field($_REQUEST['page']) == 'wp-ultimate-csv-importer/index.php' || sanitize_text_field($_REQUEST['page']) == 'page')) {
140
 
141
  // Code for use the global wordpress functons in javascript
142
- wp_enqueue_script('jquery-ui-datepicker');
143
- wp_enqueue_style('jquery-style', plugins_url('css/jquery-ui.css', __FILE__));
144
  wp_register_script('ultimate-importer-js', plugins_url('js/ultimate-importer-free.js', __FILE__));
145
  wp_enqueue_script('ultimate-importer-js');
 
 
146
  wp_enqueue_style('style', plugins_url('css/style.css', __FILE__));
147
  wp_enqueue_style('bootstrap-css', plugins_url('css/bootstrap.css', __FILE__));
148
  wp_enqueue_style('ultimate-importer-css', plugins_url('css/main.css', __FILE__));
2
  /******************************
3
  * Plugin Name: WP Ultimate CSV Importer
4
  * Description: A plugin that helps to import the data's from a CSV file.
5
+ * Version: 3.9.1
6
  * Author: smackcoders.com
7
  * Text Domain: wp-ultimate-csv-importer
8
  * Domain Path: /languages
81
  define('WP_CONST_ULTIMATE_CSV_IMP_NAME', 'WP Ultimate CSV Importer');
82
  define('WP_CONST_ULTIMATE_CSV_IMP_SLUG', 'wp-ultimate-csv-importer');
83
  define('WP_CONST_ULTIMATE_CSV_IMP_SETTINGS', 'WP Ultimate CSV Importer');
84
+ define('WP_CONST_ULTIMATE_CSV_IMP_VERSION', '3.9.1');
85
  define('WP_CONST_ULTIMATE_CSV_IMP_DIR', WP_PLUGIN_URL . '/' . WP_CONST_ULTIMATE_CSV_IMP_SLUG . '/');
86
  define('WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY', plugin_dir_path(__FILE__));
87
  define('WP_CSVIMP_PLUGIN_BASE', WP_CONST_ULTIMATE_CSV_IMP_DIRECTORY);
139
  if (isset($_REQUEST['page']) && (sanitize_text_field($_REQUEST['page']) == 'wp-ultimate-csv-importer/index.php' || sanitize_text_field($_REQUEST['page']) == 'page')) {
140
 
141
  // Code for use the global wordpress functons in javascript
142
+ wp_enqueue_script('jquery');
 
143
  wp_register_script('ultimate-importer-js', plugins_url('js/ultimate-importer-free.js', __FILE__));
144
  wp_enqueue_script('ultimate-importer-js');
145
+ wp_enqueue_script('jquery-ui-datepicker');
146
+ wp_enqueue_style('jquery-style', plugins_url('css/jquery-ui.css', __FILE__));
147
  wp_enqueue_style('style', plugins_url('css/style.css', __FILE__));
148
  wp_enqueue_style('bootstrap-css', plugins_url('css/bootstrap.css', __FILE__));
149
  wp_enqueue_style('ultimate-importer-css', plugins_url('css/main.css', __FILE__));
js/ultimate-importer-free.js CHANGED
@@ -1,3 +1,4 @@
 
1
  jQuery(document).ready(function () {
2
  jQuery('.dropdown-toggle').dropdown('toggle');
3
  var checkmodule = document.getElementById('checkmodule').value;
1
+ var jQuery = jQuery.noConflict();
2
  jQuery(document).ready(function () {
3
  jQuery('.dropdown-toggle').dropdown('toggle');
4
  var checkmodule = document.getElementById('checkmodule').value;
lib/jquery-plugins/UploadHandler.php CHANGED
@@ -104,17 +104,11 @@ class UploadHandler {
104
  case 'HEAD':
105
  $this->head();
106
  break;
107
- case 'GET':
108
- $this->get();
109
- break;
110
  case 'PATCH':
111
  case 'PUT':
112
  case 'POST':
113
  $this->post();
114
  break;
115
- case 'DELETE':
116
- $this->delete();
117
- break;
118
  default:
119
  $this->header('HTTP/1.1 405 Method Not Allowed');
120
  }
@@ -152,7 +146,7 @@ class UploadHandler {
152
  $version_path = $version . '/';
153
  }
154
 
155
- $uploadpath = $_REQUEST['uploadPath'];
156
  $file_name = $HelperObj->convert_string2hash_key($file_name); // Code added by Fredrick Marks
157
 
158
  return $uploadpath . '/' . $uploadDir . '/' . $this->get_user_path() . $version_path . $file_name;
@@ -387,7 +381,7 @@ class UploadHandler {
387
  $version_zero = explode("(", $rem_csv[0]);
388
  $file_name_arr = array();
389
  $file_name_arr = explode('.csv', $name);
390
- $current_action = $_REQUEST['curr_action'];
391
  if (!is_array($version_zero)) {
392
  return $file_name_arr[0] . '-' . $current_action . ' .csv';
393
  } // Code modified by Fredrick Marks
@@ -943,7 +937,7 @@ class UploadHandler {
943
  protected function generate_response($content, $print_response = true) {
944
  if ($print_response) {
945
  $json = json_encode($content);
946
- $redirect = isset($_REQUEST['redirect']) ? stripslashes($_REQUEST['redirect']) : null;
947
  if ($redirect) {
948
  $this->header('Location: ' . sprintf($redirect, rawurlencode($json)));
949
  return;
@@ -960,29 +954,10 @@ class UploadHandler {
960
  return $content;
961
  }
962
 
963
- protected function get_version_param() {
964
- return isset($_GET['version']) ? basename(stripslashes($_GET['version'])) : null;
965
- }
966
-
967
  protected function get_singular_param_name() {
968
  return substr($this->options['param_name'], 0, -1);
969
  }
970
 
971
- protected function get_file_name_param() {
972
- $name = $this->get_singular_param_name();
973
- return isset($_GET[$name]) ? basename(stripslashes($_GET[$name])) : null;
974
- }
975
-
976
- protected function get_file_names_params() {
977
- $params = isset($_GET[$this->options['param_name']]) ? $_GET[$this->options['param_name']] : array();
978
- if(!empty($params)){
979
- foreach ($params as $key => $value) {
980
- $params[$key] = basename(stripslashes($value));
981
- }
982
- }
983
- return $params;
984
- }
985
-
986
  protected function get_file_type($file_path) {
987
  switch (strtolower(pathinfo($file_path, PATHINFO_EXTENSION))) {
988
  case 'jpeg':
@@ -997,41 +972,6 @@ class UploadHandler {
997
  }
998
  }
999
 
1000
- protected function download() {
1001
- switch ($this->options['download_via_php']) {
1002
- case 1:
1003
- $redirect_header = null;
1004
- break;
1005
- case 2:
1006
- $redirect_header = 'X-Sendfile';
1007
- break;
1008
- case 3:
1009
- $redirect_header = 'X-Accel-Redirect';
1010
- break;
1011
- default:
1012
- return $this->header('HTTP/1.1 403 Forbidden');
1013
- }
1014
- $file_name = $this->get_file_name_param();
1015
- if (!$this->is_valid_file_object($file_name)) {
1016
- return $this->header('HTTP/1.1 404 Not Found');
1017
- }
1018
- if ($redirect_header) {
1019
- return $this->header($redirect_header . ': ' . $this->get_download_url($file_name, $this->get_version_param(), true));
1020
- }
1021
- $file_path = $this->get_upload_path($file_name, $this->get_version_param());
1022
- // Prevent browsers from MIME-sniffing the content-type:
1023
- $this->header('X-Content-Type-Options: nosniff');
1024
- if (!preg_match($this->options['inline_file_types'], $file_name)) {
1025
- $this->header('Content-Type: application/octet-stream');
1026
- $this->header('Content-Disposition: attachment; filename="' . $file_name . '"');
1027
- } else {
1028
- $this->header('Content-Type: ' . $this->get_file_type($file_path));
1029
- $this->header('Content-Disposition: inline; filename="' . $file_name . '"');
1030
- }
1031
- $this->header('Content-Length: ' . $this->get_file_size($file_path));
1032
- $this->header('Last-Modified: ' . gmdate('D, d M Y H:i:s T', filemtime($file_path)));
1033
- $this->readfile($file_path);
1034
- }
1035
 
1036
  protected function send_content_type_header() {
1037
  $this->header('Vary: Accept');
@@ -1061,19 +1001,6 @@ class UploadHandler {
1061
  $this->send_content_type_header();
1062
  }
1063
 
1064
- public function get($print_response = true) {
1065
- if ($print_response && isset($_GET['download'])) {
1066
- return $this->download();
1067
- }
1068
- $file_name = $this->get_file_name_param();
1069
- if ($file_name) {
1070
- $response = array($this->get_singular_param_name() => $this->get_file_object($file_name));
1071
- } else {
1072
- $response = array($this->options['param_name'] => $this->get_file_objects());
1073
- }
1074
- return $this->generate_response($response, $print_response);
1075
- }
1076
-
1077
  public function checkFileExists($fileName) {
1078
  $file_contents = array();
1079
  $file_contents = $_REQUEST;
@@ -1087,11 +1014,6 @@ class UploadHandler {
1087
  }
1088
 
1089
  public function post($print_response = true) {
1090
- if (isset($_REQUEST['_method']) && $_REQUEST['_method'] === 'DELETE') {
1091
- return $this->delete($print_response);
1092
- }
1093
-
1094
-
1095
  $upload = isset($_FILES[$this->options['param_name']]) ? $_FILES[$this->options['param_name']] : null;
1096
  $file_name = $this->get_server_var('HTTP_CONTENT_DISPOSITION') ? rawurldecode(preg_replace('/(^[^"]+")|("$)/', '', $this->get_server_var('HTTP_CONTENT_DISPOSITION'))) : null;
1097
  $content_range = $this->get_server_var('HTTP_CONTENT_RANGE') ? preg_split('/[^0-9]+/', $this->get_server_var('HTTP_CONTENT_RANGE')) : null;
@@ -1109,31 +1031,5 @@ class UploadHandler {
1109
  return $this->generate_response(array($this->options['param_name'] => $files), $print_response);
1110
  }
1111
 
1112
- public function delete($print_response = true) {
1113
- $file_names = $this->get_file_names_params();
1114
- if (empty($file_names)) {
1115
- $file_names = array($this->get_file_name_param());
1116
- }
1117
- $response = array();
1118
- if(!empty($file_names)){
1119
- foreach ($file_names as $file_name) {
1120
- $file_path = $this->get_upload_path($file_name);
1121
- $success = is_file($file_path) && $file_name[0] !== '.' && unlink($file_path);
1122
- if ($success) {
1123
- foreach ($this->options['image_versions'] as $version => $options) {
1124
- if (!empty($version)) {
1125
- $file = $this->get_upload_path($file_name, $version);
1126
- if (is_file($file)) {
1127
- unlink($file);
1128
- }
1129
- }
1130
- }
1131
- }
1132
- $response[$file_name] = $success;
1133
- }
1134
- }
1135
- return $this->generate_response($response, $print_response);
1136
- }
1137
-
1138
  }
1139
 
104
  case 'HEAD':
105
  $this->head();
106
  break;
 
 
 
107
  case 'PATCH':
108
  case 'PUT':
109
  case 'POST':
110
  $this->post();
111
  break;
 
 
 
112
  default:
113
  $this->header('HTTP/1.1 405 Method Not Allowed');
114
  }
146
  $version_path = $version . '/';
147
  }
148
 
149
+ $uploadpath = sanitize_text_field($_REQUEST['uploadPath']);
150
  $file_name = $HelperObj->convert_string2hash_key($file_name); // Code added by Fredrick Marks
151
 
152
  return $uploadpath . '/' . $uploadDir . '/' . $this->get_user_path() . $version_path . $file_name;
381
  $version_zero = explode("(", $rem_csv[0]);
382
  $file_name_arr = array();
383
  $file_name_arr = explode('.csv', $name);
384
+ $current_action = sanitize_text_field($_REQUEST['curr_action']);
385
  if (!is_array($version_zero)) {
386
  return $file_name_arr[0] . '-' . $current_action . ' .csv';
387
  } // Code modified by Fredrick Marks
937
  protected function generate_response($content, $print_response = true) {
938
  if ($print_response) {
939
  $json = json_encode($content);
940
+ $redirect = isset($_REQUEST['redirect']) ? sanitize_text_field($_REQUEST['redirect']) : null;
941
  if ($redirect) {
942
  $this->header('Location: ' . sprintf($redirect, rawurlencode($json)));
943
  return;
954
  return $content;
955
  }
956
 
 
 
 
 
957
  protected function get_singular_param_name() {
958
  return substr($this->options['param_name'], 0, -1);
959
  }
960
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
961
  protected function get_file_type($file_path) {
962
  switch (strtolower(pathinfo($file_path, PATHINFO_EXTENSION))) {
963
  case 'jpeg':
972
  }
973
  }
974
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
975
 
976
  protected function send_content_type_header() {
977
  $this->header('Vary: Accept');
1001
  $this->send_content_type_header();
1002
  }
1003
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1004
  public function checkFileExists($fileName) {
1005
  $file_contents = array();
1006
  $file_contents = $_REQUEST;
1014
  }
1015
 
1016
  public function post($print_response = true) {
 
 
 
 
 
1017
  $upload = isset($_FILES[$this->options['param_name']]) ? $_FILES[$this->options['param_name']] : null;
1018
  $file_name = $this->get_server_var('HTTP_CONTENT_DISPOSITION') ? rawurldecode(preg_replace('/(^[^"]+")|("$)/', '', $this->get_server_var('HTTP_CONTENT_DISPOSITION'))) : null;
1019
  $content_range = $this->get_server_var('HTTP_CONTENT_RANGE') ? preg_split('/[^0-9]+/', $this->get_server_var('HTTP_CONTENT_RANGE')) : null;
1031
  return $this->generate_response(array($this->options['param_name'] => $files), $print_response);
1032
  }
1033
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1034
  }
1035
 
lib/skinnymvc/controller/base/SkinnyBaseController.php CHANGED
@@ -29,13 +29,13 @@ class SkinnyBaseControllerWPCsvFree {
29
  // Get the Module and Action from the CGI parameters.
30
  //
31
  if (isset($_GET['__action']) && !empty($_GET['__action'])) {
32
- $action = $_GET['__action'];
33
  } else {
34
  $action = 'index';
35
  }
36
 
37
  if (isset($_GET['__module']) && !empty($_GET['__module'])) {
38
- $module = $_GET['__module'];
39
  } else {
40
  $module = 'dashboard';
41
  $action = 'index';
@@ -65,7 +65,7 @@ class SkinnyBaseControllerWPCsvFree {
65
  //
66
 
67
  // Slash after the module missing?
68
- $hasMissingSlash = '' == @$_GET['__action'] && '/' == substr($_SERVER['REQUEST_URI'], 0, 1) && 1 < strlen($_SERVER['REQUEST_URI']) && FALSE == strpos($_SERVER['REQUEST_URI'], '/', 1);
69
  if ($hasMissingSlash) {
70
 
71
  if ($this->allowModulesAsFiles) {
@@ -75,7 +75,7 @@ class SkinnyBaseControllerWPCsvFree {
75
  } else {
76
  if ($this->fixMisspellings) {
77
 
78
- if ('' != $this->module && '' == @$_GET['__action']) {
79
  $href = '/' . $this->module . '/';
80
  header('Location: ' . $href);
81
  exit();
@@ -91,7 +91,7 @@ class SkinnyBaseControllerWPCsvFree {
91
  }
92
 
93
  // Slash after the action missing?
94
- $hasMissingSlash = '' != @$_GET['__action'] && '/' == substr($_SERVER['REQUEST_URI'], 0, 1) && 1 < strlen($_SERVER['REQUEST_URI']) && FALSE !== strpos($_SERVER['REQUEST_URI'], '/', 1) && FALSE == strpos($_SERVER['REQUEST_URI'], '/', strpos($_SERVER['REQUEST_URI'], '/', 1));
95
  if ($hasMissingSlash) {
96
 
97
  if ($this->allowActionsAsFiles) {
@@ -101,7 +101,7 @@ class SkinnyBaseControllerWPCsvFree {
101
  } else {
102
  if ($this->fixMisspellings) {
103
 
104
- if ('' != $this->module && '' != @$_GET['__action']) {
105
  $href = '/' . $this->module . '/' . $this->action . '/';
106
  header('Location: ' . $href);
107
  exit();
29
  // Get the Module and Action from the CGI parameters.
30
  //
31
  if (isset($_GET['__action']) && !empty($_GET['__action'])) {
32
+ $action = sanitize_text_field($_GET['__action']);
33
  } else {
34
  $action = 'index';
35
  }
36
 
37
  if (isset($_GET['__module']) && !empty($_GET['__module'])) {
38
+ $module = sanitize_text_field($_GET['__module']);
39
  } else {
40
  $module = 'dashboard';
41
  $action = 'index';
65
  //
66
 
67
  // Slash after the module missing?
68
+ $hasMissingSlash = '' == @sanitize_text_field($_GET['__action']) && '/' == substr($_SERVER['REQUEST_URI'], 0, 1) && 1 < strlen($_SERVER['REQUEST_URI']) && FALSE == strpos($_SERVER['REQUEST_URI'], '/', 1);
69
  if ($hasMissingSlash) {
70
 
71
  if ($this->allowModulesAsFiles) {
75
  } else {
76
  if ($this->fixMisspellings) {
77
 
78
+ if ('' != $this->module && '' == @sanitize_text_field($_GET['__action'])) {
79
  $href = '/' . $this->module . '/';
80
  header('Location: ' . $href);
81
  exit();
91
  }
92
 
93
  // Slash after the action missing?
94
+ $hasMissingSlash = '' != @sanitize_text_field($_GET['__action']) && '/' == substr($_SERVER['REQUEST_URI'], 0, 1) && 1 < strlen($_SERVER['REQUEST_URI']) && FALSE !== strpos($_SERVER['REQUEST_URI'], '/', 1) && FALSE == strpos($_SERVER['REQUEST_URI'], '/', strpos($_SERVER['REQUEST_URI'], '/', 1));
95
  if ($hasMissingSlash) {
96
 
97
  if ($this->allowActionsAsFiles) {
101
  } else {
102
  if ($this->fixMisspellings) {
103
 
104
+ if ('' != $this->module && '' != @sanitize_text_field($_GET['__action'])) {
105
  $href = '/' . $this->module . '/' . $this->action . '/';
106
  header('Location: ' . $href);
107
  exit();
plugins/class.inlineimages.php CHANGED
@@ -107,7 +107,7 @@ class WPImporter_inlineImages {
107
  $full_path = $dir ['basedir'];
108
  $baseurl = $dir ['baseurl'];
109
  }
110
- $eventKey = $_POST['postdata']['uploadedFile'];
111
 
112
  $inlineimageDirpath = $inlineimageDir . '/' . $eventKey;
113
  $imagelist = scanDirectories($inlineimageDirpath);
@@ -266,7 +266,7 @@ class WPImporter_inlineImages {
266
  }
267
 
268
  $wp_media_path = $full_path;
269
- $eventKey = $_POST['postdata']['uploadedFile'];
270
  $inlineimageDirpath = $inlineimageDir . '/' . $eventKey;
271
  $imagelist = scanDirectories($inlineimageDirpath);
272
  $currentLoc = '';
107
  $full_path = $dir ['basedir'];
108
  $baseurl = $dir ['baseurl'];
109
  }
110
+ $eventKey = sanitize_text_field($_POST['postdata']['uploadedFile']);
111
 
112
  $inlineimageDirpath = $inlineimageDir . '/' . $eventKey;
113
  $imagelist = scanDirectories($inlineimageDirpath);
266
  }
267
 
268
  $wp_media_path = $full_path;
269
+ $eventKey = sanitize_text_field($_POST['postdata']['uploadedFile']);
270
  $inlineimageDirpath = $inlineimageDir . '/' . $eventKey;
271
  $imagelist = scanDirectories($inlineimageDirpath);
272
  $currentLoc = '';
templates/Addcustomfields.php CHANGED
@@ -39,7 +39,7 @@ if (!defined('ABSPATH')) {
39
  exit;
40
  } // Exit if accessed directly
41
  $filename = isset($_POST['filename']) ? sanitize_text_field($_POST['filename']) : '';
42
- $count = isset($_POST['corecount']) ? sanitize_text_field($_POST['corecount']) : '';
43
  $impobj = new WPImporter_includes_helper();
44
  $getrec = $impobj->csv_file_data($filename);
45
  $csvheaders = $impobj->headers;
39
  exit;
40
  } // Exit if accessed directly
41
  $filename = isset($_POST['filename']) ? sanitize_text_field($_POST['filename']) : '';
42
+ $count = isset($_POST['corecount']) ? intval($_POST['corecount']) : '';
43
  $impobj = new WPImporter_includes_helper();
44
  $getrec = $impobj->csv_file_data($filename);
45
  $csvheaders = $impobj->headers;
templates/import.php CHANGED
@@ -38,7 +38,7 @@
38
  if (!defined('ABSPATH')) {
39
  exit;
40
  } // Exit if accessed directly
41
- $noncevar = isset($_POST['postdata']['wpnonce']) ? $_POST['postdata']['wpnonce'] : '';
42
  if (!wp_verify_nonce($noncevar, 'smack_nonce')) {
43
  die('You are not allowed to do this operation.Please contact your admin.');
44
  }
@@ -68,11 +68,11 @@ if ($curr_action == 'post' || $curr_action == 'page' || $curr_action == 'customp
68
  if ($curr_action == 'custompost') {
69
  $importedAs = 'Custom Post';
70
  }
71
- $importObj->MultiImages = $_POST['postdata']['importinlineimage'];
72
  } elseif ($curr_action == 'eshop') {
73
  $importObj = new EshopActions();
74
  $importedAs = 'Eshop';
75
- $importObj->MultiImages = $_POST['postdata']['importinlineimage'];
76
  } elseif ($curr_action == 'wpcommerce') {
77
  $importObj = new WpcommerceActions();
78
  } elseif ($curr_action == 'woocommerce') {
@@ -94,12 +94,12 @@ if ($curr_action == 'post' || $curr_action == 'page' || $curr_action == 'customp
94
  }
95
 
96
 
97
- $limit = $_POST['postdata']['limit'];
98
- $totRecords = $_POST['postdata']['totRecords'];
99
- $_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['importlimit'] = $_POST['postdata']['importlimit'];
100
- $count = $_POST['postdata']['importlimit'];
101
- $requested_limit = $_POST['postdata']['importlimit'];
102
- $tmpCnt = $_POST['postdata']['tmpcount'];
103
  if ($count < $totRecords) {
104
  $count = $tmpCnt + $count;
105
  if ($count > $totRecords) {
@@ -115,11 +115,11 @@ $get_mapped_array = array();
115
  $mapping_value = '';
116
  $filename = $_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['uploadedFile'];
117
  $resultArr = $skinnyObj->csv_file_data($filename);
118
- if ($_POST['postdata']['dupTitle']) {
119
- $importObj->titleDupCheck = $_POST['postdata']['dupTitle'];
120
  }
121
- if ($_POST['postdata']['dupContent']) {
122
- $importObj->conDupCheck = $_POST['postdata']['dupContent'];
123
  }
124
  $csv_rec_count = $_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['h2'];
125
  $available_groups = $skinnyObj->get_availgroups($curr_action);
@@ -158,12 +158,12 @@ for ($i = $limit; $i < $count; $i++) {
158
  $importinlineimageoption = null;
159
  if (isset($_POST['postdata']['inline_image_location'])) {
160
  $importinlineimageoption = 'imagewithextension';
161
- $extracted_image_location = $_POST['postdata']['inline_image_location'];
162
  }
163
- if ($_POST['postdata']['inlineimagehandling'] != 'imagewithextension') {
164
  $importinlineimageoption = 'imagewithurl';
165
- $extracted_image_location = $_POST['postdata']['inline_image_location'];
166
- $sample_inlineimage_url = $_POST['postdata']['inlineimagehandling'];
167
  }
168
  $importObj->processDataInWP($to_be_import_rec, $_SESSION['SMACK_MAPPING_SETTINGS_VALUES'], $_SESSION['SMACK_MAPPING_SETTINGS_VALUES'], $i, $extracted_image_location, $importinlineimageoption, $sample_inlineimage_url);
169
  $logarr = array('post_id','Failed','assigned_author', 'category', 'tags', 'postdate', 'image', 'poststatus');
@@ -210,7 +210,7 @@ for ($i = $limit; $i < $count; $i++) {
210
  }
211
 
212
  if ($limit >= $totRecords) {
213
- $advancemedia = $_POST['postdata']['advance_media'];
214
  $dir = $skinnyObj->getUploadDirectory();
215
  $get_inline_imageDir = explode('/', $extracted_image_location);
216
  $explodedCount = count($get_inline_imageDir);
38
  if (!defined('ABSPATH')) {
39
  exit;
40
  } // Exit if accessed directly
41
+ $noncevar = isset($_POST['postdata']['wpnonce']) ? sanitize_text_field($_POST['postdata']['wpnonce']) : '';
42
  if (!wp_verify_nonce($noncevar, 'smack_nonce')) {
43
  die('You are not allowed to do this operation.Please contact your admin.');
44
  }
68
  if ($curr_action == 'custompost') {
69
  $importedAs = 'Custom Post';
70
  }
71
+ $importObj->MultiImages = sanitize_text_field($_POST['postdata']['importinlineimage']);
72
  } elseif ($curr_action == 'eshop') {
73
  $importObj = new EshopActions();
74
  $importedAs = 'Eshop';
75
+ $importObj->MultiImages = sanitize_text_field($_POST['postdata']['importinlineimage']);
76
  } elseif ($curr_action == 'wpcommerce') {
77
  $importObj = new WpcommerceActions();
78
  } elseif ($curr_action == 'woocommerce') {
94
  }
95
 
96
 
97
+ $limit = intval($_POST['postdata']['limit']);
98
+ $totRecords = intval($_POST['postdata']['totRecords']);
99
+ $_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['importlimit'] = intval($_POST['postdata']['importlimit']);
100
+ $count = intval($_POST['postdata']['importlimit']);
101
+ $requested_limit = intval($_POST['postdata']['importlimit']);
102
+ $tmpCnt = intval($_POST['postdata']['tmpcount']);
103
  if ($count < $totRecords) {
104
  $count = $tmpCnt + $count;
105
  if ($count > $totRecords) {
115
  $mapping_value = '';
116
  $filename = $_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['uploadedFile'];
117
  $resultArr = $skinnyObj->csv_file_data($filename);
118
+ if (sanitize_text_field($_POST['postdata']['dupTitle'])) {
119
+ $importObj->titleDupCheck = sanitize_text_field($_POST['postdata']['dupTitle']);
120
  }
121
+ if (sanitize_text_field($_POST['postdata']['dupContent'])) {
122
+ $importObj->conDupCheck = sanitize_text_field($_POST['postdata']['dupContent']);
123
  }
124
  $csv_rec_count = $_SESSION['SMACK_MAPPING_SETTINGS_VALUES']['h2'];
125
  $available_groups = $skinnyObj->get_availgroups($curr_action);
158
  $importinlineimageoption = null;
159
  if (isset($_POST['postdata']['inline_image_location'])) {
160
  $importinlineimageoption = 'imagewithextension';
161
+ $extracted_image_location = sanitize_text_field($_POST['postdata']['inline_image_location']);
162
  }
163
+ if (sanitize_text_field($_POST['postdata']['inlineimagehandling']) != 'imagewithextension') {
164
  $importinlineimageoption = 'imagewithurl';
165
+ $extracted_image_location = sanitize_text_field($_POST['postdata']['inline_image_location']);
166
+ $sample_inlineimage_url = sanitize_text_field($_POST['postdata']['inlineimagehandling']);
167
  }
168
  $importObj->processDataInWP($to_be_import_rec, $_SESSION['SMACK_MAPPING_SETTINGS_VALUES'], $_SESSION['SMACK_MAPPING_SETTINGS_VALUES'], $i, $extracted_image_location, $importinlineimageoption, $sample_inlineimage_url);
169
  $logarr = array('post_id','Failed','assigned_author', 'category', 'tags', 'postdate', 'image', 'poststatus');
210
  }
211
 
212
  if ($limit >= $totRecords) {
213
+ $advancemedia = sanitize_text_field($_POST['postdata']['advance_media']);
214
  $dir = $skinnyObj->getUploadDirectory();
215
  $get_inline_imageDir = explode('/', $extracted_image_location);
216
  $explodedCount = count($get_inline_imageDir);
templates/menu.php CHANGED
@@ -106,66 +106,66 @@ $menuHTML = "<nav class='navbar navbar-default' role='navigation'>
106
  <div>
107
  <ul class='nav navbar-nav'>
108
  <li class = '".sanitize_html_class($dashboard)."' >";
109
- $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'dashboard'), $impObj->baseUrl)) . "'> " . __('Dashboard', 'wp-ultimate-csv-importer') . "</a>";
110
  $menuHTML .= "</li>
111
  <li class='dropdown ".sanitize_html_class($module)."'>
112
  <a href='#' data-toggle='dropdown'>
113
- " . __('Imports', 'wp-ultimate-csv-importer') . "
114
  <b class='caret'></b>
115
  </a>
116
  <ul class='dropdown-menu'>";
117
  $menuHTML .= "<li class= '".sanitize_html_class($post)."'>";
118
- $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'post', 'step' => 'uploadfile'), $impObj->baseUrl)) . "'> " . __('Post', 'wp-ultimate-csv-importer') . "</a>";
119
  $menuHTML .= "</li>";
120
  $menuHTML .= "<li class = '".sanitize_html_class($page)."'>";
121
- $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'page', 'step' => 'uploadfile'), $impObj->baseUrl)) . "'> " . __('Page', 'wp-ultimate-csv-importer') . "</a>";
122
  $menuHTML .= "</li>";
123
  if ($custompost) {
124
  $menuHTML .= "<li class = '".sanitize_html_class($custompost)."'>";
125
- $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'custompost', 'step' => 'uploadfile'), $impObj->baseUrl)) . "'> " . __('Custom Post', 'wp-ultimate-csv-importer') . "</a>";
126
  $menuHTML .= "</li>";
127
  }
128
  $menuHTML .= "<li class = '".sanitize_html_class($users)."'>";
129
- $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'users', 'step' => 'uploadfile'), $impObj->baseUrl)) . "'> " . __('Users', 'wp-ultimate-csv-importer') . "</a>";
130
  $menuHTML .= "</li>";
131
 
132
  if ($eshop) {
133
  $menuHTML .= "<li class = '".sanitize_html_class($eshop)."'>";
134
- $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'eshop', 'step' => 'uploadfile'), $impObj->baseUrl)) . "'> " . __('Eshop', 'wp-ultimate-csv-importer') . "</a>";
135
  $menuHTML .= "</li>";
136
  }
137
  $menuHTML .= "</ul>
138
  </li>";
139
  $menuHTML .= "<li class='dropdown ".sanitize_html_class($manager)."'>";
140
- $menuHTML .= "<a href='#' data-toggle='dropdown'>" . __('Managers', 'wp-ultimate-csv-importer') . " <b class='caret'></b></a>";
141
  $menuHTML .= "<ul class='dropdown-menu'>";
142
  $menuHTML .= "<li class = '".sanitize_html_class($filemanager)."'>";
143
- $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'filemanager'), $impObj->baseUrl)) . "'> " . __('File Manager', 'wp-ultimate-csv-importer') . "</a>";
144
  $menuHTML .= "</li>";
145
  $menuHTML .= "<li class = '".sanitize_html_class($schedulemapping)."'>";
146
- $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'schedulemapping'), $impObj->baseUrl)) . "'> " . __('Smart Scheduler', 'wp-ultimate-csv-importer') . "</a>";
147
  $menuHTML .= "</li>";
148
  $menuHTML .= "<li class = '".sanitize_html_class($mappingtemplate)."'>";
149
- $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'mappingtemplate'), $impObj->baseUrl)) . "'> " . __('Templates', 'wp-ultimate-csv-importer') . "</a>";
150
  $menuHTML .= "</li>";
151
  $menuHTML .= "</ul>
152
  </li>";
153
  $menuHTML .= "<li class = '".sanitize_html_class($export)."'>";
154
- $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'export'), $impObj->baseUrl)) . "'> " . __('Export', 'wp-ultimate-csv-importer') . "</a>";
155
  $menuHTML .= "</li>";
156
  $menuHTML .= "<li class= '".sanitize_html_class($settings)."'>";
157
- $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'settings'), $impObj->baseUrl)) . "'> " . __('Settings', 'wp-ultimate-csv-importer') . "</a>";
158
  $menuHTML .= "</li>";
159
  $menuHTML .= "<li class = '".sanitize_html_class($support)."'>";
160
- $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'support'), $impObj->baseUrl)) . "'> " . __('Support', 'wp-ultimate-csv-importer') . "</a>";
161
  $menuHTML .= "</li>";
162
- $menuHTML .= "<li><a href=".esc_url('https://www.wpultimatecsvimporter.com?utm_source=WpPlugin&utm_medium=Free&utm_campaign=SupportTraffic')." target='_blank'>" . __('Go Pro Now', 'wp-ultimate-csv-importer') . "</a></li>
163
- <li ><a href=".esc_url('http://demo.smackcoders.com/demowpthree/wp-admin/admin.php?page=wp-ultimate-csv-importer-pro/index.php&__module=dashboard')." target='_blank'>" . __('Try Live Demo Now', 'wp-ultimate-csv-importer') . "</a></li>
164
  </ul>";
165
  $plugin_version = get_option('ULTIMATE_CSV_IMP_VERSION');
166
  $menuHTML .= "</div>";
167
  $menuHTML .= "<div class='msg' id = 'showMsg' style = 'display:none;'></div>";
168
- $menuHTML .= "<input type='hidden' id='current_url' name='current_url' value='" . get_admin_url() . "admin.php?page=" . WP_CONST_ULTIMATE_CSV_IMP_SLUG . "/index.php&__module=" . $_REQUEST['__module'] . "&step=uploadfile'/>";
169
- $menuHTML .= "<input type='hidden' name='checkmodule' id='checkmodule' value='" . $_REQUEST['__module'] . "' />";
170
  $menuHTML .= "</nav>";
171
  echo $menuHTML;
106
  <div>
107
  <ul class='nav navbar-nav'>
108
  <li class = '".sanitize_html_class($dashboard)."' >";
109
+ $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'dashboard'), $impObj->baseUrl)) . "'> " . esc_html__('Dashboard', 'wp-ultimate-csv-importer') . "</a>";
110
  $menuHTML .= "</li>
111
  <li class='dropdown ".sanitize_html_class($module)."'>
112
  <a href='#' data-toggle='dropdown'>
113
+ " . esc_html__('Imports', 'wp-ultimate-csv-importer') . "
114
  <b class='caret'></b>
115
  </a>
116
  <ul class='dropdown-menu'>";
117
  $menuHTML .= "<li class= '".sanitize_html_class($post)."'>";
118
+ $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'post', 'step' => 'uploadfile'), $impObj->baseUrl)) . "'> " . esc_html__('Post', 'wp-ultimate-csv-importer') . "</a>";
119
  $menuHTML .= "</li>";
120
  $menuHTML .= "<li class = '".sanitize_html_class($page)."'>";
121
+ $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'page', 'step' => 'uploadfile'), $impObj->baseUrl)) . "'> " . esc_html__('Page', 'wp-ultimate-csv-importer') . "</a>";
122
  $menuHTML .= "</li>";
123
  if ($custompost) {
124
  $menuHTML .= "<li class = '".sanitize_html_class($custompost)."'>";
125
+ $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'custompost', 'step' => 'uploadfile'), $impObj->baseUrl)) . "'> " . esc_html__('Custom Post', 'wp-ultimate-csv-importer') . "</a>";
126
  $menuHTML .= "</li>";
127
  }
128
  $menuHTML .= "<li class = '".sanitize_html_class($users)."'>";
129
+ $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'users', 'step' => 'uploadfile'), $impObj->baseUrl)) . "'> " . esc_html__('Users', 'wp-ultimate-csv-importer') . "</a>";
130
  $menuHTML .= "</li>";
131
 
132
  if ($eshop) {
133
  $menuHTML .= "<li class = '".sanitize_html_class($eshop)."'>";
134
+ $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'eshop', 'step' => 'uploadfile'), $impObj->baseUrl)) . "'> " . esc_html__('Eshop', 'wp-ultimate-csv-importer') . "</a>";
135
  $menuHTML .= "</li>";
136
  }
137
  $menuHTML .= "</ul>
138
  </li>";
139
  $menuHTML .= "<li class='dropdown ".sanitize_html_class($manager)."'>";
140
+ $menuHTML .= "<a href='#' data-toggle='dropdown'>" . esc_html__('Managers', 'wp-ultimate-csv-importer') . " <b class='caret'></b></a>";
141
  $menuHTML .= "<ul class='dropdown-menu'>";
142
  $menuHTML .= "<li class = '".sanitize_html_class($filemanager)."'>";
143
+ $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'filemanager'), $impObj->baseUrl)) . "'> " . esc_html__('File Manager', 'wp-ultimate-csv-importer') . "</a>";
144
  $menuHTML .= "</li>";
145
  $menuHTML .= "<li class = '".sanitize_html_class($schedulemapping)."'>";
146
+ $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'schedulemapping'), $impObj->baseUrl)) . "'> " . esc_html__('Smart Scheduler', 'wp-ultimate-csv-importer') . "</a>";
147
  $menuHTML .= "</li>";
148
  $menuHTML .= "<li class = '".sanitize_html_class($mappingtemplate)."'>";
149
+ $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'mappingtemplate'), $impObj->baseUrl)) . "'> " . esc_html__('Templates', 'wp-ultimate-csv-importer') . "</a>";
150
  $menuHTML .= "</li>";
151
  $menuHTML .= "</ul>
152
  </li>";
153
  $menuHTML .= "<li class = '".sanitize_html_class($export)."'>";
154
+ $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'export'), $impObj->baseUrl)) . "'> " . esc_html__('Export', 'wp-ultimate-csv-importer') . "</a>";
155
  $menuHTML .= "</li>";
156
  $menuHTML .= "<li class= '".sanitize_html_class($settings)."'>";
157
+ $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'settings'), $impObj->baseUrl)) . "'> " . esc_html__('Settings', 'wp-ultimate-csv-importer') . "</a>";
158
  $menuHTML .= "</li>";
159
  $menuHTML .= "<li class = '".sanitize_html_class($support)."'>";
160
+ $menuHTML .= "<a href='" . esc_url(add_query_arg(array('page' => WP_CONST_ULTIMATE_CSV_IMP_SLUG.'/index.php', '__module' => 'support'), $impObj->baseUrl)) . "'> " . esc_html__('Support', 'wp-ultimate-csv-importer') . "</a>";
161
  $menuHTML .= "</li>";
162
+ $menuHTML .= "<li><a href=".esc_url('https://www.wpultimatecsvimporter.com?utm_source=WpPlugin&utm_medium=Free&utm_campaign=SupportTraffic')." target='_blank'>" . esc_html__('Go Pro Now', 'wp-ultimate-csv-importer') . "</a></li>
163
+ <li ><a href=".esc_url('http://demo.smackcoders.com/demowpthree/wp-admin/admin.php?page=wp-ultimate-csv-importer-pro/index.php&__module=dashboard')." target='_blank'>" . esc_html__('Try Live Demo Now', 'wp-ultimate-csv-importer') . "</a></li>
164
  </ul>";
165
  $plugin_version = get_option('ULTIMATE_CSV_IMP_VERSION');
166
  $menuHTML .= "</div>";
167
  $menuHTML .= "<div class='msg' id = 'showMsg' style = 'display:none;'></div>";
168
+ $menuHTML .= "<input type='hidden' id='current_url' name='current_url' value='" . get_admin_url() . "admin.php?page=" . WP_CONST_ULTIMATE_CSV_IMP_SLUG . "/index.php&__module=" . sanitize_text_field($_REQUEST['__module']) . "&step=uploadfile'/>";
169
+ $menuHTML .= "<input type='hidden' name='checkmodule' id='checkmodule' value='" . sanitize_text_field($_REQUEST['__module']) . "' />";
170
  $menuHTML .= "</nav>";
171
  echo $menuHTML;