[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f0GNP9RlNhXEtyTNC6q9UFioZHKgocyAANa2cXbhrx8Q":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":18,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"vulnerabilities":30,"developer":31,"crawl_stats":28,"alternatives":35,"analysis":133,"fingerprints":1035},"mapnavigator","Map Navigator","1.1.0","rothmaniac","https:\u002F\u002Fprofiles.wordpress.org\u002Frothmaniac\u002F","\u003Cp>This plugin imports a Map Navigation file into your WordPress blog.\u003Cbr \u002F>\nThe Map Navigation file defines one or more Continents, Countries, Regions, States and Cities.\u003Cbr \u002F>\nThe plugin creates Posts that each contain a MapPress map or mashup that provide a linked\u003Cbr \u002F>\nnavigation of the geography using your organization’s name, image file and icon in the Post’s\u003Cbr \u002F>\nPost, Excerpt and on the Map markers. The Map Navigation hierarchy can then be added to your\u003Cbr \u002F>\nthemes header or provided as a link so that your organization can locate its members Posts\u003Cbr \u002F>\nor Pages by Geographical area. The plugin also provides an affiliate Register script that adds\u003Cbr \u002F>\nan Affiliate to your Map Navigation hierarchy along with their link and image when they join\u003Cbr \u002F>\nyour organization. Any post can be added to the Map Navigation hierarchy using the Map Taxonomy\u003Cbr \u002F>\ntags and a Custom field used by the MapPress plugin. Exisitng MapPress maps can be linked into\u003Cbr \u002F>\nthe Map Navigation Hierarchy from the MapNavigator Admin Tool Interface.\u003C\u002Fp>\n\u003Cp>This plugin is built on top of the CSV Importer plugin so it contains all of the features of\u003Cbr \u002F>\nCSV Importer with the additional customized features for MapPress Google maps navigation.\u003C\u002Fp>\n\u003Ch3>Map Navigator features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Map Navigation Files available (for a small fee) for geographical areas (USA available now)\u003C\u002Fli>\n\u003Cli>Documentation and Sample file so that you can create your own Map Navigation File   \u003C\u002Fli>\n\u003Cli>Automatically creates the MapPress Maps, Mashups and Markers with your organizations:\n\u003Cul>\n\u003Cli>Name or Title\u003C\u002Fli>\n\u003Cli>Link to website or other location \u003C\u002Fli>\n\u003Cli>Image from an http:\u002F\u002F link\u003C\u002Fli>\n\u003Cli>Icon from a list of icons supplied by MapPress or a custom icon placed into the MapPress icon directory\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Cleans database for ‘orphaned’ MapPress Maps\u003C\u002Fli>\n\u003Cli>Links exisitng MapPress Maps into your Map Navigation hierarchy\u003C\u002Fli>\n\u003Cli>Creates a Map Taxonomy that provides easy categorization of a Post by geographical location\u003C\u002Fli>\n\u003Cli>Provides the ability to add any post to your Map Navigation hierarchy without coding any\u003Cbr \u002F>\ncomplex MapPress parameters.\u003C\u002Fli>\n\u003Cli>Provides a customized WP-Affiliate Registration script that will place your new affiliate on the\u003Cbr \u002F>\nappropriate Map in your Map Navigation hierarchy\u003C\u002Fli>\n\u003Cli>Provides several customizations to the MapPress plugin to address limitations and enhancements that\u003Cbr \u002F>\nprovide the above functionality\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>CSV Importer Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Imports post title, body, excerpt, tags, date, categories etc.\u003C\u002Fli>\n\u003Cli>Supports custom fields, custom taxonomies and comments\u003C\u002Fli>\n\u003Cli>Deals with Word-style quotes and other non-standard characters using\u003Cbr \u002F>\nWordPress’ built-in mechanism (same one that normalizes your input when you\u003Cbr \u002F>\nwrite your posts)\u003C\u002Fli>\n\u003Cli>Columns in the CSV file can be in any order, provided that they have correct\u003Cbr \u002F>\nheadings\u003C\u002Fli>\n\u003Cli>Multilanguage support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Cp>Click on the Map Navigator link on your WordPress admin page, choose the\u003Cbr \u002F>\nMap Definition file you would like to import and click Import. You can\u003Cbr \u002F>\nbuild your own Map Definition file using the example file “Test Map-Navigator-USA.csv” in the \u003Ccode>examples\u003C\u002Fcode> directory\u003Cbr \u002F>\ninside the plugin’s directory or you can download one for a small fee from:\u003C\u002Fp>\n\u003Cp>http:\u002F\u002Fmapclick.org\u003C\u002Fp>\n\u003Cp>The Map Definition file is in CSV format that consists of rows and columns. Each row in\u003Cbr \u002F>\na CSV file represents a post; each column identifies a piece of information\u003Cbr \u002F>\nthat comprises a post. Each Post is assigned to a level in the Map Taxonomy which provides\u003Cbr \u002F>\nthe Map Navigational Hierarchy as follows:\u003C\u002Fp>\n\u003Cp>Maps Taxonomy\u003Cbr \u002F>\n* Continent\u003Cbr \u002F>\n    * Country\u003Cbr \u002F>\n        * Region (optional)\u003Cbr \u002F>\n            * State (optional)\u003Cbr \u002F>\n                * City\u003C\u002Fp>\n\u003Ch4>Basic post information\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Ccode>nav_post_title\u003C\u002Fcode> – title of the post. The name should reflect the category of the taxonomy level. For instance : ‘United States Regions’\u003Cbr \u002F>\n                    or ‘Mountain Region States’ or ‘California Map’\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>nav_post_post\u003C\u002Fcode> – body of the post. This will hold the MapPress  command to create a ‘mashup’ or to display a map in this post\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>nav_post_excerpt\u003C\u002Fcode> – post excerpt. This will contain the title that will appear in the Map Marker. The word ‘mapClicks’\u003Cbr \u002F>\n                    will be replaced with your organization’s name entered on the Map Navigator Tool dialog in WordPress.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>nav_post_categories\u003C\u002Fcode> – a comma separated list of category names or ids. This will be the level associated with this post;\u003Cbr \u002F>\n                    for instance : Maps > Continent > Country > Region\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>nav_post_tags\u003C\u002Fcode> – a comma separated list of tags. Tags are used in the nav_post_post column to specify the mashup posts that will be included in the\u003Cbr \u002F>\n                  mashup post. See the Examples directory for a sample file. Pay close attention to the tags defined in this column and the references\u003Cbr \u002F>\n                  in the nav_post_post column.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Ccode>nav_post_date\u003C\u002Fcode> – about any English textual description of a date and time.\u003Cbr \u002F>\nFor example, \u003Ccode>now\u003C\u002Fcode>, \u003Ccode>11\u002F16\u002F2009 0:00\u003C\u002Fcode>, \u003Ccode>1999-12-31 23:55:00\u003C\u002Fcode>, \u003Ccode>+1 week\u003C\u002Fcode>,\u003Cbr \u002F>\n    next Thursday, \u003Ccode>last year\u003C\u002Fcode> are all valid descriptions. For technical\u003Cbr \u002F>\ndetails, consult PHP’s \u003Ccode>strtotime()\u003C\u002Fcode> function \u003Ca href=\"http:\u002F\u002Fphp.net\u002Fmanual\u002Fen\u002Ffunction.strtotime.php\" rel=\"nofollow ugc\">documentation\u003C\u002Fa>.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>nav_ctax_maps – See the Examples directory for a sample file (Test Map-Navigator-USA.csv).\u003Cbr \u002F>\n                This column is used to specify the Post’s taxonomy tags and thus what the post will appear as in the ‘Maps’ taxonomy\u003Cbr \u002F>\n                (Continent, Country, Region, State or City)\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>‘map_address’ – holds the address of the MapPress map marker. This must be defined as a Custom field and specified in the\u003Cbr \u002F>\n                MapPress setup as the field used to create maps automatically from when a post is updated.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Custom fields\u003C\u002Fh4>\n\u003Cp>Any column that doesn’t start with \u003Ccode>nav_\u003C\u002Fcode> is considered to be a custom field\u003Cbr \u002F>\nname. The data in that column will be imported as the custom field’s value.\u003C\u002Fp>\n\u003Ch4>General remarks\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>WordPress pages \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FPages\" rel=\"nofollow ugc\">don’t have categories or tags\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Most columns are optional. Either \u003Ccode>nav_post_title\u003C\u002Fcode>, \u003Ccode>nav_post_post\u003C\u002Fcode> or\u003Cbr \u002F>\n    nav_post_excerpt are sufficient to create a post. If all of these\u003Cbr \u002F>\ncolumns are empty in a row, the plugin will skip that row.\u003C\u002Fli>\n\u003Cli>The plugin will attempt to reuse existing categories or tags; if an\u003Cbr \u002F>\nexisting category or tag cannot be found, the plugin will create it.\u003C\u002Fli>\n\u003Cli>To specify a category that has a greater than sign (>) in the name, use\u003Cbr \u002F>\nthe HTML entity \u003Ccode>>\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Advanced usage\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ccode>nav_post_author\u003C\u002Fcode> – numeric user id or login name. If not specified or\u003Cbr \u002F>\nuser does not exist, the plugin will assign the posts to the user\u003Cbr \u002F>\nperforming the import.\u003C\u002Fli>\n\u003Cli>\u003Ccode>nav_post_slug\u003C\u002Fcode> – post slug used in permalinks.\u003C\u002Fli>\n\u003Cli>\u003Ccode>nav_post_parent\u003C\u002Fcode> – post parent id.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Custom taxonomies\u003C\u002Fh3>\n\u003Cp>Once custom taxonomies are set up in your theme’s functions.php file or\u003Cbr \u002F>\nby using a 3rd party plugin, \u003Ccode>nav_ctax_(taxonomy name)\u003C\u002Fcode> columns can be\u003Cbr \u002F>\nused to assign imported data to the taxonomies.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Non-hierarchical taxonomies\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>The syntax for non-hierarchical taxonomies is straightforward and is essentially\u003Cbr \u002F>\nthe same as the \u003Ccode>nav_post_tags\u003C\u002Fcode> syntax.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Hierarchical taxonomies\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>The syntax for hierarchical taxonomies is more complicated. Each hierarchical\u003Cbr \u002F>\ntaxonomy field is a tiny two-column CSV file, where \u003Cem>the order of columns\u003Cbr \u002F>\nmatters\u003C\u002Fem>. The first column contains the name of the parent term and the second\u003Cbr \u002F>\ncolumn contains the name of the child term. Top level terms have to be preceded\u003Cbr \u002F>\neither by an empty string or a 0 (zero).\u003C\u002Fp>\n\u003Cp>Sample \u003Ccode>examples\u002Fcustom-taxonomies.csv\u003C\u002Fcode> file included with the plugin\u003Cbr \u002F>\nillustrates custom taxonomy support. To see how it works, make sure to set up\u003Cbr \u002F>\ncustom taxonomies from \u003Ccode>functions.inc.php\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Make sure that the quotation marks used as text delimiters in \u003Ccode>nav_ctax_\u003C\u002Fcode>\u003Cbr \u002F>\ncolumns are regular ASCII double quotes, not typographical quotes like “\u003Cbr \u002F>\n(U+201C) and ” (U+201D).\u003C\u002Fp>\n\u003Ch3>Comments\u003C\u002Fh3>\n\u003Cp>An example file with comments is included in the \u003Ccode>examples\u003C\u002Fcode> directory.\u003Cbr \u002F>\nIn short, comments can be imported along with posts by specifying columns\u003Cbr \u002F>\nsuch as \u003Ccode>nav_comment_*_author\u003C\u002Fcode>, \u003Ccode>nav_comment_*_content\u003C\u002Fcode> etc, where * is\u003Cbr \u002F>\na comment ID number. This ID doesn’t go into WordPress. It is only there\u003Cbr \u002F>\nto have the connection information in the CSV file.\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>This plugin is based upon  [csv-importer][3] by Denis Kobozev (thanks !) .\u003Cbr \u002F>\nThis plugin uses [php-csv-parser][3] by Kazuyoshi Tlacaelel (thanks !).\u003C\u002Fp>\n\u003Cp>Contributors:\u003Cbr \u002F>\n*   Israeli Rothman (Original Idea and Requirements Spec)\u003C\u002Fp>\n","Create Posts for Map Navigation for a geographical taxonomy using MapPress Google Maps in WordPress.",10,13885,20,1,"2012-01-23T18:45:00.000Z","3.2.1","2.0.2","",[20,21,22,23,24],"batch","csv","excel","import","spreadsheet","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmapnavigator.1.1.1.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":14,"total_installs":11,"avg_security_score":26,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},30,84,"2026-04-04T21:32:23.145Z",[36,55,73,89,111],{"slug":37,"name":38,"version":39,"author":40,"author_profile":41,"description":42,"short_description":43,"active_installs":44,"downloaded":45,"rating":46,"num_ratings":47,"last_updated":48,"tested_up_to":49,"requires_at_least":50,"requires_php":18,"tags":51,"homepage":18,"download_link":52,"security_score":53,"vuln_count":14,"unpatched_count":14,"last_vuln_date":54,"fetched_at":29},"csv-importer-improved","CSV Importer Improved","0.6.1","Jason Judge","https:\u002F\u002Fprofiles.wordpress.org\u002Fjudgej\u002F","\u003Cp>This WordPress plugin imports posts from CSV (Comma Separated Value) files into your\u003Cbr \u002F>\nWordPress blog. It can prove extremely useful when you want to import a bunch\u003Cbr \u002F>\nof posts from an Excel document or the like – simply export your document into\u003Cbr \u002F>\na CSV file and the plugin will take care of the rest.\u003C\u002Fp>\n\u003Cp>https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcsv-importer-improved\u002F\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Imports post title, body, excerpt, tags, date, categories etc.\u003C\u002Fli>\n\u003Cli>Supports custom fields, custom taxonomies and comments\u003C\u002Fli>\n\u003Cli>Deals with Word-style quotes and other non-standard characters using\u003Cbr \u002F>\nWordPress’ built-in mechanism (same one that normalizes your input when you\u003Cbr \u002F>\nwrite your posts)\u003C\u002Fli>\n\u003Cli>Columns in the CSV file can be in any order, provided that they have correct\u003Cbr \u002F>\nheadings\u003C\u002Fli>\n\u003Cli>Multi-language support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>This plugin is forked from https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcsv-importer\u002F by dvkob\u003Cbr \u002F>\nin order to keep up with changes to the core WordPress.\u003C\u002Fp>\n\u003Cp>This importer writes directly to the database. It does not go through the internal\u003Cbr \u002F>\nWordPress objects for creating posts etc. That may be an advantage to you (it will\u003Cbr \u002F>\nbe faster for large imports) but do be aware of any data integrity issues that may arrise.\u003C\u002Fp>\n\u003Cp>Only UTF-8 encoding is supported, both with and without Byte Order Marks (BOM).\u003C\u002Fp>\n\u003Cp>The development repository for this plugin can be found here:\u003C\u002Fp>\n\u003Cp>https:\u002F\u002Fgithub.com\u002Facademe\u002Fcsv-importer-improved\u003C\u002Fp>\n\u003Cp>Please feel free to raise issues there, and submit pull requests, as well as through\u003Cbr \u002F>\nthe normal WordPress channels.\u003C\u002Fp>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Cp>Click on the CSV Importer link on your WordPress admin page, choose the\u003Cbr \u002F>\nfile you would like to import and click Import. The \u003Ccode>examples\u003C\u002Fcode> directory\u003Cbr \u002F>\ninside the plugin’s directory contains several files that demonstrate\u003Cbr \u002F>\nhow to use the plugin. The best way to get started is to import one of\u003Cbr \u002F>\nthese files and look at the results.\u003C\u002Fp>\n\u003Cp>CSV is a tabular format that consists of rows and columns. Each row in\u003Cbr \u002F>\na CSV file represents a post; each column identifies a piece of information\u003Cbr \u002F>\nthat comprises a post.\u003C\u002Fp>\n\u003Cp>You can create new posts, or update existing posts by supplying the csv_post_id\u003Cbr \u002F>\nfield pointing to an existing post. When updating, all field names you provide\u003Cbr \u002F>\nin the CSV file will be updated – even if blank – but fields you don’t list at\u003Cbr \u002F>\nthe head of the CSV file will be left intact.\u003C\u002Fp>\n\u003Ch4>Basic post information\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ccode>csv_post_id\u003C\u002Fcode> – optional, used to update an existing post.\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_title\u003C\u002Fcode> – title of the post\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_post\u003C\u002Fcode> – body of the post\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_type\u003C\u002Fcode> – \u003Ccode>post\u003C\u002Fcode>, \u003Ccode>page\u003C\u002Fcode> or a custom post type.\u003Cbr \u002F>\nFrom 0.3.2, \u003Ccode>csv_post_type\u003C\u002Fcode> column supports custom post types.\u003Cbr \u002F>\nRefer to the WordPress\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FCustom_Post_Types\" rel=\"nofollow ugc\">documentation on custom post types\u003C\u002Fa> for more info\u003Cbr \u002F>\non how to set up custom post types.\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_excerpt\u003C\u002Fcode> – post excerpt\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_categories\u003C\u002Fcode> – a comma separated list of category names or ids.\u003Cbr \u002F>\nThe list must be enclosed in quotes, e.g. “EC > UK, Island”.\u003Cbr \u002F>\nIf a chain of subcategories does not exist, e.g. \u003Ccode>Animalia > Chordata > Mammalia\u003C\u002Fcode>\u003Cbr \u002F>\nthen they will all be created and the post assigned to the end of the chain.\u003Cbr \u002F>\nThe parent category can also be defined using its id, e.g.\u003Cbr \u002F>\n    42 > Primates > Callitrichidae, where \u003Ccode>42\u003C\u002Fcode> is an\u003Cbr \u002F>\nexisting category id.\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_tags\u003C\u002Fcode> – a “quoted” comma separated list of tags.\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_date\u003C\u002Fcode> – most standard formats are supported.\u003Cbr \u002F>\nFor example, \u003Ccode>now\u003C\u002Fcode>, \u003Ccode>11\u002F16\u002F2009 0:00\u003C\u002Fcode>, \u003Ccode>1999-12-31 23:55:00\u003C\u002Fcode>, \u003Ccode>+1 week\u003C\u002Fcode>,\u003Cbr \u002F>\n    next Thursday, \u003Ccode>last year\u003C\u002Fcode> are all valid. For technical\u003Cbr \u002F>\ndetails, consult PHP’s \u003Ccode>strtotime()\u003C\u002Fcode> function \u003Ca href=\"http:\u002F\u002Fphp.net\u002Fmanual\u002Fen\u002Ffunction.strtotime.php\" rel=\"nofollow ugc\">documentation\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Custom fields\u003C\u002Fh4>\n\u003Cp>Any column that doesn’t start with \u003Ccode>csv_\u003C\u002Fcode> is considered to be a custom field\u003Cbr \u002F>\nname. The data in that column will be imported as the custom fields value.\u003C\u002Fp>\n\u003Cp>All custom fields must be unique. Multiple fields with the same name will be\u003Cbr \u002F>\nupdated to the same value if updating an existing post.\u003Cbr \u002F>\nPrior to version 0.6.0 loading the same field name multiple times to an existing\u003Cbr \u002F>\npost would create multiple custom fields.\u003C\u002Fp>\n\u003Ch4>General remarks\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>WordPress pages \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FPages\" rel=\"nofollow ugc\">don’t have categories or tags\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Most columns are optional. Either \u003Ccode>csv_post_title\u003C\u002Fcode>, \u003Ccode>csv_post_post\u003C\u002Fcode> or\u003Cbr \u002F>\n    csv_post_excerpt are sufficient to create a post. If all of these\u003Cbr \u002F>\ncolumns are empty in a row, the plugin will skip that row.\u003C\u002Fli>\n\u003Cli>The plugin will attempt to reuse existing categories or tags; if an\u003Cbr \u002F>\nexisting category or tag cannot be found, the plugin will create it.\u003C\u002Fli>\n\u003Cli>To specify a category that has a greater than sign (>) in the name, use\u003Cbr \u002F>\nthe HTML entity \u003Ccode>>\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Advanced usage\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ccode>csv_post_author\u003C\u002Fcode> – numeric user id or login name. If not specified or\u003Cbr \u002F>\nuser does not exist, the plugin will assign the posts to the user\u003Cbr \u002F>\nperforming the import.\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_slug\u003C\u002Fcode> – post slug used in permalinks.\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_parent\u003C\u002Fcode> – post parent id.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Custom taxonomies\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>New in version 0.3.0\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Once custom taxonomies are set up in your theme’s functions.php file or\u003Cbr \u002F>\nby using a 3rd party plugin, \u003Ccode>csv_ctax_(taxonomy name)\u003C\u002Fcode> columns can be\u003Cbr \u002F>\nused to assign imported data to the taxonomies.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Non-hierarchical taxonomies\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>The syntax for non-hierarchical taxonomies is straightforward and is essentially\u003Cbr \u002F>\nthe same as the \u003Ccode>csv_post_tags\u003C\u002Fcode> syntax.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Hierarchical taxonomies\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>The syntax for hierarchical taxonomies is more complicated. Each hierarchical\u003Cbr \u002F>\ntaxonomy field is a tiny two-column CSV file, where \u003Cem>the order of columns\u003Cbr \u002F>\nmatters\u003C\u002Fem>. The first column contains the name of the parent term and the second\u003Cbr \u002F>\ncolumn contains the name of the child term. Top level terms have to be preceded\u003Cbr \u002F>\neither by an empty string or a 0 (zero).\u003C\u002Fp>\n\u003Cp>Sample \u003Ccode>examples\u002Fcustom-taxonomies.csv\u003C\u002Fcode> file included with the plugin\u003Cbr \u002F>\nillustrates custom taxonomy support. To see how it works, make sure to set up\u003Cbr \u002F>\ncustom taxonomies from \u003Ccode>functions.inc.php\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Make sure that the quotation marks used as text delimiters in \u003Ccode>csv_ctax_\u003C\u002Fcode>\u003Cbr \u002F>\ncolumns are regular ASCII double quotes, not typographical quotes like “\u003Cbr \u002F>\n(U+201C) and ” (U+201D).\u003C\u002Fp>\n\u003Ch3>Comments\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>New in version 0.3.1\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>An example file with comments is included in the \u003Ccode>examples\u003C\u002Fcode> directory.\u003Cbr \u002F>\nIn short, comments can be imported along with posts by specifying columns\u003Cbr \u002F>\nsuch as \u003Ccode>csv_comment_*_author\u003C\u002Fcode>, \u003Ccode>csv_comment_*_content\u003C\u002Fcode> etc, where * is\u003Cbr \u002F>\na comment ID number. This ID doesn’t go into WordPress. It is only there\u003Cbr \u002F>\nto have the connection information in the CSV file.\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>This plugin uses \u003Ca href=\"http:\u002F\u002Fcode.google.com\u002Fp\u002Fphp-csv-parser\u002F\" rel=\"nofollow ugc\">php-csv-parser\u003C\u002Fa> by Kazuyoshi Tlacaelel.\u003Cbr \u002F>\nIt was inspired by JayBlogger’s \u003Ca href=\"http:\u002F\u002Fwww.jayblogger.com\u002Fthe-birth-of-my-first-plugin-import-csv\u002F\" rel=\"nofollow ugc\">CSV Import\u003C\u002Fa> plugin.\u003C\u002Fp>\n\u003Cp>Contributors:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Kevin Hagerty (post_author support)\u003C\u002Fli>\n\u003Cli>Edir Pedro (root category option and tableless HTML markup)\u003C\u002Fli>\n\u003Cli>Frank Loeffler (comments support)\u003C\u002Fli>\n\u003Cli>Micah Gates (subcategory syntax)\u003C\u002Fli>\n\u003Cli>David Hollander (deprecation warnings, linebreak handling)\u003C\u002Fli>\n\u003C\u002Ful>\n","Import posts from CSV files into WordPress.",100,11480,64,5,"2016-10-10T00:25:00.000Z","4.6.30","3.0.0",[20,21,22,23,24],"https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcsv-importer-improved.0.6.1.zip",63,"2025-06-19 00:00:00",{"slug":56,"name":57,"version":58,"author":59,"author_profile":60,"description":61,"short_description":43,"active_installs":62,"downloaded":63,"rating":33,"num_ratings":64,"last_updated":65,"tested_up_to":66,"requires_at_least":67,"requires_php":68,"tags":69,"homepage":18,"download_link":71,"security_score":44,"vuln_count":14,"unpatched_count":27,"last_vuln_date":72,"fetched_at":29},"csv-importer","CSV Importer","0.4.2","Soflyy","https:\u002F\u002Fprofiles.wordpress.org\u002Fsoflyy\u002F","\u003Cp>This plugin imports posts from CSV (Comma Separated Value) files into your WordPress blog. It can prove extremely useful when you want to import a bunch of posts from an Excel document or the like – simply export your document into a CSV file and the plugin will take care of the rest.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Imports post title, body, excerpt, tags, date, categories etc.\u003C\u002Fli>\n\u003Cli>Supports custom fields, custom taxonomies and comments\u003C\u002Fli>\n\u003Cli>Deals with Word-style quotes and other non-standard characters using WordPress’ built-in mechanism (same one that normalizes your input when you write your posts)\u003C\u002Fli>\n\u003Cli>Columns in the CSV file can be in any order, provided that they have correct headings\u003C\u002Fli>\n\u003Cli>Multi-language support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Drag & Drop to Import any CSV\u002FExcel\u002FXML with WP All Import Pro\u003C\u002Fh4>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002Fw2J7JbXMHZo?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Cp>\u003Cstrong>WP All Import Pro\u003C\u002Fstrong> can import custom fields, taxonomies, WooCommerce, images and galleries, users, ACF, and everything else:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Drag & Drop to Import Any File:\u003C\u002Fstrong> Give any CSV or XML to WP All Import, then drag and drop to map data from your file into WordPress.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Any Custom Post Type, Every Data Type:\u003C\u002Fstrong> Import data to custom post types, with support for WooCommerce, ACF, custom fields, taxonomies, and everything else.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Import Images & Galleries:\u003C\u002Fstrong> Images can be uploaded, downloaded, or matched to media already in WordPress. Full support for WooCommerce product images and variation galleries.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Import Files from URL:\u003C\u002Fstrong> Download and import files from external websites, even if they are password protected. URL imports are can be re-run to add, edit, and delete posts.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Scheduled Imports:\u003C\u002Fstrong> WP All Import Pro can check periodically check a file for updates and then add, update, or delete to the imported posts accordingly.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Developer Friendly:\u003C\u002Fstrong> Pass data through custom PHP functions. For example, use something like [my_function( {user_email[1]} )] in your template, to pass the value of {user_email[1]} to my_function and display whatever it returns.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Priority Support:\u003C\u002Fstrong> Personal support from our team of expert developers with over a decade of experience importing and exporting WordPress data.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>90 Day Money Back Guarantee:\u003C\u002Fstrong> Not 100% happy? Let us know, and we’ll promptly send you a refund. No questions asked.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Check out \u003Ca href=\"https:\u002F\u002Fwww.wpallimport.com\u002F?utm_source=import-plugin-free&utm_medium=readme&utm_campaign=upgrade-to-pro\" rel=\"nofollow ugc\">WP All Import\u003C\u002Fa> today.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwww.wpallimport.com\u002Fimport-wordpress-csv-xml-excel\u002F?utm_source=import-plugin-free&utm_medium=readme&utm_campaign=upgrade-to-pro\" rel=\"nofollow ugc\">Import any CSV\u002FExcel\u002FXML with WP All Import Pro\u003C\u002Fa>.\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Need to \u003Ca href=\"http:\u002F\u002Fwww.wpallimport.com\u002Fwoocommerce-product-import\u002F?utm_source=import-plugin-free&utm_medium=readme&utm_campaign=upgrade-to-pro\" rel=\"nofollow ugc\">import XML and CSV to WooCommerce\u003C\u002Fa>? Check out our WooCommerce add-on.\u003C\u002Fli>\n\u003Cli>How to export WordPress to CSV? Drag & drop to \u003Ca href=\"http:\u002F\u002Fwww.wpallimport.com\u002Fexport-wordpress\u002F?utm_source=import-plugin-free&utm_medium=readme&utm_campaign=upgrade-to-pro\" rel=\"nofollow ugc\">export any custom post type from WordPress\u003C\u002Fa> (and everything else) to a custom CSV, Excel, or XML with WP All Export Pro.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Cp>Click on the CSV Importer link on your WordPress admin page, choose the file you would like to import and click Import. The \u003Ccode>examples\u003C\u002Fcode> directory inside the plugin’s directory contains several files that demonstrate how to use the plugin. The best way to get started is to import one of these files and look at the results.\u003C\u002Fp>\n\u003Cp>CSV is a tabular format that consists of rows and columns. Each row in a CSV file represents a post; each column identifies a piece of information that comprises a post.\u003C\u002Fp>\n\u003Ch4>Basic post information\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ccode>csv_post_title\u003C\u002Fcode> – title of the post\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_post\u003C\u002Fcode> – body of the post\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_type\u003C\u002Fcode> – \u003Ccode>post\u003C\u002Fcode>, \u003Ccode>page\u003C\u002Fcode> or a custom post type.\u003Cbr \u002F>\n\u003Cstrong>New in version 0.3.2\u003C\u002Fstrong>\u003Cbr \u002F>\nIn prior versions, importing rows as pages could be specified on a per-file basis using the plugins UI. In 0.3.2, \u003Ccode>csv_post_type\u003C\u002Fcode> column was added to support custom post types as well.\u003Cbr \u002F>\nRefer to the WordPress \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FCustom_Post_Types\" rel=\"nofollow ugc\">documentation on custom post types\u003C\u002Fa> for more info on how to set up custom post types.\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_excerpt\u003C\u002Fcode> – post excerpt\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_categories\u003C\u002Fcode> – a comma separated list of category names or ids.\u003Cbr \u002F>\n\u003Cstrong>New in version 0.3.5\u003C\u002Fstrong>\u003Cbr \u002F>\nIt’s also possible to assign posts to non-existing subcategories, using > to denote category relationships, e.g. \u003Ccode>Animalia > Chordata > Mammalia\u003C\u002Fcode>. If any of the categories in the chain does not exist, the plugin will automatically create it. It’s also possible to specify the parent category using an id, as in \u003Ccode>42 > Primates > Callitrichidae\u003C\u002Fcode>, where \u003Ccode>42\u003C\u002Fcode> is an existing category id.\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_tags\u003C\u002Fcode> – a comma separated list of tags.\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_date\u003C\u002Fcode> – about any English textual description of a date and time.\u003Cbr \u002F>\nFor example, \u003Ccode>now\u003C\u002Fcode>, \u003Ccode>11\u002F16\u002F2009 0:00\u003C\u002Fcode>, \u003Ccode>1999-12-31 23:55:00\u003C\u002Fcode>, \u003Ccode>+1 week\u003C\u002Fcode>, \u003Ccode>next Thursday\u003C\u002Fcode>, \u003Ccode>last year\u003C\u002Fcode> are all valid descriptions. For technical details, consult PHP’s \u003Ccode>strtotime()\u003C\u002Fcode> function \u003Ca href=\"http:\u002F\u002Fphp.net\u002Fmanual\u002Fen\u002Ffunction.strtotime.php\" rel=\"nofollow ugc\">documentation\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Custom fields\u003C\u002Fh4>\n\u003Cp>Any column that doesn’t start with \u003Ccode>csv_\u003C\u002Fcode> is considered to be a custom field name. The data in that column will be imported as the custom fields value.\u003C\u002Fp>\n\u003Ch4>General remarks\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>WordPress pages \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FPages\" rel=\"nofollow ugc\">don’t have categories or tags\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Most columns are optional. Either \u003Ccode>csv_post_title\u003C\u002Fcode>, \u003Ccode>csv_post_post\u003C\u002Fcode> or \u003Ccode>csv_post_excerpt\u003C\u002Fcode> are sufficient to create a post. If all of these columns are empty in a row, the plugin will skip that row.\u003C\u002Fli>\n\u003Cli>The plugin will attempt to reuse existing categories or tags; if an existing category or tag cannot be found, the plugin will create it.\u003C\u002Fli>\n\u003Cli>To specify a category that has a greater than sign (>) in the name, use the HTML entity \u003Ccode>>\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Advanced usage\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ccode>csv_post_author\u003C\u002Fcode> – numeric user id or login name. If not specified or user does not exist, the plugin will assign the posts to the user performing the import.\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_slug\u003C\u002Fcode> – post slug used in permalinks.\u003C\u002Fli>\n\u003Cli>\u003Ccode>csv_post_parent\u003C\u002Fcode> – post parent id.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Custom taxonomies\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>New in version 0.3.0\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Once custom taxonomies are set up in your theme’s functions.php file or by using a 3rd party plugin, \u003Ccode>csv_ctax_(taxonomy name)\u003C\u002Fcode> columns can be used to assign imported data to the taxonomies.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Non-hierarchical taxonomies\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>The syntax for non-hierarchical taxonomies is straightforward and is essentially the same as the \u003Ccode>csv_post_tags\u003C\u002Fcode> syntax.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Hierarchical taxonomies\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>The syntax for hierarchical taxonomies is more complicated. Each hierarchical taxonomy field is a tiny two-column CSV file, where \u003Cem>the order of columns matters\u003C\u002Fem>. The first column contains the name of the parent term and the second column contains the name of the child term. Top level terms have to be preceded either by an empty string or a 0 (zero).\u003C\u002Fp>\n\u003Cp>Sample \u003Ccode>examples\u002Fcustom-taxonomies.csv\u003C\u002Fcode> file included with the plugin illustrates custom taxonomy support. To see how it works, make sure to set up custom taxonomies from \u003Ccode>functions.inc.php\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Make sure that the quotation marks used as text delimiters in \u003Ccode>csv_ctax_\u003C\u002Fcode> columns are regular ASCII double quotes, not typographical quotes like “ (U+201C) and ” (U+201D).\u003C\u002Fp>\n\u003Ch3>Comments\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>New in version 0.3.1\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>An example file with comments is included in the \u003Ccode>examples\u003C\u002Fcode> directory. In short, comments can be imported along with posts by specifying columns such as \u003Ccode>csv_comment_*_author\u003C\u002Fcode>, \u003Ccode>csv_comment_*_content\u003C\u002Fcode> etc, where * is a comment ID number. This ID doesn’t go into WordPress. It is only there to have the connection information in the CSV file.\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>This plugin uses \u003Ca href=\"http:\u002F\u002Fcode.google.com\u002Fp\u002Fphp-csv-parser\u002F\" rel=\"nofollow ugc\">php-csv-parser\u003C\u002Fa> by Kazuyoshi Tlacaelel. It was inspired by JayBlogger’s \u003Ca href=\"http:\u002F\u002Fwww.jayblogger.com\u002Fthe-birth-of-my-first-plugin-import-csv\u002F\" rel=\"nofollow ugc\">CSV Import\u003C\u002Fa> plugin.\u003C\u002Fp>\n\u003Cp>Contributors:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Denis Kobozev (original author)\u003C\u002Fli>\n\u003Cli>Kevin Hagerty (post_author support)\u003C\u002Fli>\n\u003Cli>Edir Pedro (root category option and tableless HTML markup)\u003C\u002Fli>\n\u003Cli>Frank Loeffler (comments support)\u003C\u002Fli>\n\u003Cli>Micah Gates (subcategory syntax)\u003C\u002Fli>\n\u003Cli>David Hollander (deprecation warnings, linebreak handling)\u003C\u002Fli>\n\u003C\u002Ful>\n",4000,218431,28,"2025-12-05T21:16:00.000Z","6.9.4","3.1","7.0",[21,22,23,70,24],"import-csv","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcsv-importer.0.4.2.zip","2023-12-05 00:00:00",{"slug":74,"name":75,"version":76,"author":77,"author_profile":78,"description":79,"short_description":80,"active_installs":27,"downloaded":81,"rating":27,"num_ratings":27,"last_updated":82,"tested_up_to":83,"requires_at_least":84,"requires_php":18,"tags":85,"homepage":18,"download_link":88,"security_score":44,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"post-importer-for-excel","Post Importer for Excel","1.0.1","sa77","https:\u002F\u002Fprofiles.wordpress.org\u002Fsa77\u002F","\u003Cp>Post Importer for Excel streamlines your content creation workflow by allowing you to bulk-create posts from a spreadsheet. Simply prepare your data in a CSV or Excel file, map your columns to WordPress post fields like title, content, featured image, categories, and tags, then preview and publish.\u003C\u002Fp>\n\u003Cp>The plugin intelligently attempts to map your columns automatically and provides a user-friendly interface to review and edit posts before they go live. You can publish posts individually or all at once with the batch creation tool.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Key Features:\u003C\u002Fstrong>\u003Cbr \u002F>\n*   Upload data from Excel (.xlsx) or CSV (.csv) files.\u003Cbr \u002F>\n*   Automatic column mapping for common fields (title, content, image, categories, etc.).\u003Cbr \u002F>\n*   Manual column mapping for full control.\u003Cbr \u002F>\n*   Preview and edit posts before creation.\u003Cbr \u002F>\n*   Set featured images from URLs in your file.\u003Cbr \u002F>\n*   Assign categories and tags.\u003Cbr \u002F>\n*   Publish posts one-by-one or in a batch.\u003C\u002Fp>\n","Effortlessly create hundreds of WordPress posts in minutes by uploading a CSV or Excel file.",245,"2025-08-05T13:47:00.000Z","6.8.5","5.0",[21,22,23,86,87],"posts","spreadsheet-to-post","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpost-importer-for-excel.1.0.1.zip",{"slug":90,"name":91,"version":92,"author":93,"author_profile":94,"description":95,"short_description":96,"active_installs":97,"downloaded":98,"rating":44,"num_ratings":99,"last_updated":100,"tested_up_to":66,"requires_at_least":101,"requires_php":102,"tags":103,"homepage":106,"download_link":107,"security_score":108,"vuln_count":109,"unpatched_count":27,"last_vuln_date":110,"fetched_at":29},"tablepress","TablePress – Tables in WordPress made easy","3.2.8","Tobias Bäthge","https:\u002F\u002Fprofiles.wordpress.org\u002Ftobiasbg\u002F","\u003Cp>\u003Cstrong>Boost your website with feature-rich tables that your visitors will love!\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>TablePress is the most popular and highest-rated WordPress table plugin.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Easily create, edit, and manage \u003Cstrong>beautiful and modern\u003C\u002Fstrong> data tables, no matter if \u003Cstrong>small or large\u003C\u002Fstrong>!\u003C\u002Fli>\n\u003Cli>Add live \u003Cstrong>sorting\u003C\u002Fstrong>, \u003Cstrong>pagination\u003C\u002Fstrong>, \u003Cstrong>searching\u003C\u002Fstrong>, and more interactivity for your site’s visitors!\u003C\u002Fli>\n\u003Cli>Use any type of data, insert \u003Cstrong>images\u003C\u002Fstrong>, \u003Cstrong>links\u003C\u002Fstrong>, and even \u003Cstrong>math formulas\u003C\u002Fstrong>!\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Import\u003C\u002Fstrong> and \u003Cstrong>export\u003C\u002Fstrong> tables from\u002Fto Excel, CSV, HTML, and JSON files or URLs.\u003C\u002Fli>\n\u003Cli>Embed tables into posts, pages, or other site areas using the block editor, an Elementor widget, or Shortcodes.\u003C\u002Fli>\n\u003Cli>All with \u003Cstrong>no coding knowledge needed\u003C\u002Fstrong>!\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Even \u003Cstrong>more great features\u003C\u002Fstrong> for you and your site’s visitors and \u003Cstrong>priority email support\u003C\u002Fstrong> are \u003Cstrong>available\u003C\u002Fstrong> with a Premium license plan of TablePress. \u003Ca href=\"https:\u002F\u002Ftablepress.org\u002Fpremium\u002F?utm_source=wordpress.org&utm_medium=textlink&utm_content=readme\" rel=\"nofollow ugc\">Go check them out!\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>More information\u003C\u002Fh4>\n\u003Cp>Visit \u003Ca href=\"https:\u002F\u002Ftablepress.org\u002F\" rel=\"nofollow ugc\">tablepress.org\u003C\u002Fa> for more information, take a look at \u003Ca href=\"https:\u002F\u002Ftablepress.org\u002Fdemo\u002F\" rel=\"nofollow ugc\">example tables\u003C\u002Fa>, or \u003Ca href=\"https:\u002F\u002Ftablepress.org\u002Fdemo\u002F#try\" rel=\"nofollow ugc\">try TablePress on a free test site\u003C\u002Fa>. For latest news, \u003Ca href=\"https:\u002F\u002Ftwitter.com\u002FTablePress\" rel=\"nofollow ugc\">follow @TablePress\u003C\u002Fa> on Twitter\u002FX or subscribe to the \u003Ca href=\"https:\u002F\u002Ftablepress.org\u002F#newsletter\" rel=\"nofollow ugc\">TablePress Newsletter\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>How to use TablePress\u003C\u002Fh3>\n\u003Cp>After installing the plugin, you can create and manage tables on the “TablePress” screen in the WordPress Dashboard.\u003C\u002Fp>\n\u003Cp>To insert a table into a post or page, add a “TablePress table” block in the block editor or a widget in the Elementor page builder and select the desired table or use Shortcodes with other page builders.\u003C\u002Fp>\n\u003Cp>Beginner-friendly step-by-step \u003Ca href=\"https:\u002F\u002Ftablepress.org\u002Ftutorials\u002F\" rel=\"nofollow ugc\">tutorials, guides, and how-tos\u003C\u002Fa> show how to achieve common and popular tasks with TablePress.\u003Cbr \u002F>\nExamples for common styling changes via “Custom CSS” code can be found on the \u003Ca href=\"https:\u002F\u002Ftablepress.org\u002Ffaq\u002F\" rel=\"nofollow ugc\">TablePress FAQ page\u003C\u002Fa>.\u003Cbr \u002F>\nYou may also add certain features (like sorting, pagination, filtering, alternating row colors, row highlighting, print name and\u002For description, …) by enabling the corresponding checkboxes on a table’s “Edit” screen.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Even more great features for you and your site’s visitors and priority email support are available with a Premium license plan of TablePress. \u003Ca href=\"https:\u002F\u002Ftablepress.org\u002Fpremium\u002F?utm_source=wordpress.org&utm_medium=textlink&utm_content=readme\" rel=\"nofollow ugc\">Go check them out!\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n","Embed beautiful, accessible, and interactive tables into your WordPress website’s posts and pages, without having to write code!",700000,22934643,4622,"2026-03-03T04:48:00.000Z","6.2","7.4",[21,22,24,104,105],"table","tables","https:\u002F\u002Ftablepress.org\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ftablepress.3.2.8.zip",89,9,"2025-11-03 14:02:33",{"slug":112,"name":113,"version":114,"author":115,"author_profile":116,"description":117,"short_description":118,"active_installs":119,"downloaded":120,"rating":121,"num_ratings":122,"last_updated":123,"tested_up_to":124,"requires_at_least":125,"requires_php":18,"tags":126,"homepage":129,"download_link":130,"security_score":131,"vuln_count":47,"unpatched_count":47,"last_vuln_date":132,"fetched_at":29},"excel-like-price-change-for-woocommerce-and-wp-e-commerce-light","Spreadsheet Price Changer for WooCommerce and WP E-commerce – Light","2.4.37","Holest Engineering","https:\u002F\u002Fprofiles.wordpress.org\u002Fholest\u002F","\u003Cp>A WooCommerce \u002F WP E-commerce product fast input spreadsheet editor for product price and sales price.\u003C\u002Fp>\n\u003Cp>This free trimmed version of the famous \u003Ca href=\"https:\u002F\u002Fholest.com\u002Fbulk-product-manager-for-woo-commerce\" rel=\"nofollow ugc\">Product manager\u002Fbulk product editor\u003C\u002Fa> that allows only change of the regular and the sales price; Mass prices update by amount or percentage by filter criteria; View of other product fields;\u003Cbr \u002F>\nIt supports both WooCommerce and WP E-commerce. GUI is like Excel. It also has an export feature for prices. This is the right thing for you if your users give you a blank stare when you’re trying to explain to them how to update prices using the default shop interface.\u003Cbr \u002F>\nUI features: frozen columns, column reordering, sorting.\u003Cbr \u002F>\nEDITABLE \u002F MASS-UPDATE:\u003Cbr \u002F>\nWooCommerce: Price, Sales Price;\u003Cbr \u002F>\nWP E-commerce: Price, Sales Price\u003Cbr \u002F>\nVISIBLE \u002F EXPORTABLE FIELDS: WooCommerce: Price, Sales Price, Tags, Attributes (Each pivoted as a column), SKU, Category, Shipping class, Name, Slug, Stock, Featured, Status, Weight, Height, Width, Length, Tax status, Tax class, Image (image is not exportable)\u003Cbr \u002F>\nWP E-commerce: Price, Sales Price, Tags, SKU, Category, Name, Slug, Stock, Status, Weight, Height, Width, Length, Taxable, local and international shipping costs, Image (image is not exportable)\u003C\u002Fp>\n\u003Cp>If you like this web app\u002Fplugin you can consider the full version \u003Ca href=\"https:\u002F\u002Fholest.com\u002Fbulk-product-manager-for-woo-commerce\" rel=\"nofollow ugc\">Excel-like Product manager\u002Fbulk product editor\u003C\u002Fa>. With it you can edit all fields. You can import CSV. You create custom columns for almost anything related to the products including fields added by other plugins like YITH, Price Ranges, etc…. These defined columns will also be importable\u002Fexportable as default columns. It also provides PHP scripts you can use to set up auto-import by CRON task.\u003C\u002Fp>\n\u003Ch4>‘Product manager demo’ version video demo\u003C\u002Fh4>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FsiOwM8WIi5Y?version=3&rel=0&showsearch=0&showinfo=0&iv_load_policy=1&fs=1&hl=en-US&autohide=2&start=37&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch4>Docs & Support\u003C\u002Fh4>\n\u003Cp>Tech. forum: \u003Ca href=\"https:\u002F\u002Fwww.holest.com\u002Fforum\u002Findex.html\" rel=\"nofollow ugc\">Holest Engineering form\u003C\u002Fa>\u003Cbr \u002F>\nDirect support: support@holest.com\u003C\u002Fp>\n","Spreadsheet Price Changer for WooCommerce and WP E-commerce - Light",500,50833,82,15,"2024-10-16T06:56:00.000Z","6.1.10","3.6",[21,22,127,23,128],"export","woo","https:\u002F\u002Fholest.com\u002Fspreadsheet-price-changer-for-woocommerce-and-wp-e-commerce","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fexcel-like-price-change-for-woocommerce-and-wp-e-commerce-light.zip",18,"2025-06-03 00:00:00",{"attackSurface":134,"codeSignals":499,"taintFlows":870,"riskAssessment":1019,"analyzedAt":1034},{"hooks":135,"ajaxHandlers":474,"restRoutes":488,"shortcodes":489,"cronEvents":497,"entryPointCount":47,"unprotectedCount":498},[136,141,145,148,152,155,159,162,166,170,173,176,180,183,186,190,194,197,201,205,208,212,216,220,225,229,233,237,240,243,246,250,254,259,263,267,271,275,279,283,287,290,294,298,302,305,308,311,314,318,322,325,329,332,336,339,343,347,351,354,358,362,365,369,373,376,380,384,388,392,396,399,403,407,410,413,415,417,420,423,427,430,433,437,439,442,444,447,451,455,458,461,465,468,471],{"type":137,"name":138,"callback":139,"file":140,"line":109},"action","after_setup_theme","suffusion_theme_setup","functions.php",{"type":137,"name":142,"callback":143,"file":140,"line":144},"admin_init","suffusion_options_init_fn",498,{"type":137,"name":142,"callback":146,"file":140,"line":147},"suffusion_admin_init",499,{"type":137,"name":149,"callback":150,"file":140,"line":151},"admin_menu","suffusion_add_admin_menus",501,{"type":137,"name":149,"callback":153,"file":140,"line":154},"suffusion_add_post_meta_boxes",502,{"type":137,"name":156,"callback":157,"file":140,"line":158},"save_post","suffusion_save_post_fields",504,{"type":137,"name":160,"callback":157,"file":140,"line":161},"publish_post",505,{"type":137,"name":163,"callback":164,"file":140,"line":165},"template_redirect","suffusion_custom_css_display",507,{"type":137,"name":167,"callback":168,"file":140,"line":169},"init","suffusion_register_jquery",509,{"type":137,"name":167,"callback":171,"file":140,"line":172},"suffusion_register_custom_types",510,{"type":137,"name":167,"callback":174,"file":140,"line":175},"suffusion_register_menus",511,{"type":137,"name":177,"callback":178,"file":140,"line":179},"wp_enqueue_scripts","suffusion_enqueue_styles",513,{"type":137,"name":177,"callback":181,"file":140,"line":182},"suffusion_disable_plugin_styles",514,{"type":137,"name":177,"callback":184,"file":140,"line":185},"suffusion_enqueue_scripts",516,{"type":137,"name":187,"callback":188,"file":140,"line":189},"wp_head","suffusion_add_header_contents",518,{"type":137,"name":187,"callback":191,"priority":192,"file":140,"line":193},"suffusion_print_direct_styles",11,519,{"type":137,"name":187,"callback":195,"priority":192,"file":140,"line":196},"suffusion_print_direct_scripts",520,{"type":137,"name":198,"callback":199,"file":140,"line":200},"wp_footer","suffusion_add_footer_contents",523,{"type":137,"name":202,"callback":203,"priority":11,"file":140,"line":204},"updated_option","suffusion_update_unified_options",526,{"type":137,"name":202,"callback":206,"priority":192,"file":140,"line":207},"suffusion_update_generated_css",527,{"type":137,"name":209,"callback":210,"file":140,"line":211},"before_signup_form","suffusion_pad_signup_form_start",530,{"type":137,"name":213,"callback":214,"file":140,"line":215},"after_signup_form","suffusion_pad_signup_form_end",531,{"type":137,"name":217,"callback":218,"file":140,"line":219},"custom_header_options","suffusion_custom_header_options",534,{"type":221,"name":222,"callback":223,"file":140,"line":224},"filter","query_vars","suffusion_new_vars",537,{"type":221,"name":226,"callback":227,"file":140,"line":228},"get_pages","suffusion_replace_page_with_alt_title",538,{"type":221,"name":230,"callback":231,"priority":11,"file":140,"line":232},"page_link","suffusion_unlink_page",539,{"type":221,"name":234,"callback":235,"file":140,"line":236},"wp_list_pages","suffusion_js_for_unlinked_pages",540,{"type":221,"name":234,"callback":238,"file":140,"line":239},"suffusion_remove_a_title_attribute",541,{"type":221,"name":241,"callback":238,"file":140,"line":242},"wp_list_categories",542,{"type":221,"name":244,"callback":238,"file":140,"line":245},"wp_list_bookmarks",543,{"type":221,"name":247,"callback":248,"file":140,"line":249},"extra_theme_headers","suffusion_extra_theme_headers",545,{"type":221,"name":251,"callback":252,"file":140,"line":253},"the_content_more_link","suffusion_set_more_link",547,{"type":221,"name":255,"callback":256,"priority":257,"file":140,"line":258},"the_content","suffusion_pages_link",8,548,{"type":221,"name":260,"callback":261,"priority":11,"file":140,"line":262},"comment_reply_link","suffusion_hide_reply_link_for_pings",550,{"type":221,"name":264,"callback":265,"file":140,"line":266},"get_comments_number","suffusion_filter_trk_ping_from_count",551,{"type":221,"name":268,"callback":269,"file":140,"line":270},"get_comments_pagenum_link","suffusion_append_comment_type",552,{"type":221,"name":272,"callback":273,"file":140,"line":274},"user_contactmethods","suffusion_add_user_contact_methods",554,{"type":221,"name":276,"callback":277,"file":140,"line":278},"excerpt_more","suffusion_excerpt_more",556,{"type":221,"name":280,"callback":281,"file":140,"line":282},"widget_text","do_shortcode",558,{"type":221,"name":284,"callback":285,"priority":11,"file":140,"line":286},"style_loader_tag","suffusion_filter_rounded_corners_css",560,{"type":221,"name":284,"callback":288,"priority":11,"file":140,"line":289},"suffusion_filter_ie_css",561,{"type":221,"name":291,"callback":292,"file":140,"line":293},"post_class","suffusion_extra_post_classes",563,{"type":221,"name":295,"callback":296,"file":140,"line":297},"bp_field_css_classes","suffusion_add_bp_specific_classes",566,{"type":137,"name":299,"callback":300,"file":140,"line":301},"suffusion_document_header","suffusion_include_ie7_compatibility_mode",576,{"type":137,"name":299,"callback":303,"file":140,"line":304},"suffusion_set_title",577,{"type":137,"name":299,"callback":306,"file":140,"line":307},"suffusion_include_meta",578,{"type":137,"name":299,"callback":309,"file":140,"line":310},"suffusion_include_favicon",579,{"type":137,"name":299,"callback":312,"file":140,"line":313},"suffusion_include_default_feed",580,{"type":137,"name":315,"callback":316,"file":140,"line":317},"suffusion_before_begin_wrapper","suffusion_display_open_header",582,{"type":137,"name":319,"callback":320,"file":140,"line":321},"suffusion_after_begin_wrapper","suffusion_display_closed_header",584,{"type":137,"name":319,"callback":323,"file":140,"line":324},"suffusion_print_widget_area_below_header",585,{"type":137,"name":326,"callback":327,"file":140,"line":328},"suffusion_page_header","suffusion_display_header",587,{"type":137,"name":326,"callback":330,"file":140,"line":331},"suffusion_display_main_navigation",588,{"type":137,"name":333,"callback":334,"file":140,"line":335},"suffusion_before_begin_content","suffusion_build_breadcrumb",590,{"type":137,"name":333,"callback":337,"file":140,"line":338},"suffusion_featured_posts",591,{"type":137,"name":340,"callback":341,"file":140,"line":342},"suffusion_after_begin_content","suffusion_template_specific_header",592,{"type":137,"name":344,"callback":345,"file":140,"line":346},"suffusion_content","suffusion_excerpt_or_content",594,{"type":137,"name":348,"callback":349,"file":140,"line":350},"suffusion_after_begin_post","suffusion_print_post_page_title",596,{"type":137,"name":348,"callback":352,"file":140,"line":353},"suffusion_print_post_format_icon",597,{"type":137,"name":355,"callback":356,"file":140,"line":357},"suffusion_after_content","suffusion_meta_pullout",599,{"type":137,"name":359,"callback":360,"file":140,"line":361},"suffusion_before_end_post","suffusion_author_information",601,{"type":137,"name":359,"callback":363,"file":140,"line":364},"suffusion_post_footer",602,{"type":137,"name":366,"callback":367,"file":140,"line":368},"suffusion_before_end_content","suffusion_pagination",604,{"type":137,"name":370,"callback":371,"file":140,"line":372},"suffusion_before_end_container","suffusion_print_left_sidebars",607,{"type":137,"name":370,"callback":374,"file":140,"line":375},"suffusion_print_right_sidebars",608,{"type":137,"name":377,"callback":378,"file":140,"line":379},"suffusion_after_end_container","suffusion_print_widget_area_above_footer",610,{"type":137,"name":381,"callback":382,"file":140,"line":383},"suffusion_page_footer","suffusion_display_footer",612,{"type":137,"name":385,"callback":386,"file":140,"line":387},"suffusion_document_footer","suffusion_include_custom_footer_js",614,{"type":221,"name":389,"callback":390,"priority":11,"file":140,"line":391},"suffusion_can_display_attachment","suffusion_filter_attachment_display",617,{"type":221,"name":393,"callback":394,"priority":11,"file":140,"line":395},"suffusion_left_sidebar_count","suffusion_get_sidebar_count_for_view",618,{"type":221,"name":397,"callback":394,"priority":11,"file":140,"line":398},"suffusion_right_sidebar_count",619,{"type":221,"name":400,"callback":401,"file":140,"line":402},"suffusion_after_comment_form","suffusion_allowed_html_tags",621,{"type":137,"name":149,"callback":404,"file":405,"line":406},"mapnav_admin_menu","map-navigator.php",822,{"type":137,"name":167,"callback":408,"file":405,"line":409},"mapnav_init",823,{"type":137,"name":167,"callback":167,"file":411,"line":412},"mappress-google-maps-for-wordpress\\mappress.php",40,{"type":137,"name":142,"callback":142,"file":411,"line":414},41,{"type":137,"name":149,"callback":149,"file":411,"line":416},43,{"type":137,"name":418,"callback":418,"file":411,"line":419},"admin_notices",45,{"type":137,"name":421,"callback":421,"file":411,"line":422},"deleted_post",53,{"type":137,"name":424,"callback":425,"file":411,"line":426},"rss2_ns","rss_ns",57,{"type":137,"name":428,"callback":425,"file":411,"line":429},"atom_ns",58,{"type":137,"name":431,"callback":425,"file":411,"line":432},"rdf_ns",59,{"type":137,"name":434,"callback":435,"file":411,"line":436},"rdf_item","rss_item",60,{"type":137,"name":435,"callback":435,"file":411,"line":438},61,{"type":137,"name":440,"callback":435,"file":411,"line":441},"rss2_item",62,{"type":137,"name":443,"callback":435,"file":411,"line":53},"atom_entry",{"type":221,"name":255,"callback":255,"priority":445,"file":411,"line":446},2,67,{"type":221,"name":448,"callback":449,"priority":11,"file":411,"line":450},"mapp_directions_html","_mapp_directions_html",68,{"type":137,"name":452,"callback":453,"file":454,"line":257},"widgets_init","anonymous","mappress-google-maps-for-wordpress\\mappress_pro.php",{"type":137,"name":156,"callback":456,"file":454,"line":457},"save_post_update",17,{"type":137,"name":156,"callback":459,"file":454,"line":460},"save_post_create",19,{"type":137,"name":462,"callback":463,"priority":11,"file":454,"line":464},"added_post_meta","post_meta_update",22,{"type":137,"name":466,"callback":463,"priority":11,"file":454,"line":467},"updated_post_meta",23,{"type":137,"name":469,"callback":463,"priority":11,"file":454,"line":470},"deleted_post_meta",24,{"type":137,"name":167,"callback":472,"priority":27,"file":473,"line":47},"map_navigator_taxonomies","theme.functions.php",[475,480,484],{"action":476,"nopriv":477,"callback":478,"hasNonce":477,"hasCapCheck":477,"file":411,"line":479},"mapp_map_save",false,"ajax_map_save",48,{"action":481,"nopriv":477,"callback":482,"hasNonce":477,"hasCapCheck":477,"file":411,"line":483},"mapp_map_delete","ajax_map_delete",49,{"action":485,"nopriv":477,"callback":486,"hasNonce":477,"hasCapCheck":477,"file":411,"line":487},"mapp_map_create","ajax_map_create",50,[],[490,494],{"tag":491,"callback":492,"file":411,"line":493},"mappress","shortcode_map",44,{"tag":495,"callback":496,"file":454,"line":192},"mashup","shortcode_mashup",[],3,{"dangerousFunctions":500,"sqlUsage":523,"outputEscaping":548,"fileOperations":868,"externalRequests":14,"nonceChecks":27,"capabilityChecks":498,"bundledLibraries":869},[501,505,508,510,512,516,518,521],{"fn":502,"file":411,"line":503,"context":504},"unserialize",117,"$mapdata = unserialize($mapdata);",{"fn":502,"file":411,"line":506,"context":507},121,"$poidata = unserialize($poidata);",{"fn":502,"file":411,"line":509,"context":504},383,{"fn":502,"file":411,"line":511,"context":507},385,{"fn":502,"file":513,"line":514,"context":515},"mappress-google-maps-for-wordpress\\mappress_api.php",279,"$map = unserialize($result->obj);",{"fn":502,"file":513,"line":517,"context":515},300,{"fn":519,"file":454,"line":257,"context":520},"create_function","add_action('widgets_init', create_function('', 'return register_widget(\"Mappress_Widget\");'));",{"fn":502,"file":522,"line":121,"context":515},"remap_pois.php",{"prepared":524,"raw":109,"locations":525},38,[526,529,531,534,536,538,540,542,545],{"file":411,"line":527,"context":528},138,"$wpdb->query() with variable interpolation",{"file":411,"line":530,"context":528},139,{"file":411,"line":532,"context":533},954,"$wpdb->get_var() with variable interpolation",{"file":513,"line":535,"context":528},250,{"file":513,"line":537,"context":528},255,{"file":513,"line":539,"context":528},379,{"file":513,"line":541,"context":528},381,{"file":454,"line":543,"context":544},465,"$wpdb->get_col() with variable interpolation",{"file":546,"line":422,"context":547},"wp-affiliate-platform\\register.php","$wpdb->get_results() with variable interpolation",{"escaped":11,"rawEcho":549,"locations":550},181,[551,554,556,558,559,561,563,565,567,569,571,573,575,577,579,581,583,585,587,589,591,593,595,597,598,600,602,604,606,608,610,611,613,614,616,618,619,620,621,622,623,625,626,628,630,631,633,635,637,639,641,643,645,647,649,651,653,655,657,659,661,663,665,667,669,671,673,675,677,679,681,683,685,687,689,691,693,695,697,699,701,703,704,706,708,710,712,714,716,718,720,722,724,726,728,730,731,732,733,734,736,738,740,742,743,745,747,749,751,753,755,757,759,761,762,763,765,767,769,770,771,772,773,774,776,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,795,797,799,800,801,803,805,807,808,809,811,812,813,815,817,818,820,821,823,826,828,831,833,835,837,839,841,843,845,847,849,851,853,855,857,858,860,862,864,866],{"file":552,"line":498,"context":553},"examples\\example-display-map-navigator-top.php","raw output",{"file":140,"line":555,"context":553},649,{"file":140,"line":557,"context":553},692,{"file":140,"line":557,"context":553},{"file":140,"line":560,"context":553},705,{"file":140,"line":562,"context":553},710,{"file":140,"line":564,"context":553},714,{"file":140,"line":566,"context":553},719,{"file":140,"line":568,"context":553},762,{"file":140,"line":570,"context":553},763,{"file":140,"line":572,"context":553},777,{"file":140,"line":574,"context":553},789,{"file":140,"line":576,"context":553},792,{"file":140,"line":578,"context":553},795,{"file":140,"line":580,"context":553},798,{"file":140,"line":582,"context":553},801,{"file":140,"line":584,"context":553},804,{"file":140,"line":586,"context":553},1256,{"file":140,"line":588,"context":553},1415,{"file":140,"line":590,"context":553},1421,{"file":140,"line":592,"context":553},1450,{"file":140,"line":594,"context":553},1574,{"file":405,"line":596,"context":553},238,{"file":405,"line":535,"context":553},{"file":411,"line":599,"context":553},93,{"file":411,"line":601,"context":553},94,{"file":411,"line":603,"context":553},124,{"file":411,"line":605,"context":553},125,{"file":411,"line":607,"context":553},387,{"file":411,"line":609,"context":553},388,{"file":411,"line":258,"context":553},{"file":411,"line":612,"context":553},555,{"file":411,"line":278,"context":553},{"file":411,"line":615,"context":553},564,{"file":411,"line":617,"context":553},572,{"file":411,"line":317,"context":553},{"file":411,"line":338,"context":553},{"file":411,"line":357,"context":553},{"file":411,"line":372,"context":553},{"file":411,"line":375,"context":553},{"file":411,"line":624,"context":553},611,{"file":411,"line":383,"context":553},{"file":411,"line":627,"context":553},615,{"file":411,"line":629,"context":553},616,{"file":411,"line":395,"context":553},{"file":411,"line":632,"context":553},626,{"file":411,"line":634,"context":553},634,{"file":411,"line":636,"context":553},643,{"file":411,"line":638,"context":553},652,{"file":411,"line":640,"context":553},659,{"file":411,"line":642,"context":553},664,{"file":411,"line":644,"context":553},672,{"file":411,"line":646,"context":553},673,{"file":411,"line":648,"context":553},676,{"file":411,"line":650,"context":553},677,{"file":411,"line":652,"context":553},678,{"file":411,"line":654,"context":553},681,{"file":411,"line":656,"context":553},682,{"file":411,"line":658,"context":553},683,{"file":411,"line":660,"context":553},686,{"file":411,"line":662,"context":553},687,{"file":411,"line":664,"context":553},688,{"file":411,"line":666,"context":553},695,{"file":411,"line":668,"context":553},696,{"file":411,"line":670,"context":553},699,{"file":411,"line":672,"context":553},700,{"file":411,"line":674,"context":553},703,{"file":411,"line":676,"context":553},704,{"file":411,"line":678,"context":553},716,{"file":411,"line":680,"context":553},727,{"file":411,"line":682,"context":553},736,{"file":411,"line":684,"context":553},739,{"file":411,"line":686,"context":553},750,{"file":411,"line":688,"context":553},751,{"file":411,"line":690,"context":553},757,{"file":411,"line":692,"context":553},764,{"file":411,"line":694,"context":553},771,{"file":411,"line":696,"context":553},778,{"file":411,"line":698,"context":553},788,{"file":411,"line":700,"context":553},805,{"file":411,"line":702,"context":553},814,{"file":411,"line":409,"context":553},{"file":411,"line":705,"context":553},824,{"file":411,"line":707,"context":553},835,{"file":411,"line":709,"context":553},836,{"file":411,"line":711,"context":553},837,{"file":411,"line":713,"context":553},845,{"file":411,"line":715,"context":553},899,{"file":411,"line":717,"context":553},901,{"file":411,"line":719,"context":553},957,{"file":411,"line":721,"context":553},962,{"file":411,"line":723,"context":553},967,{"file":411,"line":725,"context":553},1040,{"file":513,"line":727,"context":553},508,{"file":513,"line":729,"context":553},549,{"file":513,"line":615,"context":553},{"file":513,"line":297,"context":553},{"file":513,"line":617,"context":553},{"file":513,"line":398,"context":553},{"file":513,"line":735,"context":553},630,{"file":513,"line":737,"context":553},635,{"file":513,"line":739,"context":553},656,{"file":513,"line":741,"context":553},657,{"file":513,"line":648,"context":553},{"file":454,"line":744,"context":553},440,{"file":454,"line":746,"context":553},474,{"file":454,"line":748,"context":553},477,{"file":454,"line":750,"context":553},481,{"file":454,"line":752,"context":553},484,{"file":454,"line":754,"context":553},488,{"file":454,"line":756,"context":553},491,{"file":454,"line":758,"context":553},494,{"file":454,"line":760,"context":553},497,{"file":454,"line":158,"context":553},{"file":454,"line":182,"context":553},{"file":454,"line":764,"context":553},525,{"file":454,"line":766,"context":553},532,{"file":454,"line":768,"context":553},536,{"file":454,"line":232,"context":553},{"file":454,"line":236,"context":553},{"file":454,"line":304,"context":553},{"file":454,"line":307,"context":553},{"file":454,"line":317,"context":553},{"file":454,"line":775,"context":553},583,{"file":454,"line":777,"context":553},605,{"file":454,"line":777,"context":553},{"file":454,"line":777,"context":553},{"file":454,"line":379,"context":553},{"file":454,"line":379,"context":553},{"file":454,"line":379,"context":553},{"file":454,"line":624,"context":553},{"file":454,"line":624,"context":553},{"file":454,"line":624,"context":553},{"file":454,"line":629,"context":553},{"file":454,"line":391,"context":553},{"file":454,"line":395,"context":553},{"file":454,"line":398,"context":553},{"file":454,"line":398,"context":553},{"file":454,"line":402,"context":553},{"file":454,"line":632,"context":553},{"file":454,"line":794,"context":553},627,{"file":454,"line":796,"context":553},628,{"file":454,"line":798,"context":553},633,{"file":454,"line":634,"context":553},{"file":454,"line":737,"context":553},{"file":454,"line":802,"context":553},640,{"file":454,"line":804,"context":553},641,{"file":454,"line":806,"context":553},642,{"file":454,"line":555,"context":553},{"file":454,"line":555,"context":553},{"file":454,"line":810,"context":553},650,{"file":454,"line":810,"context":553},{"file":454,"line":741,"context":553},{"file":454,"line":814,"context":553},661,{"file":454,"line":816,"context":553},670,{"file":454,"line":654,"context":553},{"file":454,"line":819,"context":553},684,{"file":454,"line":662,"context":553},{"file":454,"line":822,"context":553},690,{"file":824,"line":825,"context":553},"misc_func.php",35,{"file":824,"line":827,"context":553},36,{"file":829,"line":830,"context":553},"wp-affiliate-platform\\misc_func.php",46,{"file":829,"line":832,"context":553},47,{"file":546,"line":834,"context":553},149,{"file":546,"line":836,"context":553},177,{"file":546,"line":838,"context":553},183,{"file":546,"line":840,"context":553},189,{"file":546,"line":842,"context":553},195,{"file":546,"line":844,"context":553},201,{"file":546,"line":846,"context":553},207,{"file":546,"line":848,"context":553},213,{"file":546,"line":850,"context":553},219,{"file":546,"line":852,"context":553},228,{"file":546,"line":854,"context":553},237,{"file":546,"line":856,"context":553},246,{"file":546,"line":537,"context":553},{"file":546,"line":859,"context":553},261,{"file":546,"line":861,"context":553},287,{"file":546,"line":863,"context":553},296,{"file":546,"line":865,"context":553},348,{"file":546,"line":867,"context":553},363,13,[],[871,894,904,921,947],{"entryPoint":872,"graph":873,"unsanitizedCount":14,"severity":893},"post (map-navigator.php:271)",{"nodes":874,"edges":890},[875,880,884],{"id":876,"type":877,"label":878,"file":405,"line":879},"n0","source","$_FILES",312,{"id":881,"type":882,"label":883,"file":405,"line":879},"n1","transform","→ stripBOM()",{"id":885,"type":886,"label":887,"file":405,"line":888,"wp_function":889},"n2","sink","file_put_contents() [File Write]",740,"file_put_contents",[891,892],{"from":876,"to":881,"sanitized":477},{"from":881,"to":885,"sanitized":477},"medium",{"entryPoint":895,"graph":896,"unsanitizedCount":14,"severity":893},"\u003Cmap-navigator> (map-navigator.php:0)",{"nodes":897,"edges":901},[898,899,900],{"id":876,"type":877,"label":878,"file":405,"line":879},{"id":881,"type":882,"label":883,"file":405,"line":879},{"id":885,"type":886,"label":887,"file":405,"line":888,"wp_function":889},[902,903],{"from":876,"to":881,"sanitized":477},{"from":881,"to":885,"sanitized":477},{"entryPoint":905,"graph":906,"unsanitizedCount":14,"severity":920},"ajax_map_save (mappress-google-maps-for-wordpress\\mappress.php:150)",{"nodes":907,"edges":917},[908,911,913],{"id":876,"type":877,"label":909,"file":411,"line":910},"$_POST",159,{"id":881,"type":882,"label":912,"file":411,"line":910},"→ save()",{"id":885,"type":886,"label":914,"file":513,"line":915,"wp_function":916},"query() [SQLi]",330,"query",[918,919],{"from":876,"to":881,"sanitized":477},{"from":881,"to":885,"sanitized":477},"high",{"entryPoint":922,"graph":923,"unsanitizedCount":946,"severity":920},"\u003Cmappress> (mappress-google-maps-for-wordpress\\mappress.php:0)",{"nodes":924,"edges":941},[925,927,929,930,934,937,939],{"id":876,"type":877,"label":909,"file":411,"line":926},151,{"id":881,"type":886,"label":928,"file":411,"line":509,"wp_function":502},"unserialize() [Object Injection]",{"id":885,"type":877,"label":909,"file":411,"line":926},{"id":931,"type":886,"label":932,"file":411,"line":607,"wp_function":933},"n3","echo() [XSS]","echo",{"id":935,"type":877,"label":936,"file":411,"line":910},"n4","$_POST (x2)",{"id":938,"type":882,"label":912,"file":411,"line":910},"n5",{"id":940,"type":886,"label":914,"file":513,"line":915,"wp_function":916},"n6",[942,943,944,945],{"from":876,"to":881,"sanitized":477},{"from":885,"to":931,"sanitized":477},{"from":935,"to":938,"sanitized":477},{"from":938,"to":940,"sanitized":477},4,{"entryPoint":948,"graph":949,"unsanitizedCount":1018,"severity":920},"\u003Cregister> (wp-affiliate-platform\\register.php:0)",{"nodes":950,"edges":1005},[951,953,955,957,958,960,961,963,965,968,970,973,975,978,980,983,985,988,990,993,995,998,1000,1003],{"id":876,"type":877,"label":909,"file":546,"line":952},96,{"id":881,"type":886,"label":914,"file":546,"line":954,"wp_function":916},97,{"id":885,"type":877,"label":956,"file":546,"line":836},"$_POST['afirstname']",{"id":931,"type":886,"label":932,"file":546,"line":836,"wp_function":933},{"id":935,"type":877,"label":959,"file":546,"line":838},"$_POST['alastname']",{"id":938,"type":886,"label":932,"file":546,"line":838,"wp_function":933},{"id":940,"type":877,"label":962,"file":546,"line":840},"$_POST['acompany']",{"id":964,"type":886,"label":932,"file":546,"line":840,"wp_function":933},"n7",{"id":966,"type":877,"label":967,"file":546,"line":842},"n8","$_POST['awebsite']",{"id":969,"type":886,"label":932,"file":546,"line":842,"wp_function":933},"n9",{"id":971,"type":877,"label":972,"file":546,"line":844},"n10","$_POST['aemail']",{"id":974,"type":886,"label":932,"file":546,"line":844,"wp_function":933},"n11",{"id":976,"type":877,"label":977,"file":546,"line":846},"n12","$_POST['paypal_email']",{"id":979,"type":886,"label":932,"file":546,"line":846,"wp_function":933},"n13",{"id":981,"type":877,"label":982,"file":546,"line":848},"n14","$_POST['astreet']",{"id":984,"type":886,"label":932,"file":546,"line":848,"wp_function":933},"n15",{"id":986,"type":877,"label":987,"file":546,"line":850},"n16","$_POST['atown']",{"id":989,"type":886,"label":932,"file":546,"line":850,"wp_function":933},"n17",{"id":991,"type":877,"label":992,"file":546,"line":854},"n18","$_POST['apostcode']",{"id":994,"type":886,"label":932,"file":546,"line":854,"wp_function":933},"n19",{"id":996,"type":877,"label":997,"file":546,"line":537},"n20","$_POST['aphone']",{"id":999,"type":886,"label":932,"file":546,"line":537,"wp_function":933},"n21",{"id":1001,"type":877,"label":1002,"file":546,"line":859},"n22","$_POST['afax']",{"id":1004,"type":886,"label":932,"file":546,"line":859,"wp_function":933},"n23",[1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017],{"from":876,"to":881,"sanitized":477},{"from":885,"to":931,"sanitized":477},{"from":935,"to":938,"sanitized":477},{"from":940,"to":964,"sanitized":477},{"from":966,"to":969,"sanitized":477},{"from":971,"to":974,"sanitized":477},{"from":976,"to":979,"sanitized":477},{"from":981,"to":984,"sanitized":477},{"from":986,"to":989,"sanitized":477},{"from":991,"to":994,"sanitized":477},{"from":996,"to":999,"sanitized":477},{"from":1001,"to":1004,"sanitized":477},12,{"summary":1020,"deductions":1021},"The mapnavigator plugin version 1.1.0 exhibits a concerning security posture due to significant vulnerabilities identified in the static analysis.  A major red flag is the presence of three AJAX handlers that lack authentication checks, creating a substantial attack surface. Furthermore, the taint analysis revealed three high-severity flows with unsanitized paths, indicating potential for attackers to inject malicious data.  The plugin also heavily relies on dangerous functions like `unserialize` and `create_function`, which are often associated with security risks if not handled with extreme care.  The output escaping is also alarmingly poor, with only 5% of outputs properly escaped, increasing the risk of cross-site scripting (XSS) vulnerabilities.\n\nWhile the plugin has no recorded CVEs, this historical absence of public vulnerabilities should not be interpreted as a sign of robust security, especially given the critical findings in the static analysis. The low percentage of prepared SQL statements (81%) also presents a risk of SQL injection, although less severe than the other identified issues. The lack of nonce checks on AJAX endpoints is another critical oversight. The plugin's strength lies in its clean vulnerability history and absence of bundled libraries, but these are overshadowed by the severe security flaws present in its current version.",[1022,1024,1026,1028,1030,1032],{"reason":1023,"points":11},"AJAX handlers without auth checks",{"reason":1025,"points":122},"High severity unsanitized taint flows",{"reason":1027,"points":257},"Use of dangerous functions (unserialize, create_function)",{"reason":1029,"points":257},"Low percentage of properly escaped output",{"reason":1031,"points":47},"Low percentage of prepared SQL statements",{"reason":1033,"points":11},"No nonce checks on AJAX","2026-03-16T23:54:40.054Z",{"wat":1036,"direct":1045},{"assetPaths":1037,"generatorPatterns":1040,"scriptPaths":1041,"versionParams":1042},[1038,1039],"\u002Fwp-content\u002Fplugins\u002Fmapnavigator\u002Fcss\u002Fmapnavigator.css","\u002Fwp-content\u002Fplugins\u002Fmapnavigator\u002Fjs\u002Fmapnavigator.js",[],[1039],[1043,1044],"mapnavigator\u002Fcss\u002Fmapnavigator.css?ver=","mapnavigator\u002Fjs\u002Fmapnavigator.js?ver=",{"cssClasses":1046,"htmlComments":1047,"htmlAttributes":1048,"restEndpoints":1053,"jsGlobals":1054,"shortcodeOutput":1055},[],[],[1049,1050,1051,1052],"name=\"nav_importer_organization_name\"","name=\"nav_importer_organization_image\"","name=\"nav_importer_organization_web_link\"","name=\"map_icon\"",[],[],[]]