=== Page Generator Pro ===
Contributors: wpzinc
Donate link: https://www.wpzinc.com/plugins/page-generator-pro
Tags: page,generator,content,bulk,pages
Requires at least: 3.6
Tested up to: 4.9.8
Stable tag: trunk

Generate multiple Pages, Posts and Custom Post Types using dynamic content.

== Description ==

Page Generator allows you to generate multiple Pages, Posts or Custom Post Types, each with their own variation of a base content template.  

Variations can be produced by using keywords, which contain multiple words or phrases that are then cycled through for each Page that is generated.

Generate multiple Pages, Posts or CPT's in bulk by defining:

* Page Title
* Page Slug / Permalink
* Content
* Publish status (Draft or Publish)
* Number of Pages to generate
* Author

[youtube http://www.youtube.com/watch?v=KTBDy3-6Z1E]

= Support =

For all support queries, please email us: <a href="mailto:support@wpzinc.com">support@wpzinc.com</a>

= WP Zinc =

We produce free and premium WordPress Plugins that supercharge your site, by increasing user engagement, boost site visitor numbers
and keep your WordPress web sites secure.

Find out more about us:

* <a href="http://www.wpzinc.com">Our Plugins</a>
* <a href="http://www.facebook.com/wpzinc">Facebook</a>
* <a href="http://twitter.com/wp_zinc">Twitter</a>
* <a href="https://plus.google.com/b/110192203343779769233/110192203343779769233/posts?rel=author">Google+</a>

== Installation ==

1. Upload the `page-generator-pro` folder to the `/wp-content/plugins/` directory
2. Active the Page Generator Pro plugin through the 'Plugins' menu in WordPress
3. Configure the plugin by going to the `Page Generator Pro` menu that appears in your admin menu

== Frequently Asked Questions ==



== Screenshots ==

1. Keywords table
2. Editing a keyword
3. Generating Pages screen

== Changelog ==

= 1.7.7 (2018-09-13) =
* Fix: Generate: Content: Initialize array in a PHP 5+ compatible manner
* Fix: WP-CLI: Honor resume_index option
* Fix: Google Maps: Ensure custom height is honored and not overridden by CSS
* Removed: 500px support (500px no longer grant access to their API to fetch photos. Please note this is outside of our control: https://support.500px.com/hc/en-us/articles/360002435653-API- )

= 1.7.6 (2018-08-30) =
* Added: Generate: Content: Option to force specific Keyword Term when using a Keyword, using e.g. {city:2} to always output the second Term.
* Added: Generate: Term: Option to force specific Keyword Term when using a Keyword, using e.g. {city:2} to always output the second Term.
* Added: WP-CLI: Delete Generated Content (see Docs: https://www.wpzinc.com/documentation/page-generator-pro/generate-wp-cli/)
* Added: WP-CLI: Delete Generated Terms (see Docs: https://www.wpzinc.com/documentation/page-generator-pro/generate-wp-cli/)

= 1.7.5 (2018-08-23) =
* Fix: Generate: Content: Improved error message in Test and Generate mode when the total number of possible keyword term combinations exceeds PHP's floating point limit.
* Fix: Generate: Terms: Improved error message in Test and Generate mode when the total number of possible keyword term combinations exceeds PHP's floating point limit.

= 1.7.4 (2018-08-18) =
* Fix: Generate: Content: Scheduled functionality missing on some upgrades from 1.7.2 to 1.7.3

= 1.7.3 (2018-08-16) =
* Added: Keywords: Import CSV option.  See Docs: https://www.wpzinc.com/documentation/page-generator-pro/keywords-import-csv/

= 1.7.2 (2018-08-09) =
* Fix: Generate: Content: Ignore _wp_page_template if supplied in Post Meta; this ensures the Content Group's Page Template is always honored.

= 1.7.1 (2018-07-26) =
* Added: Keywords: Automatically generate Terms based on Keyword if no Terms are supplied
* Added: Generate: Content: Confirmation dialog when deleting Generated Content
* Added: Generate: Content: Honor Number of Posts settings for Random generating (noting a value must be specified, otherwise 10 Posts generated.  See Docs: https://www.wpzinc.com/documentation/page-generator-pro/generate-content/)

= 1.7.0 (2018-07-19) =
* Fix: Yelp: Serve logo and link over HTTPS
* Fix: Elementor: Spin and replace keywords (note: keyword tags MUST be complete, and NOT broken up by HTML.  See Docs: https://www.wpzinc.com/documentation/page-generator-pro/generate-content/)

= 1.6.9 (2018-07-12) =
* Fix: Elementor: Using existing Templates will be honored in generated content

= 1.6.8 (2018-06-28) =
* Added: Generate: Content: Support for Live Composer
* Fix: Improved licensing mechanism

= 1.6.7 (2018-06-08) =
* Added: Generate: Content: Yoast SEO: Prevent Yoast SEO stripping curly braces from Canonical URL
* Fix: Yelp: Use correct data when reporting errors from Yelp
* Fix: Activation: Better method of deactivating free version of the plugin if it's still active

= 1.6.6 (2018-05-10) =
* Fix: Licensing: Improved performance
* Fix: Activation: Deactivate free version of the plugin if it's still active
* Fix: Generate: Wikipedia Shortcode: Better importing of Wikipedia content

= 1.6.5 (2018-04-26) =
* Added: Generate Content: Support for using Taxonomies as Keywords (e.g. {taxonomy_category})

= 1.6.4 (2018-04-12) =
* Fix: Generate Content: Divi Settings: Ensure that correct Divi Settings can be customised for Posts and Pages
* Fix: Generate Content: Elementor: Display Page Template in frontend preview

= 1.6.3 (2018-04-02) =
* Added: Generate: Test: Honor Resume Index Setting, so a specific starting index can be tested
* Added: Generate: Output: Display Keywords + Term Replacements used in each Page, Post + Term Generation (both wp-admin and wp-cli)

= 1.6.2 (2018-03-22) =
* Added: show_in_rest = false for Content Groups, until we're happy that the Gutenberg editor is stable in WordPress 
* Fix: Shortcodes: 500px: Don't attempt to choose an image index outside of the resultset
* Fix: Shortcodes: YouTube: Don't attempt to choose a video index outside of the resultset
* Fix: Call wp_enqueue_media() on Plugin screens, because Plugins which register Meta Boxes and Yoast SEO wrongly assume that there is always a Visual Editor and Featured Image on a Post Type
* Fix: Generate Content: Permalink: Allow keyword transformations

= 1.6.1 (2018-03-13) =
* Added: Generate Terms
* Fix: Keywords: Prevent spaces in Keywords
* Fix: Generate: Prevent spaces in Permalink
* Fix: Code formatting

= 1.6.0 (2018-03-02) =
* Fix: Class 'Page_Generator_Pro_Geo' not found in includes/admin/install.php on line 58

= 1.5.9 (2018-03-01) =
* Added: Generate Nearby Cities / ZIP Codes: Output format can be any one or more of City, County and/or Zip Code, in any order
* Added: Generate: Generation: Overwrite: Added option to overwrite existing Pages, preserving their existing Published date
* Added: Generate Phone Area Codes
* Added: Shortcode: Filters to all shortcode outputs
* Added: Shortcode: Related Links
* Fix: Generate: 500px: Errors importing 500px images into Media Library

= 1.5.8 (2018-02-01) =
* Added: Generate: Support for X and Pro Themes by ThemeCo
* Fix: Generate: Attributes: Only display Template option if the Post Type has registered templates available
* Fix: Generate: Prevent Preview / View of Group on frontend, which results in errors (use 'Test' method instead)

= 1.5.7 (2018-01-18) =
* Fix: Generate: Use date_i18n() instead of date() to ensure that published Posts honor WordPress' locale

= 1.5.6 (2018-01-10) =
* Added: Generate: Support for Avia Layout Builder (Enfold Theme)

= 1.5.5 (2017-12-14) =
* Added: Generate: WPBakery Visual Composer Backend Editor Support

= 1.5.4 (2017-11-22) =
* Fix: 404 errors on generated Pages when Page Parent was previous set and then removed

= 1.5.3 (2017-11-09) =
* Added: Generate: Support for Page Slug and Keyword in Attributes > Parent
* Added: Generate: Native support for AIOSEO Pack, Yoast SEO and Yoast SEO Premium (see Documentation: https://www.wpzinc.com/documentation/page-generator-pro/generate-seo-integration/)
* Added: Generate: WP-CLI Arguments (see Documentation: https://www.wpzinc.com/documentation/page-generator-pro/generate-wp-cli/)
* Added: Generate: WP-CLI: Support for multiple Group IDs (see Documentation: https://www.wpzinc.com/documentation/page-generator-pro/generate-wp-cli/)
* Added: Generate: WP-CLI: page-generator-pro-groups-list command (see Documentation: https://www.wpzinc.com/documentation/page-generator-pro/generate-wp-cli/)

= 1.5.2 (2017-10-02) =
* Added: Settings: GeoNames Username option (see Documentation: https://www.wpzinc.com/documentation/page-generator-pro/geonames-settings/)
* Added: Post Type Template Support (WordPress 4.7+)
* Added: Generate: Support for large keyword term combinations in All mode (e.g. 100 million+ pages). Requires PHP 5.5+

= 1.5.1 (2017-09-25) =
* Added: Improved UI
* Added: Generate Nearby Cities / ZIP Codes: Ability to generate list of ZIP Codes, with formatting options (City, County, ZIP Code)
* Fix: Uncaught TypeError: Illegal constructor in admin-min.js for clipboard.js functionality

= 1.5.0 (2017-08-10) =
* Fix: Generate: Wikipedia: Detect mb_convert_encoding() function before attempting to parse Wikipedia HTML
* Fix: Google Maps: Use HTTPS and return more accurate latitude and longitude for Cities

= 1.4.9 (2017-07-10) =
* Added: Generate: Overwrite Existing Pages (generated by this Plugin)
* Added: Generate: Featured Image: Alt Tag (for Image URLs and 500px)
* Added: Generate: Custom Fields: Move option
* Fix: Generate: Parent: Added description explaining how to determine the Parent Page ID
* Fix: Keywords: Prevent slashes from displaying / added on double quotation marks

= 1.4.8 (2017-07-05) =
* Fix: Settings: Google: Click here links go to valid Documentation URL
* Fix: Generate: Wikipedia: Improved content building method to avoid blank results from Wikipedia in some cases

= 1.4.7 (2017-06-22) =
* Added: Settings: Google: Google Maps API Disable JS Library option, for installations where another Plugin or Theme might load Google Map's API library already

= 1.4.6 (2017-05-28) =
* Fix: Use utf8_encode on Title, Excerpt and Content if wp_insert_post() fails on generation / testing

= 1.4.5 (2017-05-26) =
* Added: Yelp API v3 Support (no need to define keys or tokens)

= 1.4.4 (2017-04-26) =
* Added: Generate: ACF Support
* Added: All Group Post Metadata has keyword replacement and spintax operations performed on them before being copied to the generated Page/Post/CPT.
* Fix: Improved Generate performance by not duplicating spintax process

= 1.4.3 (2017-04-20) =
* Fix: UTF-8 encoding on Wikipedia content to avoid corrupt character output

= 1.4.2 (2017-04-13) =
* Fix: Undefined property Page_Generator_Pro_PostType::$post_type
* Fix: Muffin Builder: Replace keywords in SEO fields

= 1.4.1 (2017-03-16) =
* Added: Generate: Divi Page and Post Layouts are now available in Page Generator Pro when using Divi > Load from Library

= 1.4.0 (2017-02-27) =
* Fix: Only display Review Helper for Super Admin and Admin

= 1.3.9 (2017-02-20) =
* Added: Review Helper to check if the user needs help
* Fix: Ensure first keyword within spintax at the very start of the content (or a Page Builder module) is replaced with a keyword
* Updated: Dashboard and Licensing Submodules

= 1.3.8 (2017-02-14) =
* Added: Generate: Spintax all fields, including Page Builders
* Added: Post Type: Use variable for Post Type Name for better abstraction
* Fix: Generate: Don't attempt to test for permitted meta boxes if none exist
* Fix: Generate: Check Custom Fields are set before running checks on them
* Fix: Use Plugin Name variable for better abstraction
* Fix: Improved Installation and Upgrade routines

= 1.3.7 (2017-02-09) =
* Added: Generate: Support for Beaver Builder
* Added: Generate: Support for Visual Composer
* Added: Page Builders: Moved integration code and associated functions to frontend facing class for better compatibility
* Fix: Yelp: Fallback to cURL with User-Agent string, if wp_remote_get() fails

= 1.3.6 (2017-01-30) =
* Fix: Changed branding from WP Cube to WP Zinc
* Fix: Updated licensing endpoint to reflect brand change

= 1.3.5 (2017-01-23) =
* Fix: Generate: Parent Page is now an ID field, to prevent memory errors when trying to use wp_dropdown_pages() to list 3,000+ Pages
* Fix: Generate: Improve performance when fetching Number of Generated Pages for a given group, to prevent memory errors

= 1.3.4 (2016-12-30) =
* Fix: Generate: Page = Draft when using Test mode
* Fix: Generate: Copy Divi Post Meta to generated Page(s) to honor Divi settings

= 1.3.3 (2016-12-14) =
* Fix: Generate: Attributes > Parent displays the chosen / saved Parent Page
* Fix: Generate: Spintax: More accurate process for returning correct inline CSS, JSON or general text in curly braces when running spintax routine, rather than stripping it entirely
* Fix: Generate: Prevent "Do you want to leave this site" message when using Action buttons at the bottom of the screen

= 1.3.2 (2016-12-09) =
* Fix: Generate: Handle Google latitude/longitude lookup errors better, instead of returning a 500 server error
* Fix: Generate: Spintax: Return inline CSS or general text in curly braces when running spintax routine, rather than stripping it entirely

= 1.3.1 (2016-12-05) =
* Added: Generate: Support for BeTheme
* Added: Generate: Support for Muffin Page Builder
* Added: Generate: Google Maps: Zoom Option
* Fix: Generate > Nearby Cities: Country dropdown option preserved on form submit error
* Fix: Generate: Improved search/replace method for Custom Fields

= 1.3.0 (2016-11-15) =
* Fix: When upgrading from < 1.2.1 to 1.2.3+, don't try to create a Groups table - just migrate the single Group settings into the new Groups CPT.
* Fix: Only set a Post Name (slug) if one is defined in the Group settings.

= 1.2.9 (2016-11-14) =
* Fix: Undefined variable $notices error on groups.php

= 1.2.8 (2016-11-03) =
* Added: Generate: Support for Avada Theme
* Added: Generate: Support for Fusion Builder

= 1.2.7 (2016-10-24) =
* Added: Generate: Support for Divi 3.0+ Theme
* Added: Generate: Support for Divi Builder Plugin

= 1.2.6 (2016-10-07) =
* Added: Generate: Option to stop Generation part way through the process.
* Added: Generate: Generation will now stop if a server side error is encountered when generating a Page.

= 1.2.5 (2016-10-01) =
* Fix: Keywords: Generate Nearby Cities: Use cURL instead of wp_remote_get() so that the User-Agent header is set correctly (wp_remote_get() would be better, however it results in a 403 Error from the API)
* Fix: Generate: Generating Pages with no Parent would result in Pages not truly Publishing until Updated.
* Fix: CLI: Call to undefined method Page_Generator_Pro_Groups::get_by_id()

= 1.2.4 (2016-09-27) =
* Added: Generate: Hierarchical Taxonomies can have new Taxonomy Term(s) specified, instead of just choosing existing Taxonomy Term(s).
* Fix: Generate: Google Maps, Wikipedia, Yelp, 500px and YouTube buttons reinstated to Groups content editor.
* Fix: Generate: Don't throw a 500 error when an undefined {keyword} is used in a Group.
* Fix: Import/Export: Added support to import JSON configurations generated in 1.2.2 and older.

= 1.2.3 (2016-09-22) =
* Added: Generate: Support for SiteOrigin Page Builder
* Added: Generate: Delete Generated Pages / Posts / CPTs (only for content generated since version 1.2.3)
* Added: Generate: Custom Fields: Meta values use textarea to support multiline text, formatting and HTML / JS markup
* Added: Generate: Duplicate Generation Set
* Fix: Generate: Honor 'Allow Comments' setting
* Fix: Generate: Honor 'Allow trackbacks and pingbacks' setting
* Fix: Generate: Allow Author selection when 'Rotate' is not enabled

= 1.2.2 (2016-07-12) =
* Added: Enable database debugging output if WP_DEBUG enabled
* Fix: Fatal error on installation for Page_Generator_Pro_Groups

= 1.2.1 (2016-07-06) =
* Added: Create, edit, run, delete, import and export multiple generation sets.
* Added: Shortcode: Wikipedia: Support for multiple languages
* Added: Shortcode: Google Maps API Key option (for users who exceed API limits, you can now specify your own Google Maps API key)
* Added: Shortcode: YouTube API Key option (for users who exceed API limits, you can now specify your own Youtube Data API key)
* Added: Generate: Show Page Parent option if Custom Post Type supports parent items
* Added: Generate: Reset Button to deselect taxonomy term(s)
* Added: Generate: Search field on taxonomies
* Added: Generate: Save / Test / Generate options at top and bottom of screen
* Added: Spintax support on custom / meta field values
* Fix: Generate: Improved TinyMCE / Visual Editor shortcode options for Google Maps, Wikipedia, Yelp, 500px and YouTube

= 1.2.0 (2016-06-24) =
* Added: Shortcode: YouTube Video
* Fix: Keyword search / replace on Page Generation is now case insensitive (e.g. {city} and {City} will both be replaced with a term)
* Fix: Out of memory errors when using case variations of a keyword (e.g. {city} and {City})
* Fix: Keyword replacements now fully work in Custom Fields and Taxonomy Terms

= 1.1.9 (2016-06-20) =
* Fix: Use same fallback method on map shortcode as Keywords > Generate Nearby Cities, to ensure lat/lng is always returned where possible

= 1.1.8 (2016-06-16) =
* Added: Keywords: Uppercase flag e.g. {keyword:uppercase_all}
* Added: Keywords: Lowercase flag e.g. {keyword:lowercase_all}
* Added: Keywords: Capitalise first letter flag e.g. {keyword:uppercase_first_character}
* Added: Keywords: Capitalise first letter of each word flag e.g. {keyword:uppercase_first_character_words}
* Added: Keywords: Capitalise first letter of each word flag e.g. {keyword:url}
* Added: Featured Image: 500px option
* Added: Shortcode: 500px Image
* Fix: Generate Nearby Cities: OVER_QUERY_LIMIT will now automatically trigger using OpenStreetMap to fetch latitude/longitude as a fallback

= 1.1.7 (2016-06-09) =
* Added: Spintax support on Tags
* Added: Featured Image option
* Added: Generate Nearby Cities: Include original city in results option
* Added: Generate Nearby Cities: Country is now a dropdown field to avoid ambiguity in guessing a country's code
* Fix: Generate Nearby Cities: Don't allow a radius of greater than 100 miles to be specified, as the API will not support this
* Fix: Generate Nearby Cities: More meaningful error messages are returned when something goes wrong
* Fix: Increased size of keyword terms database field from TEXT to MEDIUMTEXT, to support larger keyword imports (~ 16 million characters / 16MB ) 

= 1.1.6 =
* Added: Keywords can be included in spins
* Added: Option to choose specific publish / scheduled date
* Added: Option to choose random publish date with min/max date parameters
* Added: Contextual help to Generate screen
* Fix: Only parse Page Generator Pro shortcodes. Provides compatibility with page builders and other plugins / themes that use shortcodes for content
* Fix: Keep spinning content, even when the final spin has been reached and there are more pages to generate
* Fix: Spins would fail if certain characters existed
* Fix: Licensing mechanism works correctly with W3 Total Cache and memcache

= 1.1.5 =
* Added: Page Generation Methods (All, Sequential and Random)
* Fix: Replace spaces in slug with hyphens

= 1.1.4 =
* Fix: Don't display a division by zero error when keyword does not exist.
* Fix: Changed Yelp oAuth class names to avoid conflicts with other plugins.

= 1.1.3 =
* Added: Singleton Instances for better performance
* Fix: Use do_shortcode() instead of apply_filters( 'the_content' ) so we only parse necessary shortcodes in the content

= 1.1.2 =
* Fix: License check takes place outside of admin if required
* Fix: Activation on new multisite activation

= 1.1.1 =
* Fix: Activation routines for installation
* Fix: Yelp button not displaying on Visual Editor

= 1.1.0 =
* Added: Plugin structure changes and code optimisation for better performance
* Added: Google Maps Shortcode: Zoom attribute
* Added: Wikipedia Shortcode: Number of sections attribute
* Added: Generate: Removed 999 Limit when generating Pages
* Added: Generate: Page Parent Option
* Added: Generate: Schedule Option

= 1.0.9 =
* Fix: Faster Page Generation routine
* Fix: Warnings when not rotating authors 

= 1.0.8 =
* Fix: Fatal error when an error occurs during keyword saving.

= 1.0.7 =
* Added: Generate: Custom Fields (Meta Key/Value Pairs)
* Added: Generate: Progress Bar + Log with AJAX / JS support to prevent timeouts and support larger (~ 1000+) page generations
* Added: Minified JS and CSS
* Fix: Yelp OAuth errors

= 1.0.6 =
* Fix: Use $wpdb->prepare() in place of mysql_real_escape_string()
* Fix: Multisite Activation

= 1.0.5 =
* Added: Support for HTML elements in keyword data

= 1.0.4 =
* Added: Import + Export Settings, allowing users to copy settings to other plugin installations
* Added: Support Panel

= 1.0.3 =
* Fix: Transients for license key validation

= 1.0.2 =
* Fix: Force license key check method to beat aggressive server caching
* Added: Support menu with debug information

= 1.0.1 =
* Added translation support and .pot file

= 1.0 =
* First release.

== Upgrade Notice ==
