{"id":395051,"date":"2026-10-30T14:12:02","date_gmt":"2026-10-30T14:12:02","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/listing-importer-for-hivepress\/"},"modified":"2026-10-30T14:11:45","modified_gmt":"2026-10-30T14:11:45","slug":"listonix-listing-importer-for-hivepress","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/listonix-listing-importer-for-hivepress\/","author":23412941,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.2","stable_tag":"1.0.2","tested":"7.1.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Listonix: Listing Importer for HivePress","header_author":"curiouswpdev","header_description":"Fast, batch-processed CSV importer and exporter for HivePress listings with intelligent MIME detection for CDN images and deduplication.","assets_banners_color":"","last_updated":"2026-10-30 14:11:45","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/listonix-listing-importer-for-hivepress\/","header_author_uri":"https:\/\/profiles.wordpress.org\/curiouswpdev\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":142,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.2":{"tag":"1.0.2","author":"curiouswpdev","date":"2026-10-30 14:11:45","revision":3775438}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3775445,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3775445,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.2"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"<strong>Upload Wizard (Step 1)<\/strong>: Upload CSV, select delimiter, and choose your import mode.","2":"<strong>Column Mapping (Step 2)<\/strong>: Visual dropdown interface matching CSV columns to HivePress attributes.","3":"<strong>Live Progress Dashboard (Step 3)<\/strong>: Real-time chunked processing bar with live stats for created, updated, and failed rows.","4":"<strong>CSV Export Utility<\/strong>: One-click listing export filtered by category with custom delimiter selection."}},"plugin_section":[],"plugin_tags":[567,162997,87,1446,4528],"plugin_category":[59],"plugin_contributors":[289772],"plugin_business_model":[],"class_list":["post-395051","plugin","type-plugin","status-publish","hentry","plugin_tags-csv","plugin_tags-hivepress","plugin_tags-import","plugin_tags-listing","plugin_tags-listings","plugin_category-utilities-and-tools","plugin_contributors-curiouswpdev","plugin_committers-curiouswpdev"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/listonix-listing-importer-for-hivepress\/assets\/icon-128x128.png?rev=3775445","icon_2x":"https:\/\/ps.w.org\/listonix-listing-importer-for-hivepress\/assets\/icon-256x256.png?rev=3775445","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>Listonix: Listing Importer for HivePress<\/strong> is a powerful, user-friendly tool built to help you import hundreds or thousands of listings into your HivePress directory website effortlessly\u2014preventing server timeouts, handling dynamic image URLs, and avoiding duplicate media clutter.<\/p>\n\n<p>Whether you are building a real estate portal, business directory, classifieds site, or service marketplace, adding listings manually one-by-one is tedious and time-consuming. This plugin allows you to upload any standard spreadsheet (CSV or TXT), match your columns with a few clicks, and watch your listings get published with full attribute and gallery support.<\/p>\n\n\n\n<h3>Key Capabilities Built for Scale<\/h3>\n\n<p>Listonix provides five core innovations for reliable directory management:<\/p>\n\n<h4>1. Asynchronous Chunked Batching (No Timeouts)<\/h4>\n\n<p>Instead of processing an entire spreadsheet in a single server request, the plugin processes rows in small, manageable chunks in the background via AJAX. A real-time visual progress bar shows you exactly what row is currently being imported, how many listings have been created or updated, and any rows that encountered issues.<\/p>\n\n<h4>2. Automatic Resume &amp; Failure Recovery<\/h4>\n\n<p>If an import is interrupted by a temporary network drop or server restart, you do not have to start over or clean up half-imported data. The plugin saves its exact byte offset after each row. Simply click <strong>\"Retry \/ Resume Import\"<\/strong>, and it picks up right where it stopped without re-importing earlier rows.<\/p>\n\n<h4>3. Smart Binary MIME Sniffing for CDN &amp; Dynamic Images<\/h4>\n\n<p>Many modern image providers, scrapers, and CDNs (such as Unsplash, Google Places, AWS S3, or Cloudinary) provide image URLs that do not end with standard <code>.jpg<\/code> or <code>.png<\/code> extensions.\nOur plugin reads the actual binary header of the downloaded image file, automatically detects whether it is a JPEG, PNG, WebP, GIF, or AVIF image, assigns the correct extension, and sideloads it into your WordPress Media Library and HivePress listing gallery.<\/p>\n\n<h4>4. Image Deduplication (Saves Server Disk Space)<\/h4>\n\n<p>Re-importing updated data can fill up your media library with redundant copies (<code>photo-1.jpg<\/code>, <code>photo-2.jpg<\/code>, etc.). This plugin calculates cryptographic hashes for each source image URL. If an image has already been imported, the plugin links the existing media file rather than downloading another copy, saving hosting disk space.<\/p>\n\n<h4>5. Intelligent Field Auto-Matching &amp; Clean Headers<\/h4>\n\n<p>If you export data from tools with nested or dotted column headers (such as <code>company_insights.founded_year<\/code> or <code>contact_details.phone<\/code>), the plugin automatically cleans these into readable labels (<code>Company Insights \u2192 Founded Year<\/code>) and pre-selects matching HivePress fields (Title, Description, Images, Categories, Location, Phone, etc.).<\/p>\n\n\n\n<h3>Key Features at a Glance<\/h3>\n\n<ul>\n<li><strong>Visual 3-Step Wizard<\/strong>: Located conveniently in your WordPress admin menu under <strong>Listings &gt; Import Listings<\/strong>.<\/li>\n<li><strong>Flexible Import Modes<\/strong>:\n\n<ul>\n<li><em>Create new listings only<\/em>: Adds new listings without modifying existing ones.<\/li>\n<li><em>Update existing listings only<\/em>: Updates records matching an ID column.<\/li>\n<li><em>Update existing or create new<\/em>: Updates listings if an ID is present, or creates a new listing if not.<\/li>\n<\/ul><\/li>\n<li><strong>Full HivePress Attribute Support<\/strong>: Compatible with all core HivePress fields (Title, Description, Featured, Verified, Author, Images) plus any custom category-specific attributes you create in <strong>Listings &gt; Attributes<\/strong>.<\/li>\n<li><strong>Category Mapping or Bulk Assignment<\/strong>: Assign a single category to the entire import with one click, or map a CSV column containing category names, slugs, or IDs.<\/li>\n<li><strong>Multiple Images per Listing<\/strong>: Supports comma-separated image URLs in a single column (e.g. <code>https:\/\/site.com\/img1.jpg, https:\/\/site.com\/img2.jpg<\/code>). The first image is set as the Featured Thumbnail, and subsequent images are attached to the listing gallery.<\/li>\n<li><strong>Built-in CSV Listing Exporter<\/strong>: Need a backup or want to edit listings in a spreadsheet? Export your existing listings filtered by category into a clean CSV file with Excel UTF-8 BOM encoding so special characters open correctly in Microsoft Excel, Google Sheets, or Numbers.<\/li>\n<li><strong>Enterprise-Grade Security<\/strong>: Fully protected against CSRF, unauthorized access, path traversal, CSV formula injection (CWE-1236), and Server-Side Request Forgery (SSRF).<\/li>\n<\/ul>\n\n\n\n<h3>How to Use the Plugin in 3 Easy Steps<\/h3>\n\n<ol>\n<li><strong>Step 1: Upload Your File<\/strong>\nGo to <strong>Listings &gt; Import Listings<\/strong> in your WordPress admin. Choose your CSV file, select your delimiter (usually a comma <code>,<\/code>), pick your import mode (Create or Update), and optionally pick a default category.<\/li>\n<li><strong>Step 2: Map Your Columns<\/strong>\nReview the mapping table. The plugin will automatically match common columns. For any custom fields, simply select which CSV column belongs to which HivePress attribute using the dropdown menus.<\/li>\n<li><strong>Step 3: Run the Import &amp; Monitor Progress<\/strong>\nClick <strong>\"Start Import Process Now\"<\/strong>. Watch the live progress bar track each row in real-time. When finished, you'll see a complete summary of created listings, updated listings, and any specific row warnings.<\/li>\n<\/ol>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>listonix-listing-importer-for-hivepress<\/code> folder to your <code>\/wp-content\/plugins\/<\/code> directory, or install the plugin ZIP file via <strong>Plugins &gt; Add New &gt; Upload Plugin<\/strong>.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> menu in WordPress.<\/li>\n<li>Ensure the core <strong>HivePress<\/strong> plugin is installed and activated.<\/li>\n<li>Navigate to <strong>Listings &gt; Import Listings<\/strong> in your WordPress admin sidebar to start importing or exporting.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20connect%20to%20any%20third-party%20services%20or%20apis%3F\"><h3>Does this plugin connect to any third-party services or APIs?<\/h3><\/dt>\n<dd><p>No. This plugin does not connect to any external tracking services, third-party SaaS platforms, or proprietary APIs. The only outbound HTTP requests made are WordPress core <code>download_url()<\/code> calls to retrieve media files when image URLs are explicitly included by an administrator in their uploaded CSV spreadsheet.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20require%20hivepress%3F\"><h3>Does this plugin require HivePress?<\/h3><\/dt>\n<dd><p>Yes. This plugin is an extension purpose-built for the HivePress directory framework and requires the core HivePress plugin to be active.<\/p><\/dd>\n<dt id=\"how%20should%20multiple%20image%20urls%20be%20formatted%20in%20my%20csv%3F\"><h3>How should multiple image URLs be formatted in my CSV?<\/h3><\/dt>\n<dd><p>Separate image URLs with commas inside the image column, like this:\n    https:\/\/example.com\/photo1.jpg, https:\/\/example.com\/photo2.webp, https:\/\/example.com\/photo3.png\nThe plugin will download each image, attach the first one as the listing's featured image, and attach the rest to the HivePress image gallery.<\/p><\/dd>\n<dt id=\"can%20i%20import%20images%20from%20unsplash%2C%20google%20places%2C%20or%20aws%20s3%20without%20file%20extensions%3F\"><h3>Can I import images from Unsplash, Google Places, or AWS S3 without file extensions?<\/h3><\/dt>\n<dd><p>Yes! The plugin inspects the binary content of the file and assigns the correct extension (<code>.jpg<\/code>, <code>.png<\/code>, <code>.webp<\/code>, <code>.avif<\/code>) automatically.<\/p><\/dd>\n<dt id=\"will%20re-importing%20duplicate%20my%20images%3F\"><h3>Will re-importing duplicate my images?<\/h3><\/dt>\n<dd><p>No. The plugin stores a checksum hash of each imported image source URL. If you re-import or update listings with the same image URLs, it reuses the existing file in your WordPress Media Library.<\/p><\/dd>\n<dt id=\"can%20i%20import%20custom%20attributes%20i%20created%20in%20hivepress%3F\"><h3>Can I import custom attributes I created in HivePress?<\/h3><\/dt>\n<dd><p>Yes. All custom attributes you have created under <strong>Listings &gt; Attributes<\/strong> (text fields, numbers, select dropdowns, checkboxes, dates, URLs, etc.) will automatically appear in the column mapping step.<\/p><\/dd>\n<dt id=\"can%20i%20update%20existing%20listings%20instead%20of%20creating%20duplicates%3F\"><h3>Can I update existing listings instead of creating duplicates?<\/h3><\/dt>\n<dd><p>Yes. In Step 1, select the <strong>\"Update existing listings only\"<\/strong> or <strong>\"Update existing or create new\"<\/strong> mode. Ensure your CSV has an <code>ID<\/code> column containing the WordPress Post ID of the listing you wish to update.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20an%20import%20gets%20interrupted%3F\"><h3>What happens if an import gets interrupted?<\/h3><\/dt>\n<dd><p>Because the import runs in small chunks via AJAX and saves progress after every single row, you can simply click the <strong>\"Retry \/ Resume Import\"<\/strong> button to continue from where it paused without re-importing earlier rows.<\/p><\/dd>\n<dt id=\"can%20i%20export%20my%20listings%20back%20to%20csv%3F\"><h3>Can I export my listings back to CSV?<\/h3><\/dt>\n<dd><p>Yes. Click the <strong>\"Export Listings\"<\/strong> tab at the top of the page. You can filter by category or export all listings. The generated file includes all core fields, custom attributes, categories, and image URLs, with UTF-8 BOM encoding so it opens cleanly in Microsoft Excel.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Renamed to Listonix: Listing Importer for HivePress to ensure distinctiveness and full compliance with WordPress.org guidelines.<\/li>\n<li>Refactored internal prefixes and transient storage to prevent naming collisions.<\/li>\n<li>Refined documentation and descriptions in compliance with WordPress repository guidelines.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fully standardized for the WordPress.org Plugin Directory.<\/li>\n<li>Added chunked AJAX background processing with resume and crash recovery.<\/li>\n<li>Added intelligent binary MIME sniffing for dynamic and CDN image URLs.<\/li>\n<li>Added cryptographic image deduplication to prevent media library clutter.<\/li>\n<li>Added CSV Formula Injection (CWE-1236) and SSRF security defenses.<\/li>\n<li>Added built-in CSV export tool with Excel UTF-8 BOM encoding.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial development version.<\/li>\n<\/ul>","raw_excerpt":"Fast, reliable CSV listing importer and exporter for HivePress with chunked background batching, smart image MIME detection, and deduplication.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/395051","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=395051"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/curiouswpdev"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=395051"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=395051"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=395051"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=395051"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=395051"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=395051"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}