Changelog

Every Groundhogg release.
All in one place.

The complete history of Groundhogg, from the first release in 2018 to today. WordPress.org only has room for the recent releases, so this is the full list. Search it, or filter by the kind of change. Each add-on’s own changelog is on its page in the add-on directory.

Latest release: 4.10 · October 21, 2026

Groundhogg 4.10

1 release

4.10

  • ADDED Interface themes. Choose Light, Paper, Slate (dark) or Midnight (dark) for the way the admin looks, or keep the default. A theme is saved per user, and only changes colors, not how anything works.
    • Pick a theme with swatches on your user profile, from the new Look step of the guided setup, or in the command palette.
    • Tables, forms, tabs, modals, notices, tooltips, pickers, the flow editor, the text editors and the email editor are styled for each theme. The email in the editor stays white, as it will look.
    • Delete, trash and spam row actions in list tables show in a danger color, and the loading spinners are new animated ones.
  • ADDED A mobile web app that can be installed on a phone. Look up contacts, call, text or email them, work through your tasks, add notes, fill out forms for a contact and read and reply to messages, all from a screen made for phones. Open it from the new Mobile app tab in Tools, which has a QR code, or from the link on the dashboard. It only shows what the person using it is allowed to do, and add-ons can add their own screens to it.
  • ADDED A recommendation on the dashboard and in the last step of the guided setup, and a new AI agent tab in Tools, for connecting an AI agent. It installs the MCP Adapter plugin, creates an application password for you, and has setup steps for ChatGPT, Claude, Codex, Cursor, Gemini CLI and VS Code, and for custom connectors. Only offered on WordPress 6.9 and later to people who can manage options.
  • ADDED Settings, the tabs of admin pages and the interface themes can be found in the WordPress command palette, opened with Ctrl or Cmd + K, on WordPress 7.0 and later.
  • IMPROVED Admin pages are easier to use on phones. The header no longer sticks to the top, pages have a gutter, forms that sit beside a table, like tags and campaigns, stack, modals use the width of the screen, and the buttons around a table are tidier.
  • TWEAKED The REST API documentation recommends application passwords, and API keys are deprecated.
  • FIXED The link color, font and other text styles of a text block weren't applied to what a replacement code adds, like the links of {files}. They are now added to it as inline styles, so email clients that drop the styles in an email's head show them. Emails saved with a replacement code before this need to be saved in the editor once to get them.
  • FIXED Asking the REST API for a single form by its ID caused an error. It now returns the form, as long as it is active. A PHP warning that DOING_GROUNDHOGG_REST_REQUEST was already defined, when the API loaded more than once, is gone.
  • FIXED The contacts by country, lead source and source page reports counted every contact, not only the ones created in the date range, and logged a notice.
  • FIXED The contact editor ended in a fatal error on a server whose time zone data lists a time zone that it then doesn't know, like America/Ciudad_Juarez. That time zone is left out of the list.
  • FIXED The loading screen of the dashboard reports, the custom reports and bulk edit contacts stayed open when the request for what they show failed. It closes and says that it couldn't load, and bulk edit doesn't open its form without the count of the contacts that it will edit.
  • FIXED Incoming Messages couldn't be set up on a subsite of a multisite network that has its license on the main site. When the White Label add-on is network active and turned on, a subsite uses the licenses of the main site, which are synced and removed there.
  • FIXED The click listener that is added to TinyMCE replaced the setup of every editor in the admin, including the ones of other plugins and the post editor. It is only added on the pages of the plugin.
  • FIXED {owner_signature} logged a PHP warning for a contact that has no owner.

Groundhogg 4.9

5 releases

4.9.4

  • ADDED The email abilities can set an email's custom CSS, custom headers and UTM parameters when they create or update an email, and they return them when an email is read.
  • TWEAKED Four column layouts show as two rows of two columns on small screens, instead of a single column. Use the column padding to space them.
  • FIXED Emails scrolled sideways on phones in email apps that ignore the styles in an email's head, such as Gmail with a non-Google account. This includes emails that were saved before this version.
  • FIXED A font set for the links in a text block could break the CSS that came after it. Emails saved this way are repaired when they are sent or viewed.
  • FIXED The tag picker on the map step of an import failed with "Groundhogg.createState is not a function" when the admin scripts were delayed or deferred. The step now loads the script that it needs.
  • SECURITY Hardened how files are copied to a contact's files by imports, the REST API and webhooks. Credit: Supakiad S. (m3ez) of E-CQURITY, via Wordfence.

4.9.3

  • SECURITY The page for an email in a campaign's archive showed any broadcast on the site, including ones that hadn't been sent and ones in campaigns that aren't public, to anyone who knew its number. It only shows emails that have been sent and are in that campaign, and it can no longer be cached.
  • FIXED Files uploaded to a contact before 4.7.2 were missing from the contact's Files tab, and from {files} and the contact's downloads. 4.7.2 changed the name of the folder that a contact's files are kept in, and the files were left in the old one. They are moved to the right folder when the contact's files are asked for, when the contact's email address is changed, and when an old link to one of them is followed. Files that are in both folders are kept, and nothing is overwritten.
  • FIXED Opening the archive of a campaign that isn't public as someone who manages campaigns ended in a white screen. Anyone else gets a page that says it can't be found.
  • FIXED The flow editor couldn't add or move a step into an empty branch of a split path, random distribution, split test or evergreen sequence. It said the branch didn't exist.
  • FIXED The bounce check could stop moving on when 200 or more emails in the inbox were dated within the same few hours, and read the same emails every time it ran.
  • FIXED Setting up Incoming Messages sent an expired key when the site has an expired master license and a valid license for a single product.
  • FIXED Activating a license key that the site hadn't seen before logged a warning that included the key, and re-activating a key returned the license as it was before.
  • IMPROVED The archive pages and the preferences center, including the profile, erase and unsubscribe pages, have a new look with cards, light and dark colors that follow the visitor's setting, and a layout for small screens.
  • DEV New File_Box::get_legacy_upload_folder_basename() and File_Box::maybe_move_legacy_upload_folder(). get_uploads_folder() moves the files of a folder from before 4.7.2 before it gives the folder.
  • DEV New Rewrites::current_upload_folder_path() and Rewrites::is_in_campaign_archive().
  • DEV The colors of the managed pages are CSS variables that begin with --mp-, set on body.managed-page.

4.9.2

  • ADDED Handle Bounces Now in Settings > Email, for sites that receive bounces in an IMAP inbox. It checks the last 7 days of the inbox and shows how many emails it checked, how many contacts were marked as bounced, and what it decided for each recipient.
  • ADDED When contacts waiting at a deleted step are moved to another step, you can choose to run them when that step normally runs, or on a date and time.
  • SECURITY Messages are now deleted with their contact, and a message that is left without its contact can no longer be read by anyone. Messages left behind by contacts that were deleted before this update are no longer readable, but they aren't deleted.
  • SECURITY The secret that verifies incoming messages is no longer created while a request is being checked, and a secret defined with GH_INBOUND_SECRET is the only secret that's used.
  • FIXED Bounces in an IMAP inbox were missed when the email had been read, or was more than a day old.
    • The bounce checker carries on from where it last got to instead of only looking at unread email from the last day.
    • A failure with a temporary status (4.x.x), like a full mailbox, is never marked as a hard bounce, and the action in a bounce report is read in any case.
    • A failure with a permanent status (5.x.x) is no longer changed into a temporary one because of what the mail server said about it.
    • A bounce report without a recipient can no longer mark whichever contact is being processed as bounced.
  • FIXED Cancelling a broadcast, including when a segment filter fails while it's scheduling, no longer clears the cancelled events of other broadcasts and flows from the queue.
  • FIXED The Replies widget set to All said there was nothing to read when the newest replies were on contacts that you can't see.
  • FIXED A delay timer set to run on a day that none of its months have, like the 30th of February, ran on the delayed date. It now runs on the last day of the month. A step that has no time to run no longer has contacts put in it, and the reason is recorded as a failed event.
  • FIXED The 4.9 update added an email composed to a contact that no longer exists, or with no contact, to whichever contact was being tracked, and copied an email a second time if the update was interrupted.
  • FIXED Adding the activity table indexes in the 4.9 update locked the table when the server couldn't add them without blocking. It now tries again a few times, and reports the database's error if it can't. Sites that can't add indexes without blocking need to add them manually.
  • IMPROVED Load earlier activity in a contact's timeline keeps looking further back when a stretch of time has no activity, instead of showing nothing, and says "Beginning of contact history" when there is nothing more to load.
  • FIXED Load earlier messages got stuck in a conversation when a whole page of messages was written in the same second, like after emails composed before the 4.9 update were moved, or an import.
  • FIXED An undo or redo in the flow editor that failed partway left the flow showing only part of the change, and cleared the undo history. The flow is put back as it was, and the history is kept.
  • DEV The messages feed takes before_kind and before_id with before, and returns the cursor for the next page in next.
  • DEV Moved contacts take date and time in the deleted step choices of the flow abilities, and Funnel::resolve_deleted_step_events() takes a time timestamp for them. The outcomes include run_at.
  • DEV Task::process() can return null to stop for now and be picked up again on the next pass.
  • DEV New groundhogg/bounce_checker/manual_days and groundhogg/bounce_checker/limit filters, and Bounce_Checker::classify().
  • DEV New Inbound_Signature::ensure(). Inbound_Signature::secret() only reads the secret.
  • UPDATED The license store URL, and the store products now come from License_Manager.

4.9.1

  • SECURITY Hardened how contacts are linked to WordPress users and how sign-in links are created. Credit: Wordfence PRISM, via Wordfence.
    • Linking a contact to a WordPress user now requires permission to edit that user.
    • {auto_login_link} only creates a sign-in link in emails sent to the contact's own user account.
    • Sign-in keys are always blacked out in the email log, and sensitive logs are now hidden from non-administrators.
  • FIXED {auto_login_link} caused a fatal error in emails composed to a contact.
  • FIXED The v3 REST API now checks permission to edit when creating a contact with an email address that already exists.
  • FIXED An email that failed to send left Groundhogg treating the rest of the request as if an email was still being sent.

4.9

  • ADDED Receive replies in Groundhogg. Turn on Incoming Messages in Settings > Email (needs an active Groundhogg license), then switch on "Save replies as messages" in an email's settings, and replies to it are saved to the contact who replied instead of going to your own mailbox. You can also BCC your site's private inbox address to keep a copy of emails you send from your own mailbox.
    • A Messages tab in the contact record shows your conversation with each contact, the emails you've sent them and their replies, laid out like a chat. Emails you composed to contacts before this update are moved into it in the background.
    • A "Replies" dashboard widget lists contacts who've replied and haven't been read yet. Open a conversation right from the dashboard to read it, reply, or mark it read or unread.
    • When composing an email to a contact, choose who it's from out of your sender profiles.
  • ADDED A new, shorter guided setup that gets your site ready to send: your business and who emails come from (with details filled in from WooCommerce or Easy Digital Downloads), privacy, your license, receiving replies, and updates. The last step helps you get started with AI, invite your team, and add your site's users as contacts.
  • ADDED Flow abilities for AI assistants.
    • "Get Flow", "Edit Flow", "Publish Flow Changes" and "Discard Flow Changes" abilities, so an AI assistant can read an existing flow and add, change, move, duplicate, lock or delete its steps. Changes to an active flow are staged until they're published, the same as in the flow editor.
    • Segments used by the abilities can target contacts by behavior: email opens and clicks, page visits, form submissions, flow conversions, and other activity. They can also exclude another segment, and contact searches link to the matching contacts in the Contacts page.
    • The simulate abilities can run against a flow's unpublished changes, so a change can be tested before it's published.
  • ADDED When you publish changes to a flow or activate it, you choose what happens to contacts waiting at steps you deleted: cancel their events, or move them to another step. Before, they were silently removed from the flow. Deleted steps that contacts have already been through are archived, so their history and reports still work.
  • TWEAKED The flow editor has been rebuilt to be much faster. Adding, moving, deleting and changing steps shows right away and saves in the background, and undo and redo now cover step settings, duplicated steps and pasted steps too.
  • TWEAKED If a flow or an email is changed from somewhere else while you have it open in the editor, the editor tells you and offers to reload.
  • TWEAKED Public form submissions are limited to 20 per form, per IP address, every 10 minutes. People who can add contacts aren't limited.
  • TWEAKED The send time optimization option is hidden in the broadcast scheduler for now.
    • Only one person can edit a flow at a time, so two people can't overwrite each other's changes. The flow is unlocked as soon as its editor is closed.
    • Duplicating a step with branches, like a Yes/No, copies the steps in its branches too, and steps copied from one flow can be pasted into another.
    • Steps that other steps rely on, like the step a Reroute goes to or the step another flow's "Add to Flow" starts at, can't be deleted until those steps are changed.
    • The search in the add steps panel stays while you switch between Triggers, Actions and Logic.
    • The flow editor tour is written for people new to Groundhogg.
  • TWEAKED Faster reports, segments and contact timelines.
    • Segments, reports, and contact timelines that filter activity by type or by contact and date are faster, thanks to new indexes on the activity table. Existing sites get them from a background task after updating.
    • Reports and contact counts are cached, so dashboards and reports load faster.
  • TWEAKED Number filters in contact searches understand numbers formatted for your locale, and the flow, step and email filters can match more than one at a time.
  • TWEAKED Settings and integrations.
    • The telemetry setting explains exactly what's shared when it's turned on.
    • Groundhogg's capabilities are grouped under "Groundhogg" in the User Role Editor plugin.
    • Dashboard notices and the template library load from Groundhogg's CDN, with the original servers as a fallback.
  • FIXED Flow triggers and timing.
    • A trigger's "Can be triggered" limit, like "At most once per contact" or "Up to X times per contact in X days", was never enforced.
    • When a trigger fired more than once at the same time, for example tagging several contacts at once, contacts after the first could get the first contact's details in the flow.
    • Delay timers set to run on the last day of the month never ran, dates that don't exist like April 31 ran on the next month, runs on the 29th to the 31st could skip a month, and long delays could ignore which days they were allowed to run on.
    • Delay timers in flows built with the abilities were titled "Wait 3 days" whatever they were set to.
  • FIXED Flow editor and simulator issues.
    • Unsaved step settings were lost when the flow editor couldn't save, and autosave stopped after a failed save.
    • The Publish Changes button stayed off when the only change to a flow was deleting steps, and deactivating a flow brought back steps deleted while it was inactive.
    • The flow simulator stayed stuck loading when the contact it last simulated with had been deleted. Now it asks you to select a contact.
    • The REST API's commit route for flows always returned an error, and importing a flow could interfere with flows imported before it.
    • Branch, trigger and jump lines that should curve were drawn straight when the editor was scrolled.
  • FIXED Contact searches and counts could show out-of-date results right after a tag, activity or custom field changed, and a search combining two flow activity filters ignored the step and date range of the second one.
  • FIXED Email tracking and contact identification.
    • The open tracking pixel was missing from HTML emails that weren't a full HTML document.
    • Contacts that arrived from a link in a tracked email weren't recognized as who they are, so merge tags like {user.*} were blocked for them.
  • FIXED Activating a license from the guided setup or the troubleshooter failed, and the old guided setup never saved its privacy and sender settings.
  • FIXED Forms on pages served by a full page cache could fail to submit because of an out of date nonce.
  • FIXED Triggers that pass a WooCommerce order to a flow logged an "Order properties should not be accessed directly" notice on every paid order.
  • FIXED The query table ability returned every contact, with the wrong total, when it was given filters. It now points to the search contacts ability instead.
  • SECURITY Access and verification hardening.
    • An account could get administrator access by posing as the Groundhogg support user when an admin turned on support access.
    • Contacts created by a form submission are no longer treated as verified visitors, since anyone can submit a form.
    • The privacy policy and terms links in settings are only saved as real links.
  • DEV The flow editor's canvas, settings panels and add steps panel are drawn in JavaScript, and edits are saved as operations through the gh_flow_operations and gh_flow_action ajax actions.
    • Step types can register JavaScript settings, titles and branch previews with Funnel.registerStepType(). Funnel_Step::save(), get_posted_data(), setting_name_prefix() and setting_id_prefix() work as before. See docs/flow-architecture.md.
    • Step::save() takes the settings to save, and Step::update_settings() changes some of them.
  • DEV Query caching and the activity table.
    • Queries take a cache var, false to skip the cache or a number of seconds that results can be stale for, and the groundhogg/query/table_cache_group filter lets queries on other plugins' tables be cached. Table_Query::where() and Where::subWhere() accept a callback.
    • The activity table has two new indexes, type_time_contact_idx (activity_type, timestamp, contact_id) and contact_time_idx (contact_id, timestamp, activity_type, email_id, step_id), which replaces contact_idx. New DB::index_exists(), DB::add_index_online() and DB::is_being_altered() methods.
  • DEV New groundhogg/email/reply_to_messages and groundhogg/inbox/address_prefix filters, and gh/v4/messages/unread and gh/v4/messages/read REST endpoints.
  • DEV Add-ons register their abilities on ordered actions: groundhogg/abilities/register_schema_extensions, groundhogg/abilities/register_step_types, groundhogg/abilities/register_categories and groundhogg/abilities/register_abilities, so step types see the schema extensions of every add-on. See docs/abilities-registration.md.
  • DEV New groundhogg/form/v2/rate_limit and groundhogg/form/v2/rate_limit_window filters for the form submission limit, 0 turns it off.
  • DEV The Legacy_Contact_Query class, deprecated since 3.2, has been removed.

Groundhogg 4.8

4 releases

4.8.3

  • ADDED Custom reports have been rebuilt for a faster, more consistent editor, with new "Table (Tags)" and "Pie Chart (Tags)" report types that group contact counts by one or more tags, with drill-down to the matching contacts.
  • TWEAKED Calendar date pickers have clearer hover states, greyed-out dates that are out of range, and a more interactive month picker.
  • FIXED Admin Notification steps could fail with a fatal error, leaving events stuck "In Progress" and sending duplicate notifications.
  • FIXED Groundhogg's bundled select2 replacement no longer takes over other plugins' select2 dropdowns in wp-admin.
  • FIXED "Translation loading for the groundhogg domain was triggered too early" notice on WordPress 6.7+, by loading the plugin textdomain before the plugin initializes.
  • FIXED Forms built with the "Create Flow" ability could not be submitted.
  • SECURITY Further hardened how contact data and email rendering are handled for visitors whose identity has not been verified. Credit: Ayukiab, via Patchstack.

4.8.2

  • ADDED "Add to Flow" action step, so a flow can enroll the contact in another flow (or restart the same one) at its first step or a step you choose, instead of requiring a separate manual step or automation to do it.
  • ADDED "Simulate Flow" and "Live Simulate Flow" abilities, so an agent can trace what a flow would do for a contact from a given step (branches taken, roughly when timers resolve) with no side effects, or actually run it for real - the same simulation the funnel editor's own "Simulate" panel uses.
  • ADDED "List Settings" and "Update Settings" abilities, backed by a new settings registry with JSON-schema validation, so an agent can discover and change a plugin's registered settings instead of only the objects (contacts, emails, flows, etc.) abilities already covered.
  • ADDED "Add Custom Field" and "Update Custom Field" abilities for creating and editing a contact's custom fields, with the same validation rules the contact editor itself uses.
  • ADDED A "Groundhogg Extensions" ability category: "List Extensions" to see which official add-ons are installed and licensed, "Check License" and "Activate License" to manage a license key, and "Install Extension" to remotely install and activate one - gated on WordPress's own install_plugins/activate_plugins capabilities since it installs code on the site.
  • ADDED "Create Tag" and "Create Campaign"/"Associate Campaign" abilities for creating tags and campaigns and attaching a campaign to other objects, rather than requiring one to already exist.
  • TWEAKED Dashboard widgets can now be reordered by drag-and-drop; the layout is remembered per-browser.
  • SECURITY Hardened handling of contact-submitted data to prevent it from being reinterpreted as active content elsewhere in the CRM. Credit: Ayukiab, via Patchstack.

4.8.1

  • ADDED "Create Flow" and "Activate Flow" abilities, so an AI agent can build a flow (funnel) from scratch, including branching steps, and turn it on. A new "List Step Types" ability lists the buildable step types and their settings so an agent can discover what's available before building.
  • ADDED "List Replacement Codes" ability for discovering the merge tags available for use in emails.
  • ADDED Add-ons can now register their own ability categories and abilities alongside Groundhogg's, and extend the contact and segment schemas with their own fields, so the WordPress Abilities API integration introduced in 4.8 isn't limited to what Groundhogg itself provides.
  • TWEAKED Email-related abilities are now named consistently around "email template" (create-email-template, update-email-template, get-email-template) instead of a mix of "email" and "email-template".
  • TWEAKED Ability descriptions now link out to relevant documentation for easier reference when working with an agent.

4.8

  • ADDED AI agents and other tools can now act on your CRM through the WordPress Abilities API: find and manage contacts and their notes, create and send saved or one-off emails, schedule and report on broadcasts, and add contacts to flows. Every ability runs through the same capability and per-object permission checks as the rest of Groundhogg. This is an early release — more abilities, including SMS, are coming in future updates.
  • ADDED Redesigned contact activity timeline: flow runs and browsing sessions are grouped into collapsible sections, and email opens and clicks are nested under the email they belong to.
    • Failed flow events now show in the timeline along with the error that caused them.
    • Filter the timeline by a specific flow, email, or broadcast, or by activity type, using the new filter picker.
    • "Load earlier activity" button to page further back through a contact's history.
    • Relative date headers and a date/time gutter in the timeline for easier scanning.
    • The contact timeline now loads in a single request, fetched by date range instead of a fixed number of items. Refreshing and paging load only the new slice and update the view in place instead of rebuilding it.
  • ADDED Broadcasts now open in a month calendar instead of a table, so you can see what is going out and when at a glance. Click a broadcast for its send time, audience size, and open and click stats, with links through to its report, preview, recipients, or to cancel it.
    • Click any day from today onwards to schedule a broadcast for it, with the date already filled in.
    • Filter by status from the legend above the calendar: sent, sending, scheduled, pending, or cancelled.
    • The month you are viewing is kept in the address bar, so leaving the page and coming back returns you to where you were.
    • The previous table is still there behind the "List view" link, for searching, sorting, and bulk actions. Whichever of the two you switch to becomes your default the next time you open the page.
  • ADDED The Licenses settings tab now shows a notice when an installed extension has no active license or its license has expired, with a link to groundhogg.io to purchase or renew.
  • ADDED Contacts with no name now display a name inferred from their email address (e.g. "jane.doe@example.com" shows as "Jane Doe") in the contacts table, page title, and profile card.
  • TWEAKED Dropdowns in the admin now use Groundhogg's native item picker instead of the bundled select2 library, for a consistent look and a lighter page load.
  • SECURITY Viewing, editing, deleting, or creating a note or task now also requires access to the contact (or other object) it is attached to. Previously view_notes / view_tasks alone could expose notes and tasks on contacts a user was not otherwise permitted to see, both through the REST API and anywhere the view_note / view_task capabilities are checked.
  • SECURITY Links shown in the contact timeline (such as clicked email links) are validated against a scheme allowlist before rendering, and long links are truncated with hover-to-expand.
  • FIXED Popovers anchored to something near the right edge of the screen could extend past it. They are now kept within the viewport horizontally, as they already were vertically.
  • FIXED Step is_entry()/is_conversion() could trigger "Undefined property" warnings.
  • FIXED Broadcasts using a segment with filters from an outdated add-on could schedule duplicate emails, far more than the segment's contact count. The contact query no longer silently falls back to the legacy engine, and such broadcasts are cancelled with an error instead of scheduling.
  • DEV Abilities API: a first set of abilities is registered on wp_abilities_api_init, covering contacts (get, create, update, search, notes), tags, owners, custom fields, and saved searches; emails (create, list, and send saved emails, list sender profiles, send a saved or composed email to specific contacts); broadcasts (schedule to a segment with optional batching, list, cancel, read open/click report); and flows (list, add a contact or segment). Abilities live in includes/abilities/, each extending \Groundhogg\Abilities\Ability; reusable output shapes are \Groundhogg\Abilities\Schemas\Schema subclasses.
  • DEV Custom objects (experimental — schema and API may change): register lightweight object types with register_custom_object( $type, $args ) instead of creating a dedicated table. Each type is backed by the shared gh_objects / gh_object_meta tables and resolves through get_db(), create_object_from_type(), and the query builder like any first-party object. Extend \Groundhogg\Custom_Object for a typed runtime class. Pass 'show_in_rest' => false to skip the gh/v4/objects/{type} REST controller (CRUD, meta, relationships) and keep the type PHP-only.
  • DEV Contact_Query::used_legacy_fallback() exposes when a query dropped to the legacy engine; new groundhogg/contact_query/legacy_fallback action and groundhogg/contact_query/throw_on_legacy_fallback filter.
  • DEV view_note / view_task (and their edit/delete counterparts) now cascade into a view check on the associated object. New groundhogg/roles/note_association_cap_check_types filter controls which associated types participate (contact, deal, company by default); a type left out keeps the prior behaviour of the blanket view_notes / view_tasks capability plus author scoping.
  • DEV New MakeEl.Calendar month view component. Give it an array of events plus getEventDate and renderEvent and it handles the grid, per-day overflow ("+ N more"), day and event clicks, and month navigation; dayProps and eventProps add classes and attributes per cell or chip. The displayed month can be left to the component or driven from outside with the month prop and onMonthChange, which is what you want when each month's events have to be fetched. Also exported: mergeAttributes, and the date helpers toDate, startOfDay, startOfMonth, dayKey, addDays, and addMonths. enqueue_broadcast_calendar_assets() loads the broadcast calendar's own scripts and styles.
  • DEV gh/v4/broadcasts accepts context=embed, which leaves the email or SMS behind each broadcast out of list responses. Serializing a broadcast in full also builds and merges the whole message, which is far too expensive for a month of them at a time.
  • DEV Scheduling a broadcast dispatches a groundhogg/broadcast/scheduled event on document, with the new broadcast in event.detail.broadcast.
  • DEV admin.js no longer depends on select2. When $.fn.select2 is undefined a polyfill backed by MakeEl.ItemPicker is registered that maps the select2 options still in use (data, ajax, multiple, tags, placeholder, allowClear) and keeps the underlying <select> in sync, so .select2().on('change', ...) / .val() and form submission keep working.

Groundhogg 4.7

3 releases

4.7.2

  • ADDED Click on a contact's profile picture to update it with an image from the Library.
  • TWEAKED Modernized the licensing and updates system.
  • FIXED Authenticated (Sales Rep+) Path Traversal vulnerability. Thanks to @Sergei Pro for reporting responsibly via PatchStack.
  • FIXED Possible Redirection Attack (Phishing). Thanks to @Yaswanth Reddy Sunkara for reporting responsibly via WPScan.

4.7.1

  • FIXED Cron setup page issue with WP 7.1
  • FIXED PHP 7.4 incompatibility.
  • TWEAKED bumped the minimum supported PHP version to 7.4.
  • TWEAKED bumped the minimum supported WP version to 6.9.

4.7

  • ADDED Custom sender profiles in Groundhogg » Settings » Email » Sender Profiles.
  • ADDED If an email is being sent from a user, that user can set a "from name" and "from email" override in their user profile.
  • ADDED When sending a test email there is now an option to copy a preview link to share with a team.
  • TWEAKED Emails now use a "sender profile" rather than a "from user" to enable adding custom sender profiles.
  • FIXED Deals info card broken after last update.
  • FIXED Guided setup not loading.

Groundhogg 4.6

2 releases

4.6.1

  • FIXED Nested global blocks not loading CSS.

4.6

  • ADDED New "Reroute" logic step, allowing contacts to be routed to any other action node in a flow, from anywhere in a flow.
  • TWEAKED The "Logic" flow step subgroup has be renamed "Routing"
  • TWEAKED The "Smart Date Sequence" logic step has been renamed "Date Sync"
  • TWEAKED The "Skip" and "Loop" logic steps have been deprecated (available as legacy steps) since the Reroute step does the same thing but better.

Groundhogg 4.5

16 releases

4.5.15

  • ADDED "Reload page" after form submit setting.
  • ADDED Contact timeline now shows activity and events from flows for sales reps and managers.
  • FIXED Various API permissions issues.
  • FIXED Email editor crashes after dragging a block from a global block namespace to the main namespace.
  • FIXED i18n not working in JS files.
  • FIXED Missing translator comments, incorrect gettext usage, and other localization oversights in JS files.
  • SECURITY Fixed Cross-Site Scripting vulnerability responsibly reported by @thevietronin
  • SECURITY Fixed SQL Injection vulnerability responsibly reported by @JonathanDersch

4.5.14

  • ADDED new Heading block in the email builder.
  • TWEAKED Removed www. from URLs to Groundhogg.io
  • FIXED UI bug in date search filters.

4.5.13

  • TWEAKED Removed the sitewide review nag and replaced it with a dashboard-specific, less intrusive request.
  • SECURITY Fixed non-required dropdown and radio fields not validating inputs correctly. Credit to Artus KG for practicing responsible disclosure.

4.5.12

  • FIXED Broken user role filter.

4.5.11

  • ADDED Log summary reports in Logs » Manage.
  • FIXED Purge failed events tool not working.
  • FIXED Dismissed notifications appearing as active in notifications sidebar.
  • FIXED Incorrect GDPR marketing consent value shown in form submission summary.
  • FIXED Usage of deprecated filters.

4.5.10

  • ADDED Can mark recommendations or checklist items as complete in dashboard.
  • FIXED Some contact queries returning contacts with incorrect contact IDs.
  • FIXED Multiple PHP warnings.

4.5.9

  • FIXED Tracking links not working because of silly signature generation bug.
  • FIXED Prevent naughty use of select parameter for queries. Credit to WordFence.

4.5.8

  • FIXED Edge case bug where the first name of the logged-in user is the same name as a callable function causing a fatal error when trying to load remote notices. Fixed by no longer allowing callbacks as replacements for the replacer class.

4.5.7

  • ADDED Simulator logging for failed emails.
  • FIXED Archive fatal error if no tracked contact record.
  • FIXED Proper SQL escaping for the user role filter.
  • FIXED Bug with event queue not moving events to history.

4.5.6

  • FIXED Vulnerability responsibly disclosed by WordFence.

4.5.5

  • FIXED Email embed shortcode.
  • FIXED Legacy tracking link and open backwards compatibility.

4.5.4

  • ADDED REST API endpoints for email archives.
  • ADDED Conditional replacements to show content in plain text or HTML context only.
  • ADDED Simple markdown support in flow step notes.
  • IMPROVED Updated all documentation references to the new documentation site.
  • IMPROVED Item Picker keyboard accessibility.
  • IMPROVED Notifications now pull from Groundhogg's updates email archive, and only show when clicking the 🔔 icon.
  • TWEAKED Use wp_safe_redirect() when using auto-login.
  • REMOVED Notifications from the weekly/monthly email report.
  • FIXED Broken meta-queries when using Legacy_Contact_Query
  • FIXED Tag applied dates showing in incorrect timezone.
  • FIXED Tracking links stopped working after WordPress salt rotation.
  • FIXED WordPress User info card not showing for users with list_users cap in multisite.

4.5.3

  • FIXED Broken email processing rule causing some links to not work.
  • FIXED Broken permissions check on the contact API for sales representatives.
  • FIXED Icon sizes wrong for global/custom font controls in the email editor.

4.5.2

  • FIXED Groundhogg components CSS broken on non-Groundhogg admin screens.
  • FIXED Recent broadcast queries causing scheduler error.
  • FIXED Recent broadcast queries not ordered correctly.

4.5.1

  • SECURITY Fixed possible SQL injection vulnerability.

4.5

  • ADDED Recurring broadcast scheduler and schedules admin.
  • ADDED Recent recipient queries will appear in the segmentation step when scheduling broadcasts.
  • ADDED Necessary groundwork for send time optimization advanced feature.
  • ADDED Sales Manager team assignments.
  • ADDED URL allowlist and filter for UTM params in emails.
  • ADDED Draft indicator in Flow email picker.
  • ADDED meta_compare support in the {posts} replacement code.
  • ADDED {urlencode} replacement code.
  • IMPROVED Updated Groundhogg UI and colors to match moder WordPress admin theme.
  • IMPROVED Export preview UI.
  • IMPROVED New tracking link structure offers shorter but hardened links.
  • TWEAKED GDPR Consents will also appear on the "Manage Preferences" screen.
  • TWEAKED Moved the unsubscribe form to the top of "Manage Preferences" screen so it's not hidden.
  • TWEAKED Object duplication will also duplicate any object relationships.
  • SECURITY Hardened tracking links to prevent possible redirect attack.
  • SECURITY Fixed possible SQL injection attack.
  • SECURITY Removed delete file endpoints for imports and exports.
  • FIXED Compatibility with WordPress 7.0.
  • FIXED Trashed emails appearing in the Flow email picker.
  • FIXED Some Sales Rep dashboard widgets not loading.
  • FIXED Contact count preview showing 0 for sales reps.
  • FIXED Partial first & last name quick search was not working.

Groundhogg 4.4

3 releases

4.4.2

  • IMPROVED Export preview UI.
  • FIXED Some Sales Rep dashboard widgets not loading.
  • FIXED Contact count preview showing 0 for sales reps.

4.4.1

  • ADDED Automatic staging environment detection to prevent outgoing emails.
  • ADDED Message type and email service to the email log table and the details modal.
  • SECURITY Fixed 2 vulnerabilities responsibly disclosed to us by Patchstack.

4.4

  • ADDED "Contact Peek" feature
    • Allows you to instantly see basic contact details in any non-Groundhogg screen (like WooCommerce or MailHawk) in the WordPress admin whenever an email address is detected.
    • If a contact does not exist, you'll be given the option to create one and edit it from where you are.
  • ADDED Developer filter to register additional free inbox providers.

Groundhogg 4.3

4 releases

4.3.3

  • ADDED Automatic detection of free inbox providers for contacts.
  • ADDED The "Is Free Email?" search filter to filter by free email inbox providers.
  • ADDED New base components and classes for use in addons.
  • FIXED Settings page pickers were not working due to a missing script if the toolbar widget is disabled.
  • FIXED Broadcast send time estimate is not showing the correct time estimate.

4.3.2

  • FIXED Sanitization issue with number fields causing numbers with more than 4 digits not to save.

4.3.1

  • ADDED Quarter time ranges (This Quarter, Next Quarter, Last Quarter) for date filters.
  • ADDED Decimal support for number fields.
  • ADDED View profile button to the simulator contact card.
  • FIXED Missing support for event arguments in the simulator (backend magic wizardy).
  • FIXED Flow template categories and search feature not working if the toolbar widget was disabled.

4.3

  • ADDED 🌐 Global blocks (email template parts) in the email editor.
    • Save any block as a Global Block.
    • Are synced across all your templates.
    • Can be edited inline.
    • Can be detached to edit separately.
    • Can be exported and imported.
  • TWEAKED Editor design
    • Reduced block toolbar icon sizes.
    • Added a container border for container blocks in the block inspector.

Groundhogg 4.2

23 releases

4.2.12

  • ADDED Bluesky social icons for the email editor.
  • ADDED Bulk delete bulk action for campaigns.
  • FIXED Email preview link stopped working in the emails table.
  • FIXED Notice generated by improper array access check when submitting a form.

4.2.11

  • ADDED Setting in Settings » Misc » Features to disable geolocation services.
  • TWEAKED IP geolocation is now a licensed feature since there are no longer any free geolocation providers.
  • TWEAKED Use local moment.js for the chart library.
  • FIXED Possible infinite recursion fatal error when editing flows.

4.2.10

  • ADDED Start tracking the date when a tag is added to a contact. Not retroactive.
  • ADDED Developer filters to modify queries for the email archive.
  • FIXED UI issue in The Flow History filter.
  • FIXED Form selection in the Form Block not working unless a form was already selected.
  • FIXED Description formatting for the Advanced Timer action.
  • FIXED PHP Notice if a custom field tab was not configured correctly.

4.2.9

  • ADDED WP Fusion event tracking filter so you don't have to use the custom activity filter.
  • ADDED "Day of Week" and "Day of Month" filters for conditional logic.
  • ADDED Email preview action to the broadcasts table and broadcast report.
  • IMPROVED Recaptcha and Turnstile scripts are now only enqueued if the fields are actually being used.
  • FIXED Some of the meta-comparisons for the custom activity filter and submission filters not returning correct results.

4.2.8

  • IMPROVED Gutenberg form embed block has been updated to be compatible with latest Gutenberg standards.
  • IMPROVED The Gutenberg form embed block supports theme and color directly and can override the form's settings in the flow.
  • FIXED Preview text spacer has unrecognized HTML entity in outlook inboxes.
  • FIXED Anchor tags in text blocks getting inline CSS fill inconsistent with surrounding text.
  • FIXED Fatal error if trigger attempts to capture details from private class properties or methods.

4.2.7

  • ADDED Built-in support for Polylang for the preferences page.
  • ADDED Bulk editing campaigns for emails, broadcasts, and flows.
  • ADDED New broadcasts reports. Broadcasts sent and total broadcast emails sent.
  • TWEAKED More space between preview text and content.
  • SECURITY Patched vulnerability. Credit to WordFence for practicing responsible disclosure.
  • FIXED Email template toggle showing enabled even if disabled.
  • FIXED Broken GeoIP reference.

4.2.6.1

  • FIXED Recaptcha field missing in rendered form if the recaptcha version is v3
  • FIXED Font style not parsed correctly from text blocks if no <p> tag is present.
  • FIXED Escaped HTML visible on the licenses page.

4.2.6

  • ADDED Frequency limits for triggers.
  • ADDED Batch scheduling for adding contacts to flows.
  • ADDED Support for litespeed_finish_request() in the gh-cron.php file.
  • ADDED Groundwork for AI in the email editor.
  • ADDED New API endpoint to fetch broadcast reports.
  • ADDED Step notes will appear in the flow editor, and now also support basic HTML.
  • IMPROVED Exporting of custom fields and metadata.
  • TWEAKED The flow emails table report will show unique clicks instead of all clicks.
  • FIXED Broadcast delayed by 24 hours when using the send in local timezone setting with a dynamic segment.
  • FIXED <title> tag in HTML emails should be the same as the subject line.
  • FIXED safe-mode causing errors on multisite.
  • FIXED Step settings not copied correctly when duplicating or copying steps with unpublished changes.
  • FIXED Turnstile/Recaptcha ignored if disabled in settings even if enabled in forms.
  • FIXED Export page not working if admin toolbar is disabled.

4.2.5.3

  • FIXED Web form editor missing when adding a new blank Web Form trigger.
  • FIXED Fatal error when using the "Process events" button in the logs screen.

4.2.5.2

  • FIXED Contact details card local time displaying incorrect time.

4.2.5.1

  • FIXED Flow icons not loading correctly when using custom wp-content directory.
  • FIXED Custom Fields (properties) not loading when creating a fresh pipeline
  • FIXED Redaction query timeout on MySQL 8+

4.2.5

  • ADDED Cloudflare Turnstile Integration as an alternative to Google Recaptcha.
  • FIXED Missing sprintf call on the unsubscribe page causing visible placeholders.

4.2.4.2

  • TWEAKED Refactored usages of file_get_contents() to use the WP_Filesystem instead.
  • FIXED Don't use esc_html() for CSS. You'd think WordPress core would have a better internal solution for outputting CSS 🙄

4.2.4.1

  • FIXED mopping up issues related to the refactoring effort.
  • FIXED Text block in the email editor would sometimes bug out.
  • FIXED Changing the font-family of a global font would not update text blocks using that global font.

4.2.4

  • Just an absolute huge refactoring effort with over 1000+ changes to please our WordPress.org overlords' WPCS checklist. Including, but not limited to:
  • Escaping literally anything that can be escaped.
  • Adding translator comments and re-ordering placeholders.
  • Refactoring DB Queries.
  • Replacing PHP functions with WordPress core functions.

4.2.3.2

  • UPDATED Repository plugin name.
  • IMPROVED i18n for date and time.

4.2.3.1

  • FIXED Missing developer action to filter the WP_Query associated with the query loop block.
  • FIXED Filter sanitization not correctly treating "0" as an integer.
  • FIXED Redaction for multi-line textarea not working.

4.2.3

  • ADDED The new {redact} replacement code that will redact details from email logs. You can also use the function Groundhogg\add_redaction( "my text" ); to add redactions programmatically.
  • ADDED Form Submission, Webhook Request, and Webhook Response search filters to filter by historical submission data.
  • ADDED Redaction option for form fields in the advanced tab. Will automatically redact sensitive information from submissions and contact meta after desired time period.
  • TWEAKED Re-ordered the tools page tabs so that sync tools appear first.
  • TWEAKED Changing the label while editing an existing custom field does automatically edit the internal name.
  • TWEAKED When changing the internal name of an existing custom field a warning is shown.
  • FIXED Some search filters requiring joins with 3rd party tables not working if join column is not correctly aliased.
  • FIXED Dropdown fields not showing as pre-filled if the current value in the contact record contained a space.

4.2.2.2

  • FIXED Some search filters requiring joins with 3rd party tables not working if join column is not correctly aliased.

4.2.2.1

  • FIXED Fatal error when uploading new contact CSV import.

4.2.2

  • FIXED User ID not syncing.
  • FIXED Arbitrary file upload vulnerability. Credit to Patchstack for practicing responsible disclosure.

4.2.1

  • HARDENED User ID syncing so that the correct user is always linked with the correct contact
  • HARDENED Sanitization for Query::addJoin()
  • HARDENED Removed sensitive data from the WP User object when returned via JSON.
  • FIXED Email content empty if importing an email template and making no content changes.

4.2

  • ADDED Alter default appearance of emails blocks in the email editor settings.
  • ADDED Explicit save button for email editor settings.
  • ADDED Email Custom CSS (for the whole email, not just a single block) in the advanced tab.
  • OPTIMIZED Overall email HTML and CSS size reduced.
  • FIXED Unable to change from address when composing an email.
  • FIXED Email width set to 0 when a template is imported with no set width.

Groundhogg 4.1

10 releases

4.1.3.2

  • OPTIMIZED Overall email HTML and CSS size reduced.

4.1.3.1

  • HOT FIX 3rd party SMTP plugins not working if the email service is set to WordPress Default.
  • HOT FIX Broadcast scheduler sending extra emails if orderby is specified in the contact query.

4.1.3

  • ADDED Explicit Right-to-Left language support in the email editor as a template option.
  • ADDED Notice to the send-email step in flows if an email is trashed.
  • ADDED New Blocked opt-in status.
  • OPTIMIZED Email log query so it loads faster.
  • OPTIMIZED Background task queries are faster.
  • RESTORED Form submissions through Groundhogg will check the disallowed comment keys setting for keywords to prevent submissions.
  • TWEAKED If a contact's opt-in status is changed to spam or blocked, their opt-in status can only be changed by an admin.
  • FIXED Block background images not showing properly in some email clients.
  • FIXED The broadcast report showed all clicks rather than unique in some areas.
  • FIXED Potential infinite recursion if wp_mail() is called before the init hook.
  • FIXED PHP notice if a flow has no entry triggers.
  • FIXED The email link clicked filter was using the legacy contact query instead of the new one.
  • FIXED The delay timer's run when option was not saving when set to between.
  • FIXED PHP warnings when delay timer step is not fully configured.

4.1.2.1

  • TWEAKED Changed "Fixed Segment" to "Static Segment".
  • FIXED Contact activity timeline not loading in some cases if related resource was deleted.
  • FIXED The same flow step appearing in multiple different trigger branches if the trigger IDs start with the same number.

4.1.2

  • ADDED Custom replacements for Emails and Flows.
  • TWEAKED Moved flow settings to the editor panel instead of modal.
  • FIXED Email picker in flow not showing selected template after creating a new email (display issue only).
  • FIXED Make sure file name is sanitized when deleting exports/imports. Credit to WordFence & Phat Do.

4.1.1.2

  • FIXED Confirmation links not working in WordPress 6.8 due to password hashing changes.

4.1.1.1

  • FIXED Confirmation links not working in WordPress 6.8 due to password hashing changes.

4.1.1

  • ADDED Query Loop block in the email editor for more control over displaying posts in emails.
  • FIXED Multi-select custom fields not displaying correctly in {form_submission} replacement code.
  • FIXED Not all steps appearing in the flow preview in reports.
  • FIXED Non-admins unable to complete tasks due to invalid permissions for fetching options from API.
  • FIXED Unable to update the names of saved searches.
  • FIXED Previous fix to avoid recursive replacements preventing nested replacements from working.
  • FIXED Fatal Error if background task is loaded with an undefined task handler class.
  • FIXED Functional email test not sending despite showing as successful.
  • FIXED Suggested documentation not loading in troubleshooter.

4.1.0.1

  • FIXED Prevent recursive replacement codes.
  • FIXED Fatal error if event arguments is not a strict array.

4.1

  • ADDED Flow Simulation tool to simulate a contact moving through a flow. Makes testing flows way easier.
    • You can also run simulations via the WP CLI.
  • FIXED Filters in logic steps sometimes not appearing.
  • FIXED Background task progress for large tasks not updating, causing them to never complete.
  • FIXED Branch names for multi-branch logic incorrect if nested inside another multi-branch.

Groundhogg 4.0

3 releases

4.0.2

  • FIXED Multi-Branch not always returning the correct branch.

4.0.1

  • FIXED Missing YouTube video in readme.
  • FIXED error notices above flows table if steps that are not registered are used in the flow preview

4.0

  • RENAMED Funnels → Flows, and Benchmarks → Triggers
  • ADDED Flow branching and new logic steps
    • Yes/No logic
    • Multi-branch logic
    • Weight distribution
    • Split-testing
    • Loop, Skip, Stop
    • Smart Date Sequence
  • ADDED Undo & redo for flows.
  • ADDED Copy & paste steps between flows.
  • ADDED The Pass-through setting for triggers to allow contacts to pass through them even without matching conditions.
  • ADDED Additional bulk actions in the event logs tables.
  • ADDED Setting to disable page tracking.
  • ADDED New option in the footer block to disable phone, terms, and policy links.
  • ADDED "Unused" table filter for emails to see templates that are not being used in flows or broadcasts.
  • IMPROVED The Cron Job Setup page with additional instructions and a new layout.
  • IMPROVED Various admin UI improvements like tabs, reporting page width constraint.
  • IMPROVED Made tags in the contacts table clickable for filtering.
  • IMPROVED Add tags while editing options and fields in forms.
  • TWEAKED Simplified the "Start from scratch" email template.
  • TWEAKED Object ID can be omitted from relationship filters for more generic usage.
  • FIXED Fatal error if page query param is present but not a string in non-admin pages.
  • FIXED Incorrect filter for managed page body classes.
  • FIXED Incorrect cached results for plain-text replacements.
  • FIXED Composed email message contact wiped after enabling CC or BCC.
  • FIXED Broadcasts report not filtering by campaign when date range changes.
  • FIXED Array showing in emails when using the {country} replacement instead of nothing or the default value when no country is defined.
  • FIXED Added missing sanitization of form field labels, credit to WordFence for responsible disclosure.
  • DEV New event arguments API which will enable unique arguments to be associated with individual funnel (and other) events. This is VERY COOL! It paves the way for better handling of automation for related objects like orders, deals, and companies.
  • DEV New settings schema for funnel steps.

Groundhogg 3.7

15 releases

3.7.5

  • ADDED The Pass-through setting for benchmarks to allow contacts to pass through them even without matching conditions.
  • ADDED Additional bulk actions in the event logs tables.
  • ADDED Setting to disable page tracking.
  • IMPROVED The Cron Job Setup page with additional instructions and a new layout.
  • IMPROVED Various admin UI improvements like tabs, reporting page width constraint, and responsive funnel step flow for large screens.
  • TWEAKED Object ID can be omitted from relationship filters for more generic usage.
  • TWEAKED Funnels can't be activated unless there is at least one starting benchmark.
  • FIXED Fatal error if page query param is present but not a string in non-admin pages.
  • FIXED Incorrect filter for managed page body classes.
  • FIXED Incorrect cached results for plain-text replacements.
  • FIXED Adding steps to the beginning of a funnel not working.
  • FIXED Composed email message contact wiped after enabling CC or BCC.
  • FIXED Broadcasts report not filtering by campaign when date range changes.
  • FIXED Array showing in emails when using the {country} replacement instead of nothing or the default value when no country is defined.
  • FIXED Added missing sanitization of form field labels.
  • DEV New event arguments API which will enable unique arguments to be associated with individual funnel (and other) events. This is VERY COOL! It paves the way for better handling of automation for related objects like orders, deals, and companies.
  • DEV New settings schema for funnel steps.

3.7.4.1

  • HOT FIX Update script not working if one of the Groundhogg's custom roles was deleted.

3.7.4

  • ADDED Task re-assignment. Tasks can now be assigned to users that are not the contact owner. Tasks can also be re-assigned.
  • ADDED Task bulk editing. Bulk complete, delete, re-assign, and reschedule tasks from within the tasks widget.
  • ADDED Task activity. Track outcomes, emails, call attempts, and more!
  • ADDED Task templates. Pre-written content for manually created tasks.
  • ADDED Saved replies. Pre-written replies for manually composed emails.
  • ADDED Note templates. Pre-written content for manually created notes.
  • ADDED Note bulk actions. Bulk edit and delete.

3.7.3.6

  • SECURITY Added additional file checks for large file uploads. Credit @wcraft and WordFence.
  • FIXED Fatal error when attempting to resend emails from the email log on PHP 8.1+.
  • FIXED Weird conflict with WPForms object caching.

3.7.3.5

  • ADDED White label header for email reports.
  • ADDED Support for full replacement code usage in the image block SRC.
  • ADDED Dynamic replacement code preview for HTML block and image block in the email editor.
  • FIXED Missing white label name replacements in the settings.
  • FIXED Fatal ere defined.
  • FIXED Reports link in header of email reports not working.
  • FIXED Error when bulk editing contacts and no filters are defined.
  • FIXED {substr} replacement bug.
  • REMOVED Affiliate Misc settings when white labeled.

3.7.3.4

  • ADDED Option to ignore specific error codes from the failed events report.
  • TWEAKED The event failure notification will send an hourly report of failed events (if any) rather than an individual email for each event failure.
  • SECURITY Added sanitization for search filter queries. Thanks Patchstack!

3.7.3.3

  • FIXED Wrong email content format for some email templates causing duplicate footer.

3.7.3.2

  • FIXED Serialized data from form integrations not being saved when mapped to "Add as custom meta".
  • FIXED Locale filter not working on funnels page.

3.7.3.1

  • ADDED Proper Locale filter for selecting languages.
  • FIXED Broadcast scheduler limiting send time based on browser timezone rather than site timezone.
  • FIXED New sanitization for custom properties not saving multiple selections for dropdowns.

3.7.3

  • NEW Add custom fields to the profile update form in the preferences center.
  • ADDED Step flow preview to the funnels table.
  • ADDED Hooks and methods for Groundhogg_Sending_Services for more customization opportunities.
  • ADDED Sticky admin header to all Groundhogg pages.
  • ADDED Name of white labeled CRM to admin headers when white label is enabled.
  • TWEAKED When search filters are empty, show the filter icon instead of the plus icon.
  • TWEAKED Don't show table views for empty statuses.
  • TWEAKED Save the plain text version of emails into the email log so they are sent if emails are retried.
  • FIXED UI clipping when hover over IF conditionals in the funnel editor.
  • FIXED Prevent accidental method call on contact records from replacements.
  • FIXED Email performance reports going to some unauthorized users.
  • FIXED SVG assets not included correctly when not using default /wp-content/ folder.
  • FIXED Prevent secrets from being exposed on the settings page when using add_constant_support().
  • FIXED Constants showing in settings if similarly named even when constant support was not explicitly added.
  • FIXED {substring} replacement code not working if 3 arguments were not explicitly defined.
  • FIXED Contact table views not showing as current when selected.
  • FIXED Proper sanitization for custom fields.
  • FIXED Several PHP notices.

3.7.2

  • ADDED Submission records will now be kept for a variety of user and contact initiated updates including...
    • Form integrations
    • Webhook responses
    • Importing contacts
    • Specific API requests
  • ADDED REST API Activity endpoint documentation in the playground.
  • ADDED Support for range in DB queries.
  • TWEAKED Outline for conditional content for email blocks as there is for post editor blocks.
  • TWEAKED Funnel activity icons in the timeline now appear as they do in the funnel editor.
  • FIXED UTM Parameters added in the advanced tab not being added to links.
  • FIXED Saved search uneditable if only exclude filters are defined.

3.7.1

  • IMPROVED Funnel step flow UI.
  • ADDED {substr} replacement code.
  • ADDED Nested meta key support for meta replacement codes using dot notation. Example {meta.custom_object.some_key}.
  • ADDED WP-CLI functions for managing licenses.
  • FIXED Small UI issue for tooltips not showing as connected to their arrows.
  • FIXED Broadcasts sometimes not moving from sending to sent after all events have completed.

3.7.0.2

  • ADDED {andList}, {orList}, {ol}, and {ul} formatting replacement codes.
  • ADDED Additional datasets for the New Contacts report and the Email Activity report
  • FIXED Tooltips on charts not working
  • FIXED PHP Notice on 8.0+
  • FIXED Missing CSS on some admin pages if the toolbar widget is disabled.

3.7.0.1

  • IMPROVED Table filter config for addons.
  • FIXED Issue with before/after date range filters not working

3.7

  • ADDED New personalized dashboard experience to replace the welcome page.
    • New My Tasks widget
    • New Summary widget
    • New Recommendations widget
    • New News widget
    • New Helpful Links widget
    • New Recent broadcasts widget
    • New saved searches widget
    • Optimized quick start checklist
    • Enable & disable widgets
    • Supports white-labeling
  • ADDED Batch scheduling for broadcasts.
  • ADDED Convert to post tool for emails. Converts an email into gutenberg blocks.
  • ADDED Groundhogg panel to some core Gutenberg blocks.
    • Native replacement code support without the need for the [ghr] shortcode.
    • Restricted content support when the Restricted Content addon is active.
  • ADDED Parent/Child relationships (as info card) for contacts.
  • ADDED params parameter to the Reports API playground.
  • ADDED "Last week" and "Last month" date ranges for filters.
  • ADDED New "sending" status to the broadcasts table to separate broadcasts that are fully sent vs. partially sent.
  • ADDED Task "snoozing". Sets the due date to the next day.
  • IMPROVED Quick search is faster and shows more information.
  • TWEAKED "My Tasks" has been removed from the admin bar widget since it now has a dedicated space in the dashboard.
  • TWEAKED The Restore Missing Funnel Events tool has been moved to the Logs > Manage tab.
  • TWEAKED The Sync Users tool is now a background process instead of a loader.
  • TWEAKED Replaced many usages of the branded loader with skeleton wireframe loaders.
  • TWEAKED Funnels with starting benchmarks also acting as a conversion will calculate the conversion based on the 2nd completed event within the time range.
  • TWEAKED Cleanup actions will now be run hourly rather than every 6 hours.
  • FIXED Replacement codes not working in custom footer for composed emails.
  • FIXED "This week" date range not working.
  • FIXED Broadcasts scheduled with "Send Now" sometimes not being updated to sent when finished.

Groundhogg 3.6

5 releases

3.6.1.1

  • FIXED PHP Warnings causing custom reports not to load.

3.6.1

  • ADDED Manually process background task from the tasks log table.
  • ADDED Feedback widget to collect feedback about some features.
  • TWEAKED Expose editor functions for registration of custom blocks.
  • REMOVED The copy/paste menu from the editor block nav, use CTRL+C & CTRL+V instead.
  • FIXED Update contact background task quitting early sometimes if number of contacts was a round number.
  • FIXED issues with mapping checkboxes, again.

3.6.0.2

  • FIXED issues with mapping checkboxes, again.

3.6.0.1

  • FIXED Super admins unable to download files.

3.6

  • ADDED Dynamic/Fixed segment choice when scheduling broadcasts.
  • ADDED Asset count and links to related assets in the campaigns table.
  • ADDED New JS components for use in addons.
  • ADDED New PHP API methods for use in addons.
  • ADDED New PHP helper classes for use in addons.
  • IMPROVED Refactored a lot of code for better usability.
  • IMPROVED Better & reusable image picker for the image block.
  • IMPROVED Re-organized the menu to group CRM and Marketing Automation features separately.
  • TWEAKED Seperated Tags from Campaigns into separate screens.
  • FIXED Fatal error in broadcast archives.

Groundhogg 3.5

5 releases

3.5.2

  • This release does not have any visible changes, but mostly contains improvements for the use of addons and premium features.
  • OPTIMIZED Refactored a lot of code for better usability.
  • ADDED New JS components for use in addons.
  • ADDED New PHP API methods for use in addons.
  • ADDED New PHP helper classes for use in addons.

3.5.1.1

  • ADDED Contact Sub Query filter to the log filters to make it easier to find and modify events for contact segments.
  • IMPROVED The dependencies missing notice for addons to make it more obvious what action to take.
  • FIXED "quotes" in the value of a radio button or dropdown custom field not filterable due to double escaping.
  • FIXED Mapping custom field checkbox values not working if values are already provided as an array.
  • FIXED Clear replacements cache when posts are published.
  • FIXED Remote notices requested on every page load if transient is empty.
  • FIXED The filter views on the email logs table not working.

3.5.1

  • ADDED Opt-in Status Changed benchmark.
  • ADDED PHP API methods to better handle hard bounces, soft bounces, and complaints.
  • ADDED PHP filters for subject and content for the email reports.
  • TWEAKED After 4 consecutive soft bounces a contact's status will change to hard bounced.
  • TWEAKED Automatically unsubscribe users from email reports whose email domain does not match the url of the site (those users can still opt-in).
  • TWEAKED Automatically unsubscribe super admins on multisites from email reports (those users can still opt-in).
  • TWEAKED Orderby param in the API docs is now a dropdown.
  • FIXED Use white-label name in email report subject lines
  • FIXED site_name not being replaced in the broadcast email report.
  • FIXED When moving a field in the form editor the open field does not persist.

3.5.0.1

  • FIXED Pickers not appearing full width

3.5

  • ADDED New social networks for the social icons block: Threads, GitHub, Discord, Rumble, Truth Social, and Odysee
  • ADDED Reports API to the Rest API Playground
  • ADDED Automated weekly and monthly emailed overview reports to admins.
  • ADDED Automated next day reports for broadcast emails.
  • ADDED Comparison growth indicators to the funnel performance table.
  • ADDED New Menu block to the email editor.
  • IMPROVED Comparison date calculations for all reports.
  • TWEAKED Term relationship toggle in the posts block will now always show, instead of being shown conditionally.
  • TWEAKED Block copy/paste is now done with HTML rather than the block JSON. The HTML is parsed into the appropriate block(s).
  • FIXED Tag picker options not collapsing after unfocusing from the picker.
  • FIXED Filtering the WP_Query for the posts block not working.
  • FIXED Mapping to checkboxes not working if there is a space " " in the value.
  • FIXED Non-responsive columns still responsive if nested in a responsive column.
  • FIXED File upload field in forms causing server error if nothing was uploaded.
  • FIXED Link to view uploaded file in submission details not working.

Groundhogg 3.4

11 releases

3.4.4.1

  • ADDED New shortcut support for the email editor
    • Using the Delete key on a block will delete it.
    • CTRL + C Will copy a block.
    • CTRL + V Will paste a block.
    • CTRL + D Will duplicate a block.
  • ADDED Column style options to the Column block.
  • ADDED Justify alignment option to make buttons full width.
  • TWEAKED After duplicating a block, the new block becomes active instead of the original block staying active.
  • FIXED Issue of the last accepted Grammarly suggestion not saving when exiting from a text block in the email editor.
  • FIXED Color picker closing in email editor if selecting from palette then using dropper.
  • FIXED Font controls closing after selecting new font choice for text blocks.
  • FIXED First change in the email editor was not undoable.

3.4.4

  • ADDED New {form_submission} replacement code which can add all recent form fields into an email.
  • ADDED Forward/Back history button navigation within the funnel editor (This is not undo/redo).
  • ADDED Meta filtering to the custom activity filter.
  • ADDED Sum of activity values & Average of activity values as custom report types.
  • IMPROVED The contact record UX:
    • The local time now updates automatically with WP Heartbeat.
    • Added a "Subscribed since" date to the details card.
    • Added birthday and age to the details card.
    • Rearranged the details and components in the details card to maximize space.
    • Webhook requests and form submissions now appear in more readable user-friendly formats in the activity timeline.
    • The Save Changes button is now sticky to the bottom of the screen to reduce scrolling while editing.
  • TWEAKED First and last name will have the first letter uppercase automatically.
  • TWEAKED When using the contact quick add form the owner is set to the current user by default. Also now searchable.
  • TWEAKED Thumbnails in H1-H5 posts format now link to the post.
  • FIXED Group select UI issue in properties editor.
  • FIXED Additional phone number types reverting to mobile after saving.
  • FIXED Importing multiple values into Checkbox type not working.

3.4.3.2

  • FIXED Casting to decimal for number custom field filters was not working in conditional logic.

3.4.3.1

  • ADDED Filter groundhogg/has_accepted_cookies for compatibility with 3rd party cookie compliance plugins.
  • ADDED Filter groundhogg/location/get_real_ip to filter the IP address. Just for you Paul ;).
  • FIXED Issue with the broadcast schedule lock not being reset, resulting in broadcast scheduling hanging up sometimes.
  • FIXED Unable to cancel pending broadcasts if no events have been scheduled yet.

3.4.3

  • ADDED Asset editing lock. Emails and funnels will now be "locked" while editing. Similar to WordPress posts.
  • ADDED Rest API Playground! You can now see proper API documentation, as well as test the API based on your website data from within the browser.
  • FIXED 2 non-severe (authentication required) vulnerabilities responsibly disclosed to us by Patchstack.

3.4.2.3

  • ADDED Option in the custom properties editor to move fields between property groups.
  • FIXED Bug with birthday filter caused birthdays during non-leap years to be excluded when using the 'today' range.

3.4.2.2

  • FIXED Sequential page views error out.

3.4.2.1

  • HOT FIX Renaming IP address column not working in MySQL 5.6

3.4.2

  • IMPROVED Optimized indexes for activity and events tables for faster reporting.
  • IMPROVED Optimized more queries for faster reporting.
  • TWEAKED IP Addresses will now be stored in binary rather than plain text.
  • FIXED Activity not saving when visitor accesses the site via IPv6.
  • FIXED Guided setup notice not dismissing.
  • FIXED Broken premium link in checklist items.

3.4.1

  • ADDED Begin tracking user agents and IP address with activity and page visits
  • ADDED Set a delay to ignore clicks and opens in the email settings. This will mitigate bot activity inflating reports.
  • FIXED No path to guided setup after WP 6.5 update.
  • FIXED Replaced legacy SMS broadcast scheduler with the new on the add screen from the SMS page. Requires updating the SMS addon.
  • FIXED Deprecated function notices coming from funnels.

3.4

  • IMPROVED New unsubscribe features!
    • Instead of link options there is now an unsubscribe form in the preferences center.
    • The form collects standard reasons for unsubscribing, as well as optional written feedback.
    • Responses are compiled into the Unsubscribe Reasons chart in the contacts report.
    • Unsubscribe reasons and feedback can be viewed in the activity timeline, contacts list, and exported.
    • For users of the one-click unsubscribe feature, the option to offer feedback is provided after they've unsubscribed.
    • Go to https://yoursite.com/gh/preferences/manage/ to see what subscribers will see.
  • ADDED Campaigns management in the admin. Edit, delete, etc...
  • ADDED You can now create public campaign archives.
    • Visit https://yoursite.com/gh/campaigns/.
    • All public campaigns will be listed.
    • Campaign archives can be searched by subject and content.
  • ADDED Shortcode to embed email content into posts.
  • ADDED UTM Parameters support in the email editor.
  • FIXED Contact activity timeline sometimes not loading.
  • FIXED Missing strings in the POT file.

Groundhogg 3.3

6 releases

3.3.3.2

  • FIXED Some activity not preloading correctly in the contact activity timeline
  • FIXED Email settings disappear after changing campaigns and not saving.

3.3.3.1

  • FIXED Fatal error in the contact list view for lower permission users.

3.3.3

  • ADDED Column preset buttons for easier column management in the contacts list.
  • ADDED A better way to handle all the different mailer handlers with the gh_mail() function.
  • ADDED Some WP CLI tooling which will be improved on and documented at a later date.
  • ADDED Tools to generate fake data for funnels, broadcasts, and contacts.
  • TWEAKED Funnel timers will calculate delay time based on the enqueued time rather than the current time.
  • TWEAKED No longer use p style for a tags in the email editor.
  • TWEAKED Replacement codes for custom date fields will output Y-m-d or Y-m-d H:i:s format by default so that they are easier to use in other functions. You can use the {date} or {local_date} replacement codes to format your dates.
  • TWEAKED Column checkbox toggle order is now more consistent.
  • FIXED Emails not preloading in contact activity timeline.
  • FIXED Removed a bunch of unused files and code.
  • FIXED Notes not being added from funnels when the content is exactly the same as a previous note.
  • FIXED WYSIWYG Editor in text block gets large when editing CSS.
  • FIXED Fatal error in PHP 8+ if no log ID in Email_Logger.

3.3.2

  • ADDED 4x per day the queue will be "cleaned" and events that failed to process within the last 6 hours will be fixed.
  • ADDED Activity for when a contact is imported from a CSV file.
  • IMPROVED using _ to prefix meta for replacements like {_meta_key} is no longer required. You can simply do {meta_key} even if it's not a registered custom field.
  • TWEAKED Meta that can be serialized, but is not associated with a custom field and thus has no pretty output, will be output as JSON encoded.
  • TWEAKED The replacements cache group has been changed from replacements to groundhogg\replacements.
  • TWEAKED Combined several cron task hooks into one.
  • TWEAKED Funnel conversion activity in timeline now has proper UI.
  • TWEAKED Optimized how emails are preloaded for email activity in the timeline.
  • FIXED Export contacts BG task causing error in tasks log.
  • FIXED HTML email template previews not working.
  • FIXED DB error when passing consent attributes to the contact update method.
  • FIXED Changed all button types in the filters component to button to prevent form submission in custom post types.

3.3.1

  • ADDED New background tasks tab in the logs page.
  • ADDED New Age filter!
  • ADDED New "Day Of" date range for date filters.
  • FIXED Background tasks not always scheduling correctly, moved to using a dedicated table instead of using internal WP Cron.
  • FIXED The Empty comparison for meta filters was not respecting NULL values.
  • FIXED Meta filters with keys containing - were not working.
  • FIXED Is/Is Not comparison for the birthday filter not working.
  • FIXED Email not loading after duplicating an email step in a funnel.
  • FIXED Only show active funnels in Add to funnel tool in the contact record.

3.3

  • ADDED Alternate email testing methods. Design for inbox compatibility testing or Functional to simulate a real email send.
  • ADDED Last/Next 14 days and Last/Next X days ranges for date filters.
  • ADDED Setting to enable sending unsubscribe notifications to a custom email address.
  • ADDED Filters for the List-Unsubscribe header so it can be hijacked by custom implementations.
  • TWEAKED Made the text block editor inline rather than a modal.
  • TWEAKED Made the editor replacements button an MCE toolbar widget.
  • TWEAKED Moved the email editor block inspector and inspector toolbar to the right of the email content.
  • TWEAKED Email previews in the editor will ignore conditional blocks and show all content.
  • TWEAKED Bounce inbox IMAP settings are hidden if using API based outgoing email service.
  • IMPROVED UI of sending email templates from the contact record.
  • IMPROVED UI of adding a contact to a funnel from the contact record.
  • IMPROVED Fallback event and contact tracking when tracking cookie is not working.
  • IMPROVED The One-Click List-Unsubscribe unsubscribe endpoint requires a token.
  • IMPROVED The One-Click List-Unsubscribe endpoint track the unsubscribe to the associated funnel or broadcast.
  • IMPROVED The manage preferences email now uses HTML links and offers a direct unsubscribe link.
  • FIXED If more than 25 emails in a funnel they were not all preloading.
  • FIXED List-Unsubscribe header not working in iCloud because iCloud does not decode it properly.

Groundhogg 3.2

9 releases

3.2.3.3

  • FIXED Uninstall function was not deleting all options.
  • FIXED Need to flush cache after using the reset tool.

3.2.3.2

  • ADDED Checkboxes settings field type.
  • ADDED Additional date format helper functions to the DateTimeHelper class.
  • FIXED Coalesce null meta values to the empty string '' for NOT IN comparisons.
  • FIXED Newlines in CSV cells breaking imports.
  • FIXED Search for a contact by email not returning results on email equality.
  • FIXED Force data to save as serialized when mapping to a checkbox list or multi-select custom field.

3.2.3.1

  • TWEAKED The export file headers are added to the CSV before the background process starts rather than during.
  • TWEAKED Funnels will sync step status with every update instead of only during a status change.
  • FIXED When adding new steps to an active funnel the step status is inactive when it should be active.
  • FIXED Initiating an export from the tools page causing fatal error.

3.2.3

  • ADDED Notifications when background tasks are complete.
  • IMPROVED The background task system to be more reliable.
  • TWEAKED Bulk deleting, updating, importing, and exporting contacts will be handled as background tasks.
  • FIXED Guided setup screen blank.

3.2.2.2

  • HOT FIX User info updating incorrect contact records.
  • TWEAKED Optimized the recount tag associations function to perform in a single query.
  • FIXED If filters aren't registered the filters don't work. Now shows a broken filter message instead.

3.2.2.1

  • FIXED Funnel history filters not working if in multiple OR conditions.

3.2.2

  • ADDED Background task for completing benchmarks.
  • ADDED Tool to re-sync user IDs based on email address equality.
  • ADDED If user email address and contact email address are not equal show an button to unlink the user from the contact in the user info card.
  • TWEAKED The limits exceeded calculation for background tasks.
  • FIXED Default date range for future date filters didn't exist.
  • FIXED Caching for the get_contactdata() was not working causing slowness when checking contact marketability.
  • FIXED New filters not setting between before date to EOD.
  • FIXED Refresh button in contact activity not working because our caching was too good.
  • IMPROVED Hardened the auto-login link functionality.
    • If the {auto_login_link} is detected in the email, the to address of that email will be forcibly changed to the associated user's email address if it's different than the contact's.
    • Changing of the user_id or email of a contact will invalidate previously issued login links.

3.2.1

  • TWEAKED Further optimized activity and event based filters.
    • Setting count equals 0 will now return results similar to using the inverse count at least 1 in the exclude group.
  • TWEAKED Delayed localization of gutenberg block js assets.
  • TWEAKED Filters can now be registered directly from custom properties. This will be helpful for addons!
  • TWEAKED Reduced number of queries for the views on the contacts table screen.
  • FIXED count() not always returning a correct number because FOUND_ROWS() was not cached.
  • FIXED Broadcast search not working.

3.2

  • ADDED New under the hood query improvements to help create more complex and performant queries.
  • ADDED Color coding, sorting, and pagination to performance report tables.
  • TWEAKED The funnel reports now shows Added and Active as separate metrics.
  • TWEAKED The conversion rate of a funnel will be calculated with the Active metric and not Added as it was previously. This may reduce your funnel conversion rates.
  • TWEAKED Date ranges for custom fields are now more flexible.
  • TWEAKED Refactored many of the reports to be more performant.
  • TWEAKED Refactored many of the search filters to be more performant.
  • TWEAKED Funnel editor will preload email and tag assets before being editable.
  • FIXED Custom fields built with the legacy custom fields builder not showing up in replacement codes
  • FIXED using the Between comparison in date filters not working.
  • FIXED Funnel campaigns not saving in PHP 8.0+
  • FIXED Selecting posts by ID not working when using a custom post type in the email posts block.
  • FIXED Unable to scroll the email templates.

Groundhogg 3.1

1 release

3.1

  • ADDED Custom post type and taxonomy support to the email editor posts block.
  • ADDED Card style options for the email editor posts block.
  • ADDED Dynamic Shortcode block to the email editor.
  • ADDED Search filters to events and email logs (more to come).
  • ADDED Specify search columns for the emails table quick search.
  • TWEAKED Adding contacts to a funnel is now a similar experience to scheduling a broadcast.
  • TWEAKED Contacts are added to a funnel via a background task instead of the loader.
  • TWEAKED Introduced the new DB\Query class and DB\Filters class to facilitate search filters for more data types.
  • TWEAKED Optimized several of the contact demographic reports to perform queries faster.
  • DEPRECATED User role, opt-in status, and marketability tag mapping will continue to be supported, but will no longer be active by default on new installs.

Groundhogg 3.0

2 releases

3.0.1

  • TWEAKED Disable the advanced email editor automatically

3.0

  • NEW Drag & Drop block-based (not Gutenberg) email editor
  • NEW Campaigns as method for organizing funnels, emails, and broadcasts
  • NEW Add heading dividers to custom reports page to make grouping your custom reports easier
  • NEW View detailed email logs in contact activity timeline.
  • NEW Background processing for broadcast scheduling.
  • ADDED Exclude filters to custom reports for more advanced reporting.
  • ADDED New report value types for number reports,
    • Sum of a custom field
    • Average of a custom field
    • Number of distinct custom field values
    • Total number of activities
  • ADDED Option to disable user syncing in WordPress integration settings.
  • ADDED Developer filters/actions to the new form submission handler.
  • ADDED Support for defining some options as constants in wp-config.php.
  • ADDED View email logs in contact activity timeline.
  • TWEAKED Improved the email log modal.
  • TWEAKED Moved user meta sync option to WordPress integration settings.
  • TWEAKED Dropdown and checkbox fields can now be pre-selected with the value setting in the form builder.

Groundhogg 2.7

60 releases

2.7.12

  • ADDED New feature to add heading dividers to custom reports page to make grouping your custom reports easier.
  • ADDED Exclude filters to custom reports for more advanced reporting.
  • ADDED New report value types for number reports,
    • Sum of a custom field
    • Average of a custom field
    • Number of distinct custom field values
    • Total number of activities
  • ADDED Option to disable user syncing in WordPress integration settings.
  • ADDED Developer filters/actions to the new form submission handler.
  • TWEAKED Moved user meta sync option to WordPress integration settings.
  • TWEAKED Dropdown and checkbox fields can now be pre-selected with the value setting in the new form builder.

2.7.11.11

  • FIXED Properly sanitize task data.
  • FIXED PHP Notice if custom fields tab was deleted.

2.7.11.10

  • ADDED Sort contacts by custom fields values and user meta (when available).
  • ADDED Sort contacts by tag count.
  • ADDED Sort contacts by birthday.
  • TWEAKED Do not add primary ID to INSERT command if table is using AUTO_INCREMENT.
  • FIXED Filtering by datetime, tel, and url custom field types not working.

2.7.11.9

  • ADDED thumbnail argument for the {posts.layout=h2 thumbnail} replacement code to show thumbnails for the h1-h6 layout formats.
  • ADDED columns argument for the {posts.layout=grid columns=1} replacement code show 1-3 columns for the cards/grid formats.
  • ADDED Handling for the In-Reply-To header to enable email threading in Gmail.
  • ADDED hey.com to list of known public email providers.
  • FIXED {posts} replacement causing timeout if post count is an odd number without a featured image.

2.7.11.8

  • HOT FIX Visited pages not being tracked from form submissions.
  • HOT FIX track_live_activity() causing fatal error if no current event is being tracked.

2.7.11.7

  • TWEAKED Shortened tracking URL structure, from /gh/tracking/email/click/<contact>/<event>/<email>/<link> to /gh/c/<contact>/<event>/<link>.
  • TWEAKED Removed redundant update versions prior to version 2.5.
  • FIXED Fatal error when sending test email while browser view is enabled.
  • FIXED Unsubscribe activity not correlating to broadcasts and funnels.

2.7.11.6

  • HOT FIX Permalinks conflict with new email archive feature preventing open/click tracing from working.

2.7.11.5

  • TWEAKED Task Summary now supports replacements in the Create Task action.
  • HOT FIX Fatal Error when installing Groundhogg for the first time.

2.7.11.4

  • HOT FIX Numeric search filters not working
  • HOT FIX Fatal error caused by login benchmark when pro features and calendar addon are both active.

2.7.11.3

  • ADDED New email archive feature.
  • IMPROVED Security regarding the browser view feature.
  • IMPROVED The browser view feature loads faster now and shows in a wider viewport.
  • FIXED Gutenberg block not working.
  • FIXED Owner signature editor not working sometimes on multisite.

2.7.11.2

  • HOT FIX frontend.js not working due to erroneous import statement.

2.7.11.1

  • IMPROVED Optimized the page tracking system and cookie to not explode in size.
  • FIXED Default contact tab setting not providing a valid tab to show sometimes.
  • FIXED Suggested help docs not loading in help screen before ticket flow.
  • FIXED 2 Vulnerabilities responsibly disclosed to us by Patchstack.

2.7.11

  • ADDED Custom activity is now shown in the contact activity timeline.
  • IMPROVED Optimized some reports for better performance.
  • TWEAKED Changed redirect HTTP method for tracking links from 301 to 307.
  • FIXED Contacts not shown when clicking the report of who click a specific link.
  • FIXED Impressions not recording for forms built with the new Form Builder.
  • FIXED Duplicating a step in the funnel returning original step JSON instead of the new step, causing rendering issues.
  • FIXED Date format in reporting date picker showing placeholder instead of actual date.

2.7.10.3

  • HOT FIX Replacement code for {auto_login_link} not working.

2.7.10.2

  • FIXED Email logs page causing fatal error.
  • FIXED More display issues in funnel reports showing incorrect numbers.

2.7.10.1

  • FIXED Tag picker will only make necessary GET requests
  • FIXED Display issues in funnel reports showing incorrect numbers.
  • FIXED Admin bar widget not working when white labelled.
  • FIXED Task due dates showing relative to GMT instead of local time zone.
  • FIXED Files not uploading to contact record from admin screen.

2.7.10

  • ADDED Task management
    • NEW Tasks tab in contact record.
    • NEW My Tasks panel in the Groundhogg admin bar widget
    • NEW Task automation. Create tasks and do automation when tasks are completed in funnels.
  • ADDED Default contact tab profile option so the default tab can be set per user.
  • IMPROVED Contact quick search in admin bar widget shows more useful information.
  • TWEAKED Enhanced security around email logs and potentially sensitive information.
  • TWEAKED {posts} replacement code now uses the proper WP_Query loop syntax.
  • FIXED Added missing capability/nonce checks. Thanks to WordFence for practicing responsible disclosure.

2.7.9.8

  • HOT FIX Table/API searching for some endpoints not working.
  • TWEAKED get_owners is now always passed through the groundhogg/owners filter.

2.7.9.7

  • ADDED Application flow for Review Your Funnel series.
  • ADDED More search filter registration helper functions.
  • ADDED Remote Notifications system to the Toolbar Widget.
  • TWEAKED Convert mobile number to e164 format after most contact creation/update opportunities.
  • TWEAKED Cached owners also passed through groundhogg/owners filter
  • FIXED Web Form URLs search and replaced when importing funnels.
  • FIXED Phone field not saving in web forms when phone type is not changed at least once.
  • FIXED PHP Warnings when submitting web form with a phone field.

2.7.9.6

  • TWEAKED Changed "Source Page" to "Signup Page" to make it more obvious.
  • TWEAKED Edit Form link shows to admins when looking at a form on the hosted page.
  • FIXED Tag picker in form options sometimes not working.
  • FIXED Tags not being applied during form submission when more than one tag is selected for a single option.

2.7.9.5

  • ADDED New Log Only email service which will not send email but just log them.
  • TWEAKED Bumped minimum required WordPress version to 5.9.
  • FIXED Forms columns CSS not responsive.
  • FIXED Translation issues.

2.7.9.4

  • ADDED New address line replacement codes
  • TWEAKED Added CSS to remove underline in posts grid article headlines in emails.
  • FIXED Admin notification step title causing fatal error
  • FIXED Potential low risk (admin authentication required) vulnerability, credit to WPScan.com for disclosing safely.
  • FIXED Track activity actions now fired from API
  • FIXED Mapping to notes not working

2.7.9.3

  • ADDED value column to the activity table.
  • ADDED Opt-in Status replacement code.
  • TWEAKED Birthday field will have inputs reordered based on the date_format setting.
  • TWEAKED Refactored occurrences of "Optin" to "Opt-in."
  • TWEAKED Field mapping API is now better visually organized.
  • TWEAKED Optimized table queries to utilize the FOUND_ROWS() MySQL function instead of COUNT().
  • TWEAKED Optimized DB::get_sql() method to parse queries.
  • TWEAKED DB class support for WP_Meta_Query.
  • TWEAKED Add ?by_user_id=1 to any gh/v4/contacts/<ID>/ request to fetch contact by the user ID.

2.7.9.2

  • ADDED Developer method to clear pending funnel events by step type
  • FIXED Potential undefined variable when performing DELETE operations with \Groundhogg\DB::query() method

2.7.9.1

  • ADDED maybeFetchItem method for JS object stores.
  • TWEAKED License notice
  • TWEAKED Some admin CSS
  • UPDATED language POT file

2.7.9

  • ADDED New categories UI optimization for funnel steps for easier funnel building.
  • ADDED Standardized method for generating step names.
  • ADDED Tool in logs management to purge old activity logs.
  • ADDED Event type filter in delete event logs management tool.
  • ADDED Custom Email, Phone Number, and Hidden field types to new form builder.
  • ADDED URL, Email, and Phone Number custom field types.
  • TWEAKED Most standard funnel steps now have generated step names.
  • TWEAKED Will double check CA and US origin when validating mobile numbers before giving up.
  • FIXED Field mapping to date & time custom fields not working.

2.7.8.5

  • ADDED Logs management screen and tools for debugging and cleaning up logs.
  • TWEAKED Moved recaptcha settings to the integrations tab.
  • FIXED API and Licenses tab not showing after last update.

2.7.8.4

  • ADDED plain posts layout option for plain text version compatibility.
  • ADDED Integrations tab in settings area for more obvious place to put integration settings.
  • TWEAKED Exporting contacts is now faster and more resource efficient.
  • TWEAKED Cache contact owner IDs in an option so that users are not queried every page load.
  • FIXED Missing text domain for some strings in preferences center.

2.7.8.3

  • HOT FIX Absolute URLs not working in form redirect.
  • FIXED Form submission dates not showing correctly in activity feed.

2.7.8.2

  • TWEAKED Enabling safe mode will check for a 200 OK, otherwise will revert.
  • FIXED Fatal error when previewing email and no contact record available.
  • FIXED Logged in user tracking not used if user precedence is disabled and no contact tracking is available.
  • FIXED New forms not working in Elementor popups.
  • FIXED New forms not setting tracking cookie after submission.
  • FIXED Deprecation notices when registering elementor widgets.

2.7.8.1

  • IMPROVED SMS Broadcast reports now provide meaningful information.
  • HOT FIX Multiselect dropdowns not working in new form builder.
  • FIXED If page tracking nonce is invalid request a new nonce via API.
  • FIXED Not redirect to thank you page when only url path is provided.

2.7.8

  • ADDED More developer hooks in the event queue.
  • ADDED Contact ID and User ID filters.
  • TWEAKED Events moved from queue table to history in one big batch instead of many smaller batches.
  • TWEAKED When downloading files from admin pages use /wp-admin/ link instead of /gh/.
  • TWEAKED Built-in wp-cron will only process the event queue as a fail safe, and will not execute if the event queue has already run.
  • FIXED Non-required fields giving invalid data error when empty value provided.
  • FIXED Transactional broadcasts not being sent to all deliverable contacts.
  • FIXED Contact column screen options missing when white labeled.

2.7.7.9

  • ADDED Misc interface setting to enable custom step titles for all step types.
  • ADDED Developer hook to filter the template library URL.
  • FIXED Recent Thrive Suite update dequeuing and unregistering select2 scripts. Very naughty of them.

2.7.7.8

  • FIXED Delay Timer setting time to 12:00 AM if weekday or weekend is selected and timer is enqueue on the opposite.

2.7.7.7

  • ADDED Tool to restore pending events if events were deleted.
  • HOT FIX Fixed archiving funnel cancelling all active events.

2.7.7.6

  • HOT FIX Update method cancelling events...

2.7.7.5

  • ADDED The within parameter to the posts replacement to limit posts to a given date range.
  • ADDED Setting to select default middle tab in the contact record in MISC Interface settings.
  • TWEAKED Optimized broadcast scheduling by batch inserting events with a single query rather than doing multiple insert queries.
  • TWEAKED Legacy steps are now hidden from the funnel editor (when adding) unless enabled in the interface settings.
  • FIXED Events not displaying correct "today/yesterday/tomorrow" in contact activity timeline.
  • FIXED Translations for some form fields in the v2 form not available.
  • FIXED Restore, Archive, and Delete actions for funnels not using correct class methods.

2.7.7.4

  • ADDED Format support for {meta} replacements.
  • ADDED Posts related replacement codes to show lists or grids of posts, post titles, and more in emails.
  • TWEAKED Make split_name function compatible with arrays.
  • FIXED Inserting replacement code into text field not triggering input/change event.
  • FIXED If the email address of a contact is changed then the uploads folder of that contact will be renamed accordingly.
  • FIXED Targeting specific day of next month in delay timer actually scheduling for the same day of month next year.

2.7.7.3

  • ADDED compatibility check for dokan lite to dequeue conflict scripts on the reports dashboard.
  • TWEAKED Ignore license checks and notices for inactive addons.
  • TWEAKED Improved select2 usability
  • FIXED Fatal error caused by invalid numeric value when displaying number custom fields.
  • FIXED Fatal error using stdClass instead of array in new form builder when rendering.

2.7.7.2

  • TWEAKED Change js file handles to avoid ChartJS conflict.
  • TWEAKED Number custom fields will show as a formatted number when used as a replacement.
  • FIXED DB errors when importing funnels.
  • FIXED License checker script not updating license status correctly.

2.7.7.1

  • TWEAKED combined frontend JS files.
  • FIXED Recaptcha v3 issues with new form builder.
  • FIXED Fatal error when previewing emails while not being logged in.

2.7.7

  • ADDED New form visual drag and drop builder!
  • ADDED Upgrade path from the old form builder to the new one.
  • ADDED HollerBox installer to guided setup.
  • ADDED Full screen toggle for the funnel editor
  • UPDATED New icons for funnel steps!
  • TWEAKED Update the Gutenberg block to also be compatible with the new form builder.
  • TWEAKED Benchmarks will no longer process instantly when they are completed unless explicitly defined that they should.
  • FIXED Select2 defaulting to first option instead of showing placeholder text.

2.7.6.3

  • TWEAKED Moved enqueue next action logic from Event_Queue::process() to Step::run_after()
  • TWEAKED Do not do an UPDATE query to skip enqueued steps if the Step::enqueue() method from Step::run_after()
  • TWEAKED Add a check for Limits::limits_exceeded() in inner foreach loop in the event queue.

2.7.6.2

  • FIXED Use INSERT IGNORE for object/tag relationships to avoid duplicate key errors.

2.7.6.1

  • ADDED LocalDateTime custom field type
  • TWEAKED Use while loop for event queue processing instead of recursive function to avoid memory issues.
  • TWEAKED Store local active/inactive stats at step level to avoid having to look at the parent funnel status.
  • FIXED HTML in funnel step names showing in breakdown chart columns.
  • FIXED process_events() function removes contact ID filter after processing.

2.7.6

  • IMPROVED Delay Timer has more advanced settings enabling delays based on day of week, day of month, and waiting for specific months.
  • TWEAKED Some step types will have their step titles generated from the settings (e.g. the delay timer) if the site language is english.
  • TWEAKED Time diff in activity timeline shows site date format
  • TWEAKED Further reduce the number of select queries run during the event queue process, there are now zero ID based SELECT * FROM queries for events during the event queue processing.
  • FIXED Before/After query vars not working in Contact_Query class

2.7.5.2

  • TWEAKED process_events() function will call the Event_Queue::run_queue() function directly instead of using do_action()
  • TWEAKED The Event_Store will now only select necessary columns from the wp_gh_event_queue table.
  • TWEAKED Switched to new telemetry method.
  • TWEAKED Updated cron action names to groundhogg/<action> for easier identification.
  • FIXED The run again/uncancel actions for events were not working.
  • FIXED Email log modal content showing under table when should be hidden.
  • FIXED MySQL errors related to funnel reports with no set conversion benchmark.
  • FIXED Tag Pickers in Funnel Editor show Please select one placeholder as a selected tag.

2.7.5.1

  • FIXED Funnels report showing incorrect open/click rates
  • FIXED Funnels report not showing in any particular order
  • FIXED Unmarketable filter not working if email confirmation is required
  • FIXED Email Link Clicked filter showing results for opens instead of clicks
  • FIXED Broadcast received filter not showing correct context if coming from reports page

2.7.5

  • IMPROVED Reports dashboard gets a facelift
    • New styles make viewing your reports more enjoyable.
    • Quick stat numbers are clickable and show relevant contacts with correct search filters.
    • Funnels tab shows list of all active funnels and their results. Click into each individual report to see expanded results.
    • Show number of conversions instead of abandonment rate in the funnel report.
    • Broadcasts page shows list of broadcasts sent within the given time range, and their results, ordered by date sent. Click into each individual report to see expanded results.
  • TWEAKED Optimized the Sync Users bulk job to handle larger datasets of 100K plus users.
  • TWEAKED Show a prompt to schedule a broadcast in the reports and there are no sent broadcasts.
  • TWEAKED Show a prompt to launch a funnel in the reports and there are no active funnels.

2.7.4.3

  • TWEAKED Optimized the contact import tool to import more contacts at a time.
  • TWEAKED Optimized the event queue by removing excessive queries on the queue table.
  • FIXED Potential event queue bug causing events to be executed twice, and executed events to left out of reports during parallel queue processing.
  • FIXED Contact import process taking a long time when importing mobile phone number with the twilio addon installed.
  • FIXED Consent cookie value not saving in settings.
  • FIXED Bulk edit not updating all contacts when updating only optin_status or owner_id
  • FIXED Filters not showing after returning from bulk edit tool and no exclude filters defined

2.7.4.2

  • FIXED Unable to add form fields to form builder.
  • FIXED Insert at cursor replacements widget moving cursor to end of content in input fields.

2.7.4.1

  • ADDED Presto Player integration download ID for supporting remote download and install
  • FIXED From address dropdown not showing Contact Owner as selection after page refresh

2.7.4

  • ADDED Setting to explicitly select 1 or more benchmarks to track as a conversion.
  • ADDED Setting to enable entering a funnel at an inner benchmark.
  • TWEAKED CSS for funnel step duplicate & delete actions
  • FIXED Potential for emails to be sent to undeliverable addresses.

2.7.3.1

  • HOT FIX Disable auto slug search and replace for link click benchmark.

2.7.3

  • ADDED There is now a Start From Scratch button on the add funnel screen
  • ADDED Insert replacement code shortcut CTRL + Shift + {
  • IMPROVED When importing funnel templates...
    • Steps with skip to functionally will correctly import their desired behaviour relative to other steps.
    • Loop action
    • Field Timer, Date Timer, & Advanced Timer
    • Any step with Conditional Logic enabled
    • Link Click benchmark links in email content will be correctly updated to the new step's link
    • JSON data is now based on the v4 API response
    • Legacy funnel templates will still be supported for importing
  • TWEAKED The funnel library will now only show templates for which the necessary step types are actively registered
  • TWEAKED Forms & Link Click benchmarks will now show use a pretty slug when embedding. Old URLs will still work fine!
  • TWEAKED show 404 errors on the managed page for non-existent resources
  • TWEAKED When sending an email template to a contact manually, process the event right away and report event failures
  • TWEAKED Disable the WordPress emoji to image conversion feature while sending/editing emails
  • FIXED Email log preview UI is now readable
  • FIXED Email editor toolbar fixed to low when scrolling in the modal

2.7.2.1

  • TWEAKED Some CSS issues in the funnel builder
  • TWEAKED Form CSS uses grid and flexbox for improved mobile responsiveness
  • TWEAKED Custom meta filter has better handling for missing or empty meta keys when the compares selection is a negative

2.7.2

  • ADDED The default FROM address is now an option when selecting email FROM address in the email editor.
  • IMPROVED The Apply Note action now has a rich text editor in the funnel
  • IMPROVED Admin Notification action now has a rich text editor, emails are sent in HTML format.
  • TWEAKED Cleaned up the Admin Notification action UI, removed the FROM address setting in favor of always using the default.
  • TWEAKED Clarified settings sections in the MISC tab
  • FIXED Potential 401 error while bulk editing contacts
  • FIXED Potential DB error when scheduling a new broadcast
  • FIXED CSS issues with modals and modal headers

2.7.1.1

  • HOT FIX __serialize & __unserialize functions in Base_Object acting up with typed params

2.7.1

  • HOT FIX Missing dependency causing JS issue in modal

2.7

  • IMPROVED Funnel UI receives a new coat of paint!
    • Updated colors to match new contact UI
    • More visually appealing layout
    • Textual helpers in the step flow to make the functionality clearer
    • Drag and drop steps into the flow
    • Warnings and errors are shown more clearly
    • Think of this as a sort of 3.0 preview
  • ADDED New developer class, the Activity_Benchmark class gives a simple way to hook into the contact activity tracking system.
  • ADDED New Custom Field button to the form builder that enabled the easy embedding of custom fields from contact records in forms.
  • TWEAKED Admin styles for several components to improve the user experience.
  • TWEAKED Benchmark that are completed and sequential actions will processed synchronously for the current contact.
  • FIXED Individually purchased support licenses not being accepted in the troubleshooter license verification.

Groundhogg 2.6

27 releases

2.6.3.10

  • FIXED "Does not start with/Does not end with" comparisons not working in search filters
  • FIXED Future date range comparison not setting minimum date bound in search filters

2.6.3.9

  • TWEAKED Add as file mapping for form integrations now supports array of multiple files
  • TWEAKED Add as file mapping will support absolute path to file or url of file
  • TWEAKED Add as file mapping will only allow copying of files from the same server

2.6.3.8

  • TWEAKED If there are more than 3 custom tabs in the contact record, tabs can be shown via a dropdown dialog to clean up the UI.
  • UPDATED Translation files with new strings.
  • FIXED Fatal error in AWS integration when pulling up identity verification details
  • FIXED From email address filter will replace invalid from email addresses with the default

2.6.3.7

  • ADDED Data filters for the email logger
  • TWEAKED Events log table will now default ASC order for waiting events, and DESC for completed and otherwise.
  • TWEAKED Simplified some event queue login and queries
  • FIXED Multiple PHP Warnings
  • FIXED Email log date filter fields in wrong order for BETWEEN clause.

2.6.3.6

  • TWEAKED Use white labeled name for form Blocks
  • TWEAKED Use white labeled name for user profile settings

2.6.3.5

  • TWEAKED Added 'event' and 'event_queue_item' as non persistent cache groups
  • TWEAKED Return to list of edited contacts after completed bulk edit
  • FIXED Webhook mapping not saving after exiting the email edit modal without saving
  • FIXED Location fields in bulk edit not saving

2.6.3.4

  • FIXED Funnel history contact search filter not working
  • FIXED Zip Code filter not working

2.6.3.3

  • ADDED "Unsubscribed" activity filter
  • FIXED Autocomplete not working on Safari
  • FIXED "Email Confirmed" filter not working
  • FIXED "Greater than or Equal to" comparator not working

2.6.3.2

  • FIXED recaptcha v3 causing forms to submit to success page when they are set to ajax.

2.6.3.1

  • TWEAKED Combined several tools pages into one to make the interface less confusing.
    • Moved user sync to the Misc tab
    • Removed the create users tool (can be done via a funnel)
    • Removed the delete users tool (can be done from the contact's tab)
    • Combined install and updates and system info tabs
    • Visually updated the tools screen
  • TWEAKED Updated the profile audit email with better formatting.
  • TWEAKED Special link sent from the preferences screen will not require the tracking cookie to be set for changes to be made.
  • FIXED Default contact owner not being used.
  • FIXED Un-serialize values in custom reports.

2.6.3

  • ADDED New custom reports feature! Build a custom dashboard that gives you the stats you need.
  • FIXED Mapping to tags not working for Ninja Forms.

2.6.2.11

  • FIXED Email duplication not carrying over meta data
  • FIXED Added error handling to delay timer when using timezones

2.6.2.10

  • ADDED New {local_date} which will display the given date based on the local time of the contact
  • IMPROVED the web form usability on the managed page.
  • FIXED Some legacy WordPress systems unable to download files on NGINX
  • FIXED Saved Searched picker not filtering in broadcast scheduler
  • FIXED Contact's displayed address different from supplied address

2.6.2.9

  • FIXED Values in array format not mapping to tags during field mapping

2.6.2.8

  • TWEAKED Return WP_Error from Event::run() if event is not waiting or has no claim as a failsafe instead of returning false which might allow proceeding funnel events to run out of turn.
  • TWEAKED Added additional failsafe checks to event claim process to prevent claiming events out of turn.

2.6.2.7

  • TWEAKED Added some CSS polish to some of the admin areas, such as the licenses settings page and the templates pages for funnels and emails
  • TWEAKED Made it possible to enqueue scripts on the contact edit page to enable integrations to add items to the activity timeline

2.6.2.6

  • FIXED Passing an empty string to the add_tag method would apply the most recently created tag
  • FIXED download_file capability conflict with woocommerce

2.6.2.5

  • FIXED Missing view_emails cap for admins

2.6.2.4

  • ADDED Composed & 1-off emails now show in the activity timeline
  • ADDED "Today" date filter for search filters
  • TWEAKED Gave the welcome screen a visual refresh and updated remaining img assets with new logo
  • TWEAKED Changed file rewrite path from /uploads/ to /files/
  • TWEAKED Add view permissions for funnels, emails, events, and activity to Sales Reps and Managers so they can view the activity timeline
  • FIXED Contact file uploads & downloads for Sales Reps and Sales Managers
  • FIXED Some custom field search filters showing corrupted when they are actually fine
  • FIXED Multiple UI issues for Sales Managers and Sales Reps
  • FIXED Notes widget loading in ALL notes instead of object notes
  • FIXED Mapping array values from form integrations to comma seperated strings

2.6.2.3

  • ADDED New logos and brand assets!
  • ADDED (Again) Send an email template from the contact record.
  • TWEAKED track activity when composed email is sent. Will show in activity timeline in a future update.
  • FIXED Ticket link in help page links to the ticket portion of the troubleshooter.

2.6.2.2

  • FIXED Fatal error if not contact record linked to the logged in admin.
  • FIXED Ghost custom fields causing custom field editor to not load
  • FIXED DB error caused by missing field name in the page-visits table.
  • FIXED PHP notice caused by missing array index.

2.6.2.1

  • TWEAKED The "skip if confirmed" logic for confirmation emails to handle logic outside of the run process.
  • TWEAKED Contact::get_time_zone() will return wp_timezone_string() if no timezone is set.
  • TWEAKED When creating a contact, if an owner is logged in the default owner will be be the logged in user instead of the primary owner from the settings.
  • TWEAKED When importing a list, do not set the owner to the current user and allow the default fallback to take effect.
  • FIXED Changed blacklist_keys to disallowed_keys.
  • FIXED Custom contact table columns will echo a return value if not void.
  • FIXED Check for the view_contacts cap before display the Groundhogg admin bar widget.
  • FIXED Removed title actions from the help page.
  • FIXED Typos in the new troubleshooter.

2.6.2

  • ADDED the new Groundhogg troubleshooter! A guided support tool to help users identify and resolve issues quickly.
  • ADDED column width option for custom fields for more control over the layout.
  • FIXED rare fatal error caused by missing contact resource from when processing event-queue.
  • FIXED remote_install not working for some plugins.
  • FIXED Conflict between BuddyPress activity meta table and Groundhogg activity meta table.

2.6.1.2

  • FIXED Options not saving after sorting in custom fields
  • FIXED Fatal error caused by trailing comma in PHP < 7.3

2.6.1.1

  • FIXED Custom field saving issue, missing fields and mapping. If your custom fields disappeared after editing them in 2.6, follow this guide to fix it!

2.6.1

  • FIXED Display issue for custom fields in the contact table.

2.6

  • NEW UI for the contact record
    • Condensed design to fit more on the screen, less scrolling.
    • Custom field management is now FREE and part of Groundhogg core! _If you have created custom fields previously with the Custom Field Management addon you will have to update the addon and the custom fields will be refactored._
    • Additional contact methods including email addresses and phone numbers.
    • Improved tag picker is very user friendly.
    • Activity timeline shows all events and activity in order.
    • Improved file box management.
    • Notes get more space and support media.
    • Edits are saved via the API, no page reloading!
    • Custom tabs are backwards compatible.
    • ADDED Contact merging!
    • ADDED Support for multilingual sites by saving the contact locale and switching to their locale when necessary.
    • ADDED When adding a contact via the admin you can opt them into GDPR requirements.
    • ADDED CRM data reassignment when deleting users that are CRM users.
    • ADDED Option to delete associated contact records when deleting users from the admin.
    • TWEAKED when a form is submitting via AJAX and is in an iframe, the iframe will be resized to show any messages.
    • TWEAKED all jQuery removed from the form ajax submission script.
    • TWEAKED all jQuery removed from the fullframe script.
    • TWEAKED contacts table and record is now mobile responsive for better mobile usability.
    • FIXED Search filters which may have been saved, and then settings get corrupted will show a "corrupted filter" notice instead of crashing, which you'll be able to delete.
    • FIXED fullframe.js conflicting with the forms iframe script causing console errors.
    • FIXED fullframe.js made to be compatible with plugins which optimize iframes.
    • FIXED Replacement code regex will not span multiple lines.
    • FIXED Search issues with custom checkbox fields.
    • REMOVED Company/Business details in favour of adding them to the Companies addon since these fields are usually unused unless the companies addon is installed.

Groundhogg 2.5

21 releases

2.5.7.9

  • ADDED From address select in the send email widget for contacts
  • TWEAKED New Groundhogg themed loading spinner! (Gears if white labeled)
  • FIXED Unable to send email from contact record if no contact owner is selected

2.5.7.8

  • FIXED "Send in local time" option missing for broadcasts.
  • FIXED Time zone mapping not working during bulk edit or importing contacts.

2.5.7.7

  • FIXED Reports now showing correct data after switching moment distribution.

2.5.7.6

  • FIXED Use WordPress moment.js dist instead of bundled.

2.5.7.5

  • ADDED New $_GET {GET.url_param} replacement code for frontend usage in [ghr] shortcodes and in forms.
  • ADDED logs table for debugging. Not hooked up to anything yet but I'm sure it will be useful in the future.
  • TWEAKED Adjacent starting benchmarks now count towards the conversion rate of a funnel instead of just the first one.
  • TWEAKED Hide the finish link during cron setup for White label installs.

2.5.7.4

  • ADDED Birthday search filter
  • FIXED Invalid nonce error when submitting forms
  • FIXED UI bug cant see button when adding contacts to funnels from the contacts screen
  • FIXED When importing contacts with birthdays, if no birthday is provided default to empty value instead of date
  • FIXED Reset birthdays which have probably been set as a result of a bug, buggy dates are 1970-01-01 and 1999-11-30

2.5.7.3

  • FIXED PHP parse error

2.5.7.1

  • FIXED Saved searches with exclude filters not working.
  • FIXED Saved searches pre-exclude filters causing JS error.

2.5.7

  • ADDED New status column in contact table for ordering and better marketability visibility
  • ADDED New "Marketable" search filter makes it easier to determine marketable contacts based on current compliance settings.
  • ADDED Use internal forms as part of the quick add component
  • ADDED Optional exclude filters in contact search for even more advanced segmentation
  • ADDED Settings to blanket disable click tracking and open tracking
  • TWEAKED Made contact quick edit a global component so it can be used on other screens
  • TWEAKED Adding a new contact from the contacts screen uses the quick-add component
  • TWEAKED Contact quick edit uses a save/cancel button instead of auto-saving for consistency with other components
  • FIXED Activity capabilities not added to user
  • FIXED Tags in the contact REST response not always coming back as an array
  • FIXED Contact columns showing in incorrect order after editing via quick edit
  • FIXED Stacked modals which disable scrolling will only enable scrolling once the last modal is closed

2.5.6

  • ADDED {birthday} replacement code
  • ADDED MySQL and DB details to system report
  • ADDED \Groundhogg\Contact::has_tags() alias method
  • ADDED groundhogg/admin/tags/table/sortable_columns for sortable tags column
  • TWEAKED Clicking "broadcast" in the emails page now takes you to the newer UI of the broadcast tool rather than the old one
  • TWEAKED Enforce InnoDB engine is used for wp_gh_object_relationships due to long key names
  • FIXED NGINX systems having a hard time downloading contact files because of missing / at the end of the path
  • FIXED Tag pickers, email pickers, broadcast scheduler, and search filters not working or un-styled when the toolbar widget is disabled
  • FIXED "AND" logic for [gh_does_not_have_tags] shortcode
  • FIXED invalid timeout delay for contact picker component
  • FIXED Edge case handling for usage of "+" in emails

2.5.5

  • ADDED More JS components for use in 3.0 and the pipeline extension
  • ADDED Custom properties component for creating custom properties for various data types on the fly
  • ADDED Data store methods for manipulating object relationships
  • ADDED Groundwork for merging various data types including contacts for an upcoming update
  • ADDED Groundwork for duplicating various data types like funnels and emails via the API
  • ADDED Many activity based filters such as Email Opened now support filtering by the number of times a contact has done that activity.
  • ADDED new magic parse_tags_list() function which takes a bunch of random input and returns a list of tags
  • IMPROVED the notes widget which now supports "note type" for calls, meetings, and emails
  • IMPROVED Ground up rethink of permissions makes sales rep and sales manager roles more stable and secure
  • TWEAKED the benchmark complete method is now compatible with an array of contacts
  • TWEAKED Contact::has_tag() now accepts an array of tags and has alias Contact::has_tags()
  • REMOVED Send email info card, replaced with new email modal widget
  • FIXED Various bugs and gotchas

2.5.4.2

  • HOT FIX Revert meta cache change

2.5.4.1

  • TWEAKED Changed base object cache group format from {$table_name}/groundhogg/db/{$object_type} to groundhogg/db/{$object_type}
  • TWEAKED Changed object meta cache group format from {$object_type}_meta to groundhogg/{$object_type}_meta

2.5.4

  • ADDED All new site activity tracking system! See which pages your contacts visit the most.
  • ADDED Support for cookie consent plugins. Define your consent cookie and value in the settings to trigger tracking and cookies in Groundhogg.
  • ADDED Built-in support for CookieLawInfo plugin.
  • TWEAKED "Active Contacts" to "Waiting Contacts" in funnel list view to avoid confusion.
  • TWEAKED Moved email logging hooks earlier to catch emails sent before the init hook.
  • FIXED Forms not submitting if multiple forms on same page with recaptcha v3 enabled.
  • FIXED PHP notice caused by invalid permission callback for API
  • FIXED PHP notices when creating a new group in BuddyBoss.
  • FIXED Spanish translations causing PHP notice for missing sprintf arguments.

2.5.3

  • TWEAKED gh-cron.php file when setup on multisite network will automatically ping all the subsites.
  • FIXED Super admin role not respected in JS userHasCap check.
  • FIXED Contacts being added to template sites in WPUltimo when they should not be.

2.5.2

  • ADDED Developer filter groundhogg/should_convert_user_to_contact_when_user_registered to prevent adding new users as contacts.
  • ADDED Developer filter groundhogg/should_extrapolate_location to prevent automatic IP based geolocation.
  • FIXED Unable to use the search in the add filters widget because of disableSelection() on sortables.
  • FIXED Unable to add new steps to funnel if no previous step was active and if there are no steps in the funnel.
  • FIXED Searching for contacts in the contact picker not showing new matching contacts.

2.5.1.3

  • FIXED Changed is_entry and is_conversion from BIT(1) to TINYINT(1) in wp_gh_steps for boolean values as BIT is not working for some versions of mySQL and mariaDB.

2.5.1.2

  • HOT FIX Funnel exporting in REST API format instead of 2.* importable format

2.5.1.1

  • HOT FIX Duplicating funnel causing fatal error
  • HOT FIX 2.5 upgrade path should be automatic in the event plugins are installed which are hiding notices.

2.5.1

  • HOT FIX Importing funnel causing fatal error.

2.5

  • For all details in this release see the roundup on Groundhogg.io
  • ADDED All new contact filtering system replaces the old advanced search filters to give a superior contact searching experience.
  • ADDED New "Groundhogg" widget to the admin bar for contact searching, adding contacts, and scheduling broadcasts.
  • ADDED Unquantifiable levels of Groundhogg 3.0 preparation.
  • TWEAKED New contact quick editing UI.
  • TWEAKED New broadcast scheduling UI.
  • TWEAKED Bumped minimum supported WordPress version to 5.0 from 4.9
  • TWEAKED Bumped minimum supported PHP version to 7.1 from 5.6
  • FIXED Bug causing license to show as disabled when it's actually active.

Groundhogg 2.4

28 releases

2.4.7.6

  • FIXED Sales manager unable to edit contacts even though they can see them
  • FIXED Sales representatives able to view and edit other's contacts if using the advanced search tools

2.4.7.5

  • HOT FIX Reverted change to contact query for contact owners.

2.4.7.4

  • ADDED HelpScout integration plugin ID for autoinstall support
  • FIXED Database warnings when adding a new subsite in a multisite install
  • FIXED Event queue not processing if the max_execution_time of a site is 0
  • FIXED Non-critical type warnings
  • FIXED Date field in forms not working
  • FIXED Funnel cookie being set more than once in the reports causing 500 error on some servers
  • FIXED Link to mailhawk.io instead of mailhawk.com
  • FIXED Dropdown field in forms with empty value causing error when not required
  • FIXED mobile phone not saving from contact quick add

2.4.7.3

  • HOT FIX Birthdays being saved in Y-n-j format instead of Y-m-d. Added migration path prompt to fix formatting for contacts with birthdays
  • HOT FIX Contact meta queries with >, <, <=, >= not working when passed into esc_url

2.4.7.2

  • FIXED Compatibility for BuddyBoss/BuddyPress core redirect to /register/ when $_SERVER['script'] is empty and DOING_CRON is defined

2.4.7.1

  • FIXED When checking for the existence of an encryption algo force to lowercase
  • FIXED Using secret_key instead of secret_iv during encryption/decryption
  • FIXED Updated POT file with missing translations

2.4.7

  • ADDED Date search filters for email logs
  • ADDED Rest route for email logs in V4 REST API
  • TWEAKED Fixed several capability checks for the REST API and typo for permission_callback
  • TWEAKED Returning FALSE from a step will still soft fail, but the funnel will continue instead of hard stopping.
  • TWEAKED Added more CSS specificity to the dropdown button widget
  • FIXED Raise time limit to 60 seconds instead of 10 ahead of running the queue, solving slow processing for server based cron jobs.
  • FIXED Missing text domain for some strings
  • FIXED Console verbose warnings for duplicate IDs

2.4.6.2

  • TWEAKED Iframe resizer checks for same origin before attempting to resize a frame.
  • TWEAKED Changed verbiage and organization of the email "Override" settings section to "Defaults" & "Footer" to be more clear as to their purpose.

2.4.6.1

  • TWEAKED POST /contacts will update a contact record if it already exists, based on email address.
  • TWEAKED Other minor updates to the REST API to improve general performance and minimize queries.

2.4.6

  • ADDED Enabled Version 4 of the REST API.
  • ADDED Default values for contact_and_user_match().
  • ADDED is_spam filter to the form submission spam check.
  • ADDED New MISC tab in the tools panel to add tools too that do not need to be top level.
  • ADDED Search by Email, Not Empty, and REGEX support for First, Last, and Email in the advanced search.
  • ADDED Ability to import/export contact notes in contact CSVs.
  • TWEAKED Strip slashes from get_url_vars().
  • TWEAKED Removed the "new feature" info card.
  • TWEAKED First & Last name columns have highest priority in the contact table.
  • TWEAKED Clicks in the reports with ?pk= in the URL will be grouped together.
  • TWEAKED You can now pass raw objects to Base_Object so your SQL queries become 1 instead of N+1, super memory savings!
  • TWEAKED Refactored contact notes to an abstract table capable of storing notes for multiple object types.
  • TWEAKED Removed Apply/Remove tag bulk actions because the Bulk Edit function now exists.
  • FIXED Tag associations count not working
  • FIXED Meta not being deleted when the associated object is deleted.
  • FIXED Owner being removed when a contact uploads a file through a form on the frontend.
  • FIXED Bounce checker username and password missing at runtime.
  • FIXED MailHawk showing in guided setup screen twice.

2.4.5.5

  • ADDED Default values for contact_and_user_match().
  • ADDED is_spam filter to the form submission spam check.
  • ADDED New MISC tab in the tools panel to add tools too that do not need to be top level.
  • ADDED Search by Email, Not Empty, and REGEX support for First, Last, and Email in the advanced search.
  • TWEAKED Strip slashes from get_url_vars().
  • TWEAKED Removed the "new feature" info card.
  • TWEAKED First & Last name columns have highest priority in the contact table.
  • TWEAKED Clicks in the reports with ?pk= in the URL will be grouped together.
  • FIXED Tag associations count not working
  • FIXED Meta not being deleted when the associated object is deleted.
  • FIXED Owner being removed when a contact uploads a file through a form on the frontend.

2.4.5.4

  • TWEAKED Better DB cache support for multisite functionality.
  • TWEAKED Change DB cache group when blog changes using switch_to_blog.
  • TWEAKED Improve tag mapping for changes in marketing and GDPR consent.
  • FIXED GDPR marketing consent not saving in Groundhogg form submissions.

2.4.5.3

  • TWEAKED Updated JS dependencies.
  • TWEAKED The groundhogg/email/to filter also passes the $contact and $this
  • TWEAKED The Admin Notification step will now accept any replacement code in the To field.
  • TWEAKED New developer actions and filters to the import & field mapping process. Thanks @petervkay!
  • TWEAKED Updated the translations file and fixed some translations.

2.4.5.2

  • HOT FIX Updated DB->delete() method not accepting capitalized ID index.

2.4.5.1

  • ADDED Document event support for replacement codes
  • ADDED Additional hooks for the email build process.
  • TWEAKED db->delete method now supports an array WHERE format as well as row IDs.
  • TWEAKED Update the last_changed in the object cache when tag counts are changed.
  • TWEAKED Optimized the tag count increment/decrement functions to only require 1 mySQL call instead of 2.

2.4.5

  • ADDED files for Rest API v4, none active for now.
  • ADDED jsonSerialization to Base_Object class for easier creation of API responses.
  • ADDED New replacement codes for mobile_phone, primary_phone_ext.
  • TWEAKED First 10 tags show in the contact details card, then click a link to see all of them.
  • TWEAKED First 10 tags show in tags column in the contact list.
  • FIXED Unsubscribe link nonce missing.
  • FIXED Typo in admin preferences notice.

2.4.4.7

  • TWEAKED Can now add + to phone numbers in the admin notification.
  • TWEAKED Replacements table modal to be separated into categories, add names of replacement codes.
  • TWEAKED Move info card CSS and JS around to make it more modular and usable in extensions.
  • TWEAKED Added SiteGround cron job instructions to the Cron Job setup flow.
  • FIXED Remove wp_register_script for Vue JS
  • FIXED Contact quick edit not usable when table columns spill over width of the page

2.4.4.6

  • TWEAKED Info card CSS
  • FIXED Admin Notification SMS not working.

2.4.4.5

  • ADDED Powered by Groundhogg credit to preferences page IF the include affiliate image in emails option is enabled.
  • TWEAKED Added MINUTE in seconds expiration to wp_cache_set calls
  • FIXED Form CSS not showing in the block editor
  • FIXED Calls to functions deprecated in 5.7

2.4.4.4

  • FIXED Illegal syntax causing fatal error in PHP 8.0.3

2.4.4.3

  • FIXED API bug caused by DB class update.

2.4.4.2

  • TWEAKED Updated the DB update function to accept an array as the first parameter.
  • TWEAKED Added an action to the contact details card to add more information from third party plugins.

2.4.4.1

  • ADDED Additional developer actions to the reports pages to add more relevant ecommerce reports.
  • ADDED SUM() helper function to the DB class API.
  • TWEAKED Reformatted a lot of code to bring it up to core WP standards.

2.4.4

  • ADDED Contact bulk editing (finally).
  • ADDED Add contacts to a funnel from the contacts table in the more actions dropdown.
  • ADDED Delete contacts from the more actions dropdown.
  • TWEAKED Cleaned up the UI in the contacts table by putting multiple actions in a dropdown button.
  • TWEAKED using the core WordPress object cache will be disabled by default, fallback to custom non-persistent object cache. This should fix any strange behaviour being seen on some installs.
  • TWEAKED meta tables get their own object cache group.
  • TWEAKED Filter out optin status tags from being applied or removed.
  • FIXED New personal email feature sending email in plain text when should be text/html.
  • FIXED Notes using the contacts object cache group.
  • FIXED Removed the example formatting info card.

2.4.3

  • ADDED Option to bypass object caching altogether.
  • TWEAKED correctly set last changed cache when tag relationships updated

2.4.2

  • TWEAKED New complex object caching causing some weird behaviour on some installs, refactored to bypass any complex object caching and only do root DB level object caching.
  • TWEAKED Added additional filters to the cron setup tool.

2.4.1

  • FIXED Erroneous comma causing fatal error on contacts screen.

2.4

  • ADDED Expand/Collapse all contact info cards.
  • ADDED View/Display management for info cards so you can hide ones you don't use.
  • ADDED Company phone & mobile phone contact fields.
  • ADDED Tags, Mobile Phone, Location, & Local time to the contact detail card.
  • ADDED Send email info card widget to send one-off emails quickly.
  • ADDED Links to easily change optin status within a contact record.
  • ADDED Better support for multiple phone types and phone extensions to the phone field in the form builder.
  • ADDED Reset tool in the Updates/install screen. Useful for testing purposes.
  • ADDED Purge function for skipped/cancelled events as well as failed events.
  • ADDED Quickstart checklist on the welcome screen.
  • ADDED Quick search bar on the contacts list screen.
  • ADDED API for additional columns in the contact table. If using the Advanced Custom Meta Fields extension new fields can be automatically added to the contacts table.
  • ADDED Initial framework for the search filters API, a way to create advanced contact searches in 3.0.
  • ADDED Warning when admin users are logged in on the preferences screen when trying to manage someone else's preferences.
  • ADDED Optin Status, Contact Owner, Primary and Mobile Phone to the contact quick edit.
  • TWEAKED Improved the cron setup screen, made it a default suggestion, method to verify setup was done correctly.
  • TWEAKED Replacements now support Group, Name, and Default Arg attributes when registering.
  • TWEAKED Merged segmentation and general info tab, moved all editable fields to the general tab from the details card.
  • TWEAKED Refactored contact notes as an info card widget.
  • TWEAKED Refactored contact files as an info card widget.
  • TWEAKED Merged Install & Updates tabs in the tools screen.
  • TWEAKED Improved method of dequeueing styles on the managed pages.
  • TWEAKED Quick add form to consolidate fields and add mobile phone field.
  • TWEAKED Optimized use of Object Caching in the parent DB class. Now used by multiple methods and not just the main query method.
  • FIXED Typo in filter of title actions.
  • FIXED PHP Warnings & Notices during uninstall.
  • FIXED Dequeue Avada theme styles on the managed page.

Groundhogg 2.3

6 releases

2.3.4.1

  • FIXED Login fails caused by event tracking not being available.

2.3.4

  • ADDED Ability to declare data processing consent and marketing consent when importing contacts.
  • ADDED Ability to change the column header type when exporting contacts.
  • ADDED Option disable unnecessary cookies like groundhogg-lead-source in the Compliance settings.
  • ADDED Initial Info Cards implementation for the contact records.
  • TWEAKED Improved the default columns when exporting contacts.
  • TWEAKED Improved UI for exporting and importing contacts.
  • TWEAKED Better handling of the page tracking script, will now only track on pages when tracking is explicitly requested via the funnel.
  • TWEAKED Removed jQuery dependency for the groundhogg-frontend script.
  • TWEAKED You can now search by full name in the contact quick search.
  • FIXED Updated POT file.

2.3.3

  • ADDED Setting to enabled one click unsubscribe in the Compliance settings.
  • ADDED Setting to disable the list-unsubscribe header.
  • TWEAKED list-unsubscribe header will not be added if the email is transactional.
  • TWEAKED Added a call to action for contacts to re-subscribe if they unsubscribe.
  • TWEAKED Changed the manage email preferences from from radio buttons to links for better UX.
  • TWEAKED Change the color of the erase profile button to red for better UX.
  • TWEAKED Change the color of the unsubscribe preference options to red for better UX.
  • TWEAKED Split GDPR consent into Data Processing Consent and Marketing Consent for improved compliance.
  • TWEAKED Contacts can now manage their marketing and data processing consent on the profile page.
  • TWEAKED Added a confirmation step to the GDPR profile erasure feature. Explain what will/will not be erased.
  • FIXED Google Recaptcha v3 not working with ajax form submission.

2.3.2

  • FIXED Owner dropdown not limited to users with owner capabilities
  • FIXED Rescheduling and canceling events in the admin screen not working.

2.3.1

  • FIXED Unable to activate plugin caused by fatal error

2.3

  • ADDED New feature. Email logging! Emails can be logged optionally. Find it in the new Logs screen.
  • ADDED New feature. Real-time User Meta Syncing! The user meta will be synced in real-time to the contact record when enabled in the General Settings.
  • TWEAKED Events have been moved to the Logs screen to differentiate it from other kinds of events in WordPress.
  • TWEAKED There are now 3 email service options. Core WordPress email, Groundhogg transactional email, and marketing email.
  • TWEAKED Any role with the user cap of view_contacts will be applicable for contact owner status.
  • TWEAKED Removed the key param appended to the URL after a tracking link is clicked. Replaced with the pk param now.
  • TWEAKED Better capability checks for tabbed pages like the tools for more granular access.
  • TWEAKED Email step actions are now visible persistently.
  • TWEAKED Option to uninstall the gh-cron.php file added for debugging purposes.
  • TWEAKED When installing the gh-cron.php file Groundhogg will automatically be unhooked from WP-Cron instead of requiring manual input.
  • TWEAKED Changed verbiage of Primary User to Primary Contact Owner for better clarity.
  • TWEAKED If the Primary Contact Owner is defined all new contacts will have the owner ID of that contact set by default unless it is otherwise changed.
  • TWEAKED When contacts are being added manually or imported the contact owner will be automatically set to the current user unless otherwise specified.
  • TWEAKED Improved sync of first, last, and email between user records and contact records.
  • TWEAKED When using an existing email as a template the from user will be copied instead of set to the current user.
  • FIXED key param conflict with EDD.
  • FIXED the sync users tool will re-sync already synced users and contacts.
  • FIXED Reporting not loading when script debug is enabled.
  • FIXED Wonky CSS in the tools page.
  • FIXED Sales Representative and Sales Manager roles capabilities for adding contacts manually.
  • FIXED Clicking search when in the contact screen will take you to the list with the search open.
  • FIXED PHP notices caused by empty reports in the reports area.

Groundhogg 2.2

40 releases

2.2.24

  • ADDED Ability to have multiple email services installed and differentiate between marketing and transactional emails.

2.2.23.4

  • TWEAKED Replacement codes will default to blank "" if no info is available instead of the code name.
  • FIXED ChartJS not loading after WordPress 5.6

2.2.23.3

  • TWEAKED Improved system status file with more useful information for the support team.
  • TWEAKED Auto Link link will support CID specified in the url.
  • TWEAKED Added DOING_GH_CRON constant to the gh-cron.php file.

2.2.23.2

  • FIXED License missing message showing even though all active extensions are licensed in some cases.

2.2.23.1

  • FIXED License missing message showing for non official extensions. Only show for extensions with official ids.

2.2.23

  • TWEAKED Improved license management in the background.
  • FIXED Deprecated jQuery function calls in the fullframe.js script.

2.2.22

  • TWEAKED If the url is just /gh/ then display the preferences screen.
  • TWEAKED Added noindex to the managed page. Should have done this sooner.
  • TWEAKED Unsubscribe links are now valid for 1 week instead of just 1 day.
  • FIXED {confirmation_link_raw} & {auto_login_link} with redirects not being saved when placed inside buttons.

2.2.21.1

  • FIXED URL encoding for {confirmation_link} and {auto_login_link} redirects

2.2.21

  • FIXED pk being invalid if multiple usages withing the same email.
  • FIXED Error in contact screen caused by invalid step ID provided for starting a funnel.
  • FIXES permissions callbacks in open API endpoints.

2.2.20

  • Various fixes and tweaks
  • UPDATED readme.text
  • ADDED support for detecting HTTP_CF_CONNECTING_IP header.
  • ADDED do_replacements to the reply-to override.

2.2.19.5

  • TWEAKED Merged autocomplete meta picker from ACMF extension into core.

2.2.19.4

  • ADDED Auto login link replacement code. Allows 1 time use auto login links for contacts that have linked user accounts.
  • TWEAKED The delimiter for importing CSV files will be extrapolated from the CSV rather than enforcing using ,.
  • TWEAKED The permissions keys are can now be given specific usage so that they can be used in multiple contexts without given broad access.
  • FIXED Bulk add tags page still imposing 50 character limit, now fixed.
  • FIXED Tags list only showing one tag after adding a tag manually.

2.2.19.3

  • ADDED Setting to dismiss tooltips under Settings > Misc
  • ADDED Filter groundhogg/admin/reports/predefined_colors to change the colors used in the reporting charts.
  • TWEAKED Tag names are no longer limited to 50 characters. Depending on DB collation its now 191 or 255.
  • FIXED Iframe sizing script not compatible with new jQuery version

2.2.19.2

  • ADDED Unsubscribe link replacement code.
  • FIXED added content-type: text/plain header explicitly to admin notifications.
  • HOT FIX empty tracking exclusions causing all urls not to be tracked.
  • HOT FIX permissions key not being added to confirmation link.

2.2.19.1

  • FIXED E_WARNING when URL exclusions is empty.

2.2.19

  • ADDED filters to exclude certain links in emails from being re-written to tracking links.
    • You can exclude URLs from the Email settings tab.
  • TWEAKED email preferences center.
    • Visitors will be asked to confirm their identify via email in the event their contact tracking cookie is not present.
    • Contacts are issued a permissions key in every email which will be passed to the preferences center enabling the contact to make changes to their preferences.
    • If no permissions key is provided, the preferences center will be locked and the visitor will be direct to the home page.
    • A permissions key will not be required if the contact is logged in to the site.
    • Permissions keys will expire after 24 hours, they can be used multiple times in a single session within the 24 hour period.
    • Expired keys will be automatically removed from the database.

2.2.18.3

  • ADDED new function has_replacements() to check if specific content has Groundhogg replacement codes.
  • TWEAKED Custom email headers in simple editor now support replacement codes for the CC, BCC, and FROM email headers.
  • FIXED Advanced email preferences extension had invalid ID causing inability to install remotely.

2.2.18.2

  • FIXED DB error while importing contacts causing import to fail in some cases.

2.2.18.1

  • ADDED Panel in the tools > updates screen to process updates across the whole network.
  • FIXED Quick search for contacts was not working when sending a broadcast through the new quick broadcast tool.
  • FIXED meta_key index length of 255 is too long when charset is utf8mb4, set to 191.

2.2.18

  • ADDED New broadcast status of pending for broadcasts which have not been fully scheduled.
  • ADDED New broadcast support for saved searches and custom search form the contacts table.
  • TWEAKED SMS broadcasts will also go through the confirmation page.
  • FIXED Bug causing browser modal confirm when confirm to send a broadcast.

2.2.17.1

  • HOT FIX Broadcast report using email_id for the events table although it's not ready yet.

2.2.17

  • ADDED Additional filters and hooks for split testing capability down the road.
  • ADDED New broadcast meta db table.
  • FIXED Minor bugs

2.2.16.1

  • ADDED Additional filters and hooks for split testing capability down the road.
  • ADDED New broadcast meta db table.
  • FIXED Minor bugs

2.2.16

  • ADDED Custom headers support to the simple email editor. Useful for adding Cc Bcc From or other email headers.
  • ADDED Central DB updates for WaaS multisite installs.
  • ADDED {notes} replacement code for the new notes format.
  • ADDED {owner} replacement code for arbitrary owner information. Usage {owner.user_email}
  • ADDED Additional filter to the step enqueue method for logic compatibility.
  • ADDED Support for Google reCAPTCHA v3.
  • ADDED optin_status_exclude filter to the contact query object.
  • ADDED Contact engagement report. Filter engaged & unengaged contacts.
  • ADDED Filter when rendering the table name.
  • TWEAKED Contacts API endpoint now support limit and offset.
  • TWEAKED Improved the UI of the extensions shop in the settings if no extensions are activated.
  • FIXED Screen options no longer saving due to breaking change in WP 5.4.2
  • FIXED SMS Broadcasts not showing in the scheduled list.
  • FIXED Transactional emails being sent to bounced/spam emails.

2.2.15.1

  • HOT FIX Cancelled broadcasts are not moved out of the event queue.
  • HOT FIX Contact marketability is not checked while scheduling the broadcast for non transactional emails.

2.2.15

  • TWEAKED Some contact editor CSS.
  • TWEAKED Replaced all occurrences dirname( __FILE__ ) with __DIR__.
  • TWEAKED Added number internationalization for all tables and admin screens.
  • TWEAKED Added number internationalization for new reports.
  • TWEAKED Updated translations file.
  • TWEAKED Show no data available notice for charts with no results.
  • TWEAKED the lead scoring report ad to look prettier.
  • FIXED Number internationalization on broadcasts screen.
  • FIXED Event actions not working on the contact activity screen.

2.2.14

  • ADDED Saved searches, custom searches can be saved and loaded.
  • ADDED Ability to edit/delete contact notes.
  • ADDED Notes context, when the note was created/last edited and by whom.
  • ADDED Transactional email support for broadcasts.
  • ADDED View Query action for broadcasts.
  • ADDED Review broadcast step before it goes live.
  • ADDED Warning if permalinks are set to plain.
  • TWEAKED Better email device preview.
  • TWEAKED Changed Apply Note to Add Note.
  • TWEAKED Broadcasts table view will default to sent if there are no scheduled broadcasts.
  • TWEAKED Funnels table view will default to inactive if there are no active funnels.
  • FIXED Do not show export contacts button for queries with no results.
  • REMOVED Option to disable the API. Disables critical functionality.
  • REMOVED Change Preferences link from email footer.
  • REMOVED Domain mismatch warning, there are many use cases where this warning is not relevant.

2.2.13

  • ADDED Ability to restrict tabs in the settings by user capabilities.
  • ADDED Additional caps to Admin and Marketer role for managing licenses.
  • TWEAKED Additional hooks/filters to the field mapping API.
  • TWEAKED Modal table CSS to make it look nicer.
  • TWEAKED Made the email WYSIWYG editor toolbar sticky when email is longer than the screen.
  • TWEAKED CSS issue on simple email page when the pipeline extension is installed.
  • TWEAKED If Groundhogg is white labelled remove the instructional video in the funnel builder when no step is selected.
  • TWEAKED Updated the instructional video to match the current version of the funnel builder.
  • FIXED Do not show signature field in user profile for non relevant users.
  • FIXED MailHawk connection failing because of incorrect use of esc_url.
  • REMOVED Duplicate benchmark file.

2.2.12

  • ADDED {owner_signature} replacement code and signature text box in profile editor.
  • TWEAKED Sales Reps/Sales Managers will now be confined to their own contact records at the root level query.
  • FIXED Users with sales_rep role not showing in the owner dropdown.

2.2.11

  • FIXED Compatibility issue with Oxygen builder
  • FIXED JS safari issue regarding the fullframe.js file
  • FIXED Import action redirecting users to the guided setup if not complete if the white label extension is installed and active.

2.2.10

  • ADDED Reporting links in email & funnels table for easy access to reports.
  • FIXED "View Funnel" link on the funnel report page causing fatal error because of incorrect field name.

2.2.9

  • ADDED MailHawk as a recommended email service.
  • ADDED Support for tracking bounces from MailHawk.
  • TWEAKED get_by() in the events table will sort DESC instead of ASC.
  • FIXED Minor CSS issues.
  • FIXED Typo in spanish translation file.

2.2.8

  • TWEAKED Checkmark will show next to applied updates in the tools section.
  • FIXED CSS issue when importing a funnel.
  • FIXED CSS issue for responsive grid.
  • FIXED Bug in safari causing calendar not to show at full height when embedded.

2.2.7

  • FIXED Bug causing looping 302 redirect if target url not available during a tracking link redirect.

2.2.6

  • ADDED Advanced Custom Meta Fields to list of supported downloads via the extension upgrader.
  • FIXED get_contactdata not returning false if contact does not exist.

2.2.5

  • ADDED additional arguments to filters in the email class
  • TWEAKED display style for meta replacement codes
  • FIXED tab title missing on bulk processing screen
  • FIXED tab title missing on contact editor screen when name is not available

2.2.4

  • ADDED Additional hooks to the contact editor screen.
  • TWEAKED Optimized tracking to perform fewer queries when accessing events table.
  • FIXED Bug causing queue to fail when a contact is not available in the DB for processing.

2.2.3

  • HOT FIX Funnels can't be added to the database.

2.2.2

  • HOT FIX queued_id column not added to events table in some installations.
  • FIXED Broadcast send time showing in UTC0 in new dashboard.

2.2

  • ADDED Brand new reporting dashboard. The old dashboard reports have been removed.
  • ADDED New search filters for contact search
  • ADDED Ability to distinguish emails as transactional or marketing. Transactional emails will ignore marketability.
  • ADDED 1 click unsubscribe support for Gmail & Yahoo.
  • TWEAKED Event queue is now a separate table gh_event_queue for faster processing, completed events are moved to the gh_events table.
  • TWEAKED Updated the managed page style to reflect modern WordPress.
  • TWEAKED Improved form impression tracking
  • TWEAKED Added form name attribute to forms for GA compatibility
  • TWEAKED Contact submissions table now shows link to form instead of form ID
  • FIXED Bug causing broadcast events to be deleted if a funnel step with the same ID was deleted.
  • FIXED Bug causing the contacts' time zone to be UTC-0 if one was not provided.
  • FIXED create_user_from_contact() missing user's email address.
  • FIXED Newline characters appearing in tag names when bulk editing.
  • REMOVED the do_api_benchmark REST endpoint and moved it to the advanced features extension.
  • REMOVED SendWP promotion.

Groundhogg 2.1

57 releases

2.1.14.1

  • ADDED Tab in tools to show how to enable the gh-cron.php file
  • TWEAKED Create an index on the event claim

2.1.14

  • ADDED Option to enable beta versions of Groundhogg extensions!
  • TWEAKED Updated limits utils class to allow for multiple synchronous processes.
  • TWEAKED Auto cleanup the events table to allow for "stuck" events to be completed.
  • TWEAKED Sending speed statistic shows more accurate speed now.
  • FIXED tools debug log throwing a time limit error.

2.1.13.16

  • ADDED Option to enable beta versions of Groundhogg extensions!
  • TWEAKED Updated limits utils class to allow for multiple synchronous processes.
  • TWEAKED Auto cleanup the events table to allow for "stuck" events to be completed.
  • TWEAKED Sending speed statistic shows more accurate speed now.
  • FIXED tools debug log throwing a time limit error.

2.1.13.15

  • FIXED Bug causing Groundhogg tables to be deleted on main site when deleting a subsite in some cases (only on multisite).

2.1.13.14

  • FIXED Permalink conflict when home URL (frontend) is different that site url (backend).

2.1.13.13

  • FIXED Bug causing email alignment to not work.

2.1.13.12

  • TWEAKED Updated responsive email template to perform better on Windows 10 Mail, IOS mobile devices and Outlook Mobile
  • FIXED Optin status search using incorrect optin status for the selected option.

2.1.13.11

  • TWEAKED Add method for automatic updates and non-automatic updates at the same time.
  • TWEAKED Remove non word characters from the export file name when exporting funnels.
  • TWEAKED Store micro_time of event completion to better show events in the order they were completed in.
  • FIXED Bug causing tag related benchmarks to not properly import tags when importing a funnel template.
  • FIXED Delay timer bug caused by difference between localtime and system time.
  • FIXED Bug allowing contacts to move backwards in a funnel if a benchmark is completed during the same queue process as the step which triggered it.

2.1.13.10

  • ADDED New experimental feature, broadcast send speed.
  • FIXED Bug causing duplicate date timers to appear in the funnel editor.

2.1.13.9

  • HOT FIX for queue processing issue.

2.1.13.8

  • ADDED Reporting link to row actions in broadcast table.
  • TWEAKED processing events manually now goes through the bulk processor rather than while reloading the page.
  • FIXED When claiming events, double check the claim is empty to avoid creating a new claim for one already in progress.
  • FIXED decode special chars in from name.
  • FIXED test email sent to customer on list if providing an invalid test email address.
  • FIXED weird behavior when deleting steps with active contacts.

2.1.13.7

  • TWEAKED bulk job will now retry 3 times before failing.
  • FIXED Bug in the broadcast scheduler sometimes causing it to fail when checking for the marketable status of a contact.
  • FIXED getting items from CSV will pad array if header size is large than the row

2.1.13.6

  • TWEAKED Make usage tracking GDPR compliant.
  • TWEAKED Funnel events are given higher priority than broadcast events in the event queue.
  • TWEAKED The marketable status of a contact will be checked before scheduling any broadcast emails.
  • FIXED Ajax Form Submission not working.
  • FIXED checkbox required attribute not added in HTML.

2.1.13.5

  • FIXED Removed version 2.0.8.1 from the db upgrade path. Redundant upgrade.

2.1.13.4

  • TWEAKED Fixed UI compatibility issues for BadgeOS and Post Affiliate PRO in the funnel builder.
  • FIXED Groundhogg update notice not showing site wide.
  • FIXED left test update version in code.

2.1.13.3

  • TWEAKED Fixed UI compatibility issues for BadgeOS and Post Affiliate PRO in the funnel builder.
  • FIXED Groundhogg update notice not showing site wide.

2.1.13.2

  • TWEAKED Update path will no longer run automatically. Instead a notice will show that there are required updates which will need an administrators attention.

2.1.13.1

  • ADDED Lock to the update path so two update processes cannot run.
  • ADDED Optional update to revert automatic DB update in during 2.1.13 upgrade
  • ADDED "Are you sure?" confirmation when re-performing manual updates from the tools page.

2.1.13

  • TWEAKED Refactored optin_status to be 1 greater than the previous value. Ranges from 1-8 instead of 0-7. This allows better handling of the "unconfirmed" status which used to be marked with a 0 value.
  • TWEAKED better handling of row options in the contact table for optin statuses.
  • TWEAKED 1/1 will automatically be selected when choosing size for columns in the form builder.
  • FIXED Admin CSS not loading properly

2.1.12.9

  • FIXED The form field builder was loading on every admin page. Now only loads on funnel edit screen.
  • FIXED Form config not saving

2.1.12.8

  • TWEAKED The "Add Contacts" to funnel form now has the first step selected by default.
  • FIXED CSS of notices causing them to show behind the step settings.
  • FIXED filter and action name in the form class was the same causing an error.
  • FIXED removed redundant actions/filters from the form class.

2.1.12.7

  • FIXED Bug where hooks for user_registered were called when user was created through Groundhogg.
  • FIXED Bug where optin_status tags were sometimes not being created when a new contact was created.

2.1.12.6

  • FIXED Bug causing tags to not sync when adding/removing manually with WPFusion.

2.1.12.5

  • ADDED more filters & actions to the contact editor
  • TWEAKED Tag mapping for new contacts was a bit wonky when using a validation tool
  • TWEAKED CSS in contact editor

2.1.12.4

  • TWEAKED Readme
  • FIXED Url encoding sometimes wonky in simple email editor when adding links with query strings
  • FIXED Entering an invalid email address in the test email form will send test to incorrect contact record.

2.1.12.3

  • ADDED Base action/benchmark classes for better LMS integrations with LifterLMS, LearnDash, TutorLMS and any others.
  • ADDED More actions/filters to extend admin pages.

2.1.12.2

  • ADDED Option to hide the admin links in the Admin notification footer
  • TWEAKED The admin menu items for better organization

2.1.12.1

  • ADDED Option to enable "Experimental features," for flexibility to test new stuff without breaking anything.
  • TWEAKED More contextual information about the current process added to the bulk processor page.
  • FIXED Broadcast title in events table showing as SMS instead of Email and vice versa.
  • FIXED Tag relationships automatically recalculated after import or deletion of contacts.

2.1.12

  • ADDED Date Filter to contact search
  • ADDED Owner Filter to contact search
  • ADDED New hooks for search filters
  • ADDED New hooks for contact query search params
  • ADDED Support for a "primary" user for referencing contact details
  • TWEAKED Owner replacement codes will fallback to default from email instead of administrative email.
  • TWEAKED after_form_submit_handler called during non admin user registration.
  • FIXED Number validation adding "+" when shouldn't.
  • FIXED Some SMS functions related to validating mobile numbers.
  • FIXED When scheduling broadcast with "send in local time" contact tz defaulting to utc-0 instead of site time.
  • FIXED SMS Broadcast appearing as email broadcast in events table

2.1.11.3

  • FIXED Link to quickstart course on welcome page going to wrong place.

2.1.11.2

  • TWEAKED Bulk Job processor will now notify user of low max_input_vars
  • TWEAKED Transients for contact imports is now set to 1 DAY instead of 1 HOUR
  • TWEAKED Show contacts by descending ID instead of ascending

2.1.11.1

  • TWEAKED Added time_scheduled column to the events table to start tracking when an event is initially added to the queue
  • TWEAKED Modified the contact REST API ADD endpoint to support the addition of tags to the contact record.

2.1.11

  • REMOVED Groundhogg Sending Service functionality. Please use an alternative transactional email service.

2.1.10

  • ADDED Courses link to welcome screen menu.
  • ADDED CTA to take the quickstart course on the welcome screen.
  • ADDED Setting to enable unrestricted access to contact file uploads.
  • FIXED Minified js file missing from package.

2.1.9.1

  • FIXED Bug during stats collection causing fatal error.

2.1.9

  • TWEAKED Make way for new Advanced Features in the broadcast tool.
  • TWEAKED Support first order clause in the DB query sql builder.

2.1.8.5

  • FIXED PHP notice generated by early call to get_current_screen

2.1.8.4

  • ADDED Compatibility with Material WP admin theme plugin.

2.1.8.3

  • ADDED "view terms" link to the Terms form field. Links to the link provided in the settings.
  • TWEAKED Some admin CSS for 5.3.2 compatibility.
  • FIXED check that $.fn.pointer is defined for plugin compatibility when starting the guided tour.

2.1.8.2

  • TWEAKED Regular notice dismiss button will also dismiss the review notice request.

2.1.8.1

  • TWEAKED Prevent review request if Groundhogg is whitelabeled.

2.1.8

  • ADDED More filters to the event process to allow for conditional logic.
  • ADDED Meta query search to the contact search filters.
  • TWEAKED the "ALL" view in the contacts screen will now show ALL contacts regardless of optin status.
  • FIXED Specialchars in radio button options causing form to not submit.
  • FIXED Default shortcode [col] using "size" instead of "width."
  • FIXED File access URL not working on WPEngine
  • UPDATED POT file

2.1.7.2

  • TWEAKED Added the step icon to the step settings section.
  • FIXED Replacement codes are parsed based on the first occurrence of the delimiter only.
  • FIXED Old filter for extensions with custom email templates.
  • FIXED Some CSS in the funnel builder.
  • FIXED Review request notice permanently dismissing.
  • FIXED Better handling of setting the return-path email header.

2.1.7.1

  • ADDED Ability to remove files from a contact from the contact editor.
  • ADDED Last 7 Days reporting range.
  • TWEAKED You can now save contact fields as empty.
  • TWEAKED CSS compatibility for advanced email editor.
  • TWEAKED Reporting range picker now shows dates in local date format.
  • FIXED File access links not working in email if not logged in.
  • FIXED Email author was not being set in simple email builder.
  • FIXED Replacements not inserting into tiny_mce content from the replacement modal

2.1.7

  • TWEAKED Whole new welcome page UI. Goodbye to the BG image and docs/extensions. New welcome page is just focused on education.
  • TWEAKED Funnel builder UI now takes over the whole screen for the best editing experience.
  • TWEAKED Overall improvement of the layout of the funnel builder and js event management.
  • TWEAKED {files} will not longer take any parameters, just simply list the files in the filebox.
  • TWEAKED Re-designed the guided setup onboarding experience.
  • TWEAKED Initialize Groundhogg DB objects during plugins_loaded instead of setup_theme.
  • TWEAKED Add a fallback emergency DB init to the base_object class in the event a plugin calls something before the DBs are initialized.
  • FIXED Deprecated Multisite function compatibility.
  • FIXED Import CSV not uploading on some occasions.
  • FIXED Default attribute in the contact shortcode works now as per the docs.
  • FIXED Unconfirmed view in the contacts table not working.

2.1.6.3

  • ADDED Complained view to contact list.
  • ADDED More hooks to optin status management functions for the contacts admin screen
  • TWEAKED Tracking link error message when error occurs.
  • TWEAKED Ignore form spam check if user is logged in.
  • FIXED PHP notice occurring when hiding sending service settings.

2.1.6.2

  • ADDED optin status filter to contact search
  • TWEAKED Changed /files/ permalink structure to /uploads/ for backwards compatibility with older versions of WP multisite.
  • FIXED Import funnel upload not working.

2.1.6.1

  • ADDED Filter to submission handler contact args before creating a contact.
  • FIXED Fatal error in submission handler cause by undefined function when an email address is not present in the posted data.
  • FIXED continuous redirect with benchmark link click caused on some setups.

2.1.6

  • ADDED More error checking for incorrectly configured funnels.
  • ADDED Installed premium extensions now included in the stats collection.
  • ADDED Collect more useful data from stats collection like language and PHP version.
  • TWEAKED Removed old unused code from pre version 2.0
  • TWEAKED Updated POT file with new strings.
  • TWEAKED Contacts will no longer be able to move backwards through a funnel, they will only be able to complete benchmarks which come after the current active step. Contacts will still be able to restart a funnel upon completing the initial benchmark.
  • TWEAKED Hide Sending Service settings if no key is present.
  • FIXED Active contacts funnel column not showing accurate results.
  • FIXED PHP Notice when Base_Object data is empty.
  • FIXED Email will be recognized as a confirmation email when {confirmation_link_raw} is included.

2.1.5.2

  • TWEAKED When basic email editor is in use parse images to make them responsive.
  • FIXED Fatal error in tracking API caused by undefined function call.

2.1.5.1

  • TWEAKED Re-arranged the phone number and email field in the contact editor.
  • TWEAKED Event cancel link shown based on status instead of time.
  • TWEAKED Ensured conditional shortcodes work in the email builder.
  • FIXED Some UTF-8 characters not being accepted in web forms.

2.1.5

  • ADDED The beginning of the advanced contacts search.
  • ADDED Ability to search for contacts that have 1 or more tags.
  • TWEAKED UI in funnel editor to make it easier to edit funnels
  • TWEAKED Steps will show an icon when there is a configuration error
  • FIXED Bug in admin email notification when FROM email set in the settings.
  • FIXED Bug in bulk action screen causing nonce failure when items is less than 400 and importing large list.

2.1.4

  • ADDED Better all around support for default from name and email address.
  • TWEAKED List of installed premium Groundhogg extensions sent to Library API to fetch relevant funnel templates.
  • TWEAKED Escape URLs during SendWP install.

2.1.3

  • ADDED Support for {owner_phone} in admin notification SMS field.
  • ADDED Replacements support for WP_User.
  • TWEAKED Saved templates shows admin title instead of subject line as title.
  • TWEAKED Updated PO file.
  • FIXED Adding new email from "My Emails" tab while advanced email editor is enabled.
  • FIXED Bulk apply tag action not working in contact list.

2.1.2

  • ADDED options to set your Groundhogg affiliate ID.
  • ADDED option to show "this email was sent with Groundhogg" in the email footer. (using aff ID)
  • TWEAKED The form response and TY page now support replacements.
  • FIXED replacement codes in links not working in basic email editor.
  • FIXED Last broadcast report not showing most recent broadcast stats.

2.1.1

  • TWEAKED instant regret for the new add email flow. We put the old one back.
  • FIXED Notices bug when adding notice with WP_Error

2.1

  • ADDED Template library to replace builtin templates.
  • TWEAKED Better guided setup onboarding experience.
  • FIXED Some special characters not being accepted in first & last name fields.
  • REMOVED SMS, Superlinks, Advanced Email Editor, Advanced Funnel Steps.

Groundhogg 2.0

40 releases

2.0.12.2

  • FIXED Bounce checker running even if settings are not setup
  • FIXED fixed deprecated calls to mime_content_type in PHP 7.2+
  • FIXED file upload through form saving wrong URL to meta

2.0.12.1

  • FIXED Bug caused emails which were sent to appear as failed with an error related to another email address.

2.0.12

  • ADDED SendWP integration is now the recommended email delivery tool.
  • TWEAKED improved birthday field UI in the form.

2.0.11.8

  • TWEAKED Sending service now pings new serverless architecture!

2.0.11.7

  • TWEAKED Table base class now provides better support for queries in the URL
  • TWEAKED Table base class includes column_cb function
  • TWEAKED Admin_Page class will fallback on to the default view action if no method is supported for the current action.
  • TWEAKED if webhook body is empty, pass the full contact details.
  • FIXED fatal error when removing a role from a user that does not have an associated contact record.
  • FIXED Webhook test does not work in funnel builder 2.0
  • FIXED Birthday error when birthday is left blank

2.0.11.6

  • ADDED a new method "JSON import" for importing funnels.
  • ADDED error message when invalid birthday provided in the admin.
  • ADDED the {owner_phone} replacement code. Set user phone number under users > edit > contact methods
  • TWEAKED Remove error code from error message in admin because it's very ugly.
  • FIXED "Skip if confirmed" causing all confirmation "Email Confirmed" steps to trigger. Should only trigger the steps in the current funnel.

2.0.11.5

  • ADDED Default localization library and supporting functions for validating mobile phone numbers
  • TWEAKED Birthday field in contact record now supports empty value to not save DOB as incorrect date
  • TWEAKED Better handling of the birthday field in the admin
  • FIXED Connection to Groundhogg sending service account in guided setup not starting
  • FIXED First & Last name field only accepts values longer than 3 characters. Changed to a minimum of 2 characters.
  • FIXED failed event notifications missing failure reason.
  • FIXED form errors not showing on managed submit page.
  • FIXED Missing roles after updating to 2.0.11.3
  • FIXED Minor DB error introduced in last update

2.0.11.4

  • FIXED Reporting time ranges not being respected in some cases by the Contact Query
  • FIXED Calling static method from instance causing PHP notice.

2.0.11.3

  • FIXED 'upload_files' cap is removed if uninstalling and "remove all GH data" is enabled in the settings.
  • FIXED leadsource cookie in js not matching up with PHP causing leadsource to be missing in some cases.
  • FIXED First & Last will no longer be modified to strtolower or ucwords
  • FIXED Contact appearing in query twice if has 2 tags which are both in the tags_include request

2.0.11.2

  • ADDED More developer hooks and filters.
  • TWEAKED Show merged content email in the add view instead of plain body in div.
  • FIXED Bottom bulk action not working
  • FIXED Image SRC with query strings were being unfairly sanitized when email is sent.

2.0.11.1

  • ADDED Preview pagination to paginate records during the import mapping process
  • ADDED ALT-Body editor to the new Simple Email Editor
  • TWEAKED Parse email content for images and sanitize their styling for guaranteed responsiveness.
  • TWEAKED Mapping User/Owner ID also supports user email and username as well as ID
  • FIXED export list function only exports the contacts listed and not all the contacts from the query.
  • FIXED Updated the POT file.

2.0.11

  • ADDED New simple email builder option for users who'd rather use the WP editor instead of our email builder.
  • ADDED Show Premium SMTP options in email step during guided setup.
  • ADDED Safe mode. Enables the easy temporary deactivation of other plugins.
  • TWEAKED Shortened the tracking link markup
  • TWEAKED remove editor styles from email text block.
  • FIXED Email Browser view sometimes not loading email at correct height.

2.0.10

  • ADDED Option to disable behaviour of the logged in user taking precedence over tracking link information.
  • ADDED Compatibility to extend the preferences center.
  • TWEAKED Failed event notifications will send a max of 1 per minute.
  • TWEAKED Updates amd Install tools tab shows display names instead of identifiers.
  • FIXED Typo in 'cancelled' status.
  • FIXED CSS issue in "Add Step" modal in the V2 editor.

2.0.9.16

  • ADDED German translation. Shout out to Josef Weindler for making that possible.
  • FIXED updated POT file to include new and updated strings.
  • FIXED IP geolocation from geoplugin.net not working due to the referer not being set properly.

2.0.9.15

  • FIXED File access URL

2.0.9.14

  • ADDED Support for serialized contact meta on the custom info page.
  • ADDED Support for syncing contact meta in the user sync tool
  • ADDED Support for manually starting upgrade process for Groundhogg and other extensions
  • ADDED Support for manually starting install/activation process for Groundhogg and other extensions
  • ADDED New "change preferences" link takes contacts to the profile preferences page
  • TWEAKED "Unsubscribe" link now takes contacts to the manage preferences page instead of the profile preferences page
  • TWEAKED Reporting time ranges
  • FIXED Events actions in the contact activity tab not redirecting back to contact record.
  • FIXED View all events in contact activity tab not showing contact specific events.

2.0.9.13

  • FIXED Unable to save email as ready.
  • FIXED Bug where content not deselected in email editor after update

2.0.9.12

  • TWEAKED Email saving to only post required arguments instead of whole form
  • TWEAKED Error notice JSON will now also include the original error code and message
  • TWEAKED better support for HREF and SRC attributes in array_to_atts()
  • FIXED Alt-body newlines missing when auto generated from html content.
  • FIXED Clicking on a funnel/step/contact in the events table shows events related to the query
  • FIXED Error during saving email causing block toolbar to dissapear
  • REMOVED API V2, it wasn't being included anyway so it's just taking up file space
  • REMOVED WP Bakery Block, wasn't working anyway and WP Bakery is no longer relevant to support

2.0.9.11

  • TWEAKED DB queries make better use of the wp_cache system.
  • TWEAKED Tracking stats optin now requires a choice of which free extension you want to avoid confusion.
  • FIXED possible function re-declaration causing fatal error.
  • FIXED File access rule for admins not allowing them to download contact files.

2.0.9.10

  • FIXED Unconfirmed view in contacts table showing all contacts
  • FIXED Contact query using groupby in count request causing unexpected behaviour

2.0.9.9

  • FIXED Unable to download export files.
  • FIXED Contact Query returning an array during when counting if count is 0
  • FIXED GeoIP not working after switch to wp_remote_get

2.0.9.8

  • FIXED first and last name checked eve if not present in form
  • FIXED manage-page added to posts db every time plugin updates
  • FIXED Bug where nested replacements caused fatal error.

2.0.9.7

  • ADDED Action to reset tags in the event of a failed install.
  • FIXED Various recommendations from the WP Plugin team
  • FIXED Import function for contacts not working.

2.0.9.6

  • FIXED Various security issues.

2.0.9.5

  • FIXED Arbitrary readfile vulnerability

2.0.9.4

  • TWEAKED Contact Query class optimized
  • FIXED bug where admin user linked to contact record on update.
  • FIXED bug completed events shows zero when running queue manually.
  • FIXED redirect after running queue to remove url params from query string.
  • FIXED missing translation context in form errors.

2.0.9.3

  • FIXED Managed page query not working.

2.0.9.2

  • ADDED missing translation contexts to preferences page
  • ADDED Screen options panel to change number of records per page
  • TWEAKED rewrite url structure for managed pages now open to modification if you know what you're doing.
  • FIXED SMS page orderby broken

2.0.9.1

  • FIXED pagination bug when manually selecting a page.
  • FIXED DB query bug showing too many results on tags page.

2.0.9

  • ADDED Plugins API benchmark! Developer happiness is now at an all time high!
  • ADDED Plugins API endpoint for using webhooks to move people through funnels.
  • ADDED Birthday field mapping for importer and form integrations.
  • TWEAKED Added compatibility for DB query vars with similar names. e.g. 'val' & 'value' or 'relation' & 'relationship'
  • FIXED missing minified file for the delay timer action.
  • FIXED Field label showing even if no label in the form builder.

2.0.8.1

  • ADDED Rewrite rules list to system report.
  • TWEAKED Create user bulk job now has a 'Role' option.
  • FIXED Bug in Abstract Table class causing fatal error in some extensions in Admin view.
  • FIXED Bug where adding query strings to url in email builder caused a 404 error.

2.0.8

  • ADDED birthday field support for the form builder and contact record.
  • ADDED option to disable the JS page tracking script.
  • TWEAKED optimized some DB queries and tables
  • TWEAKED form shortcode supports do_replacements to autopopulate form fields with replacements info.
  • FIXED Un-needed tracking script loading on admin pages.
  • FIXED Form impressions cookie checked before logging new impression.

2.0.7.1

  • FIXED Error adding .htaccess to protected /groundhogg/ uploads folder
  • FIXED function imap_open checked if exists before usage.

2.0.7

  • ADDED file_access_url() to create access links for protected Groundhogg files.
  • FIXED Admin_Page::admin_url() not using based admin_url() funtction.

2.0.6

  • FIXED File uploader causing error when file is not uploaded.

2.0.5

  • FIXED Typo in the Sending Service settings
  • FIXED Updates showing for inactive premium extensions.

2.0.4

  • FIXED Fallback from details missing when email sending from contact owner but no owner is set.
  • FIXED Non-required phone field throwing validation error.
  • FIXED Broadcasts not showing in table.

2.0.3

  • ADDED class to allow for old versions of extensions to update.
  • FIXED EDD_Updater class not being initialized for 2.0 versions of extensions.

2.0.2

  • FIXED verbage in email for tracking optin.
  • TWEAKED HTML utils link picker class.

2.0.1

  • See all new changes here.
  • USE Namespace, autoloader, and more goodies to improve code organization.

Groundhogg 1.3

25 releases

1.3.11.13

  • FIXED bug that allowed the Create User step to add users to any subsite on a multisite.

1.3.11.12

  • ADDED Preparation for upgrading to 2.0

1.3.11.11

  • FIXED {id} not working
  • FIXED GDPR & Terms compliance being removed when updating a contact

1.3.11.10

  • FIXED Altbody being included in plain text emails when using GH_SS_MAIL function.
  • FIXED Street Address 2 should not be required.

1.3.11.8

  • FIXED comptibility bug with plugins which include forms on all admin pages.
  • FIXED Plaintext emails being sent out with missing line breaks when using the Groundhogg sending service.

1.3.11.7

  • FIXED Listener for bounce errors when using GHSS not causing PHP notice on PHP < 7.1

1.3.11.6

  • FIXED CSS z-index of select2 in funnel editor caused by previous compatibility resolution.

1.3.11.5

  • FIXED CSS compatibility issue with select2 in the form builder when WPEP is installed.

1.3.11.4

  • TWEAKED Field timer now normalizes any custom meta given to ensure it works as intended.
  • FIXED failing security check when submitting forms from the admin screen.
  • FIXED form styling in admin screen.

1.3.11.3

  • FIXED NAMSPACE constant not allowed in php 5.6, changed to NAME_SPACE for backwards compatibility.

1.3.11.2

  • ADDED New more self explanatory hook to register API endpoints for extensions.
  • ADDED NAMESPACE constant for v3 API.
  • FIXED Bug when importing contacts under 400 may exceed max_input_vars setting
  • FIXED Missing images in Email Setup Step
  • FIXED Oauth domain registration in guided setup giving a missing parameters error.

1.3.11.1

  • FIXED Last name placeholder missing.

1.3.11

  • ADDED All/Any condition to Tag Added & Tag Removed Benchmarks

1.3.10

  • ADDED support for unicode letters in first/last name regex.
  • FIXED Admin notification not showing line breaks when sending with plain text emails.

1.3.9

  • TWEAKED Page pickers on settings page are now ajax powered to avoid extraneous get_posts() call.
  • TWEAKED tracking links, link click benchmarks, and Superlinks now use re-write rules to perform redirects rather than checking the REQUEST_URI.
  • FIXED Loading form integration when Elementor PRO is not installed.

1.3.8

  • FIXED Status toggles inheriting incorrect CSS labels.
  • FIXED not adding new emails from Custom Email templates.
  • FIXED Report meta query only using source_page as meta key.

1.3.7

  • ADDED extra nonce to frontend form impression checks to ensure request is intentional.
  • ADDED extra nonce to frontend page view checks to ensure request is intentional.
  • ADDED option to include full or minified files.
  • FIXED v2 Elementor integration conflict
  • FIXED v2 Elementor integration script inclusion.

1.3.6

  • Just a notification to prompt users to update to plugin with resolved vulnerabilities.

1.3.5

  • ADDED local images to assets/images
  • FIXED remote code execution (RCE) vulnerability (https://www.pluginvulnerabilities.com/2019/04/05/our-proactive-monitoring-caught-an-authenticated-remote-code-execution-rce-vulnerability-being-introduced-in-to-groundhogg/)
  • REMOVED Extraneous jQuery library.

1.3.4

  • FIXED Fixed the new Elementor integration which was disabled in 1.3.1. Elementor Integration now supports complex field mapping.

1.3.3

  • ADDED New meta_query & meta_query_count helpers to the DB widgets to cut down on duplicate code.

1.3.2

  • HOT FIX for dashboard db error when no new contacts have been created.

1.3.1

  • HOT FIX Rollback Elementor integration to previous version as doesn't work when multiplte forms on same page.

1.3

  • ADDED Tags settings tab to add options for tag mapping
  • ADDED optin status tag mapping so that it is easier to reference a broad scope of contacts without having to manage the tag associations through funnels.
  • ADDED option to enable/disable cron job via GHSS from settings page.
  • ADDED Tools Specific page for managing imported lists, exported lists, system info and other tools to be added in the future.
  • ADDED Field mapping when importing contact lists, as well as a page to re-import lists and delete imported lists.
  • ADDED New method for exporting lists, lists are now generated server side and are stored in an exports folder, exports can be re-downloaded multiple times.
  • ADDED Api for mapping fields for form integrations and Zapier integration for more flexibility.
  • ADDED Field mapping to the Elementor integration.
  • TWEAKED Major performance overhaul of report generation for the dashboard. reports arte now generated much quicker when the number of contacts is > 20,000
  • TWEAKED Users are no longer auto converted to contacts upon installation. you must now sync contacts via the tools page.
  • TWEAKED Overhauled the file system for contact specific uploads, as well as for imports/exports.
  • TWEAKED X-Mailer header now set as Groundhogg.
  • TWEAKED skipping email confirmation emails will result in a skip rather than a WP_Error
  • TWEAKED funnels events which return false will soft fail and skip rather than hard fail with a WP Error.
  • TWEAKED Changed MOST instances of "new WPGH_Contact()" to "wpgh_get_contact()" so that the contacts cache is checked rather than querying the DB every time.
  • TWEAKED Changed MOST instances of "new WPGH_Step()" to "wpgh_get_funnel_step()" so that the steps cache is checked rather than querying the DB every time.
  • TWEAKED implemented a tag cache array to avoid duplicate db queries.
  • TWEAKED the Admin page abstract class to include more beneficial functions.
  • TWEAKED Obfuscated the email address on the email preferences page.
  • TWEAKED Broadcast scheduling gets sent through new bulk jobs system.
  • FIXED EDD Plugin Updater slowing down admin dashboard with extraneous call to api endpoint.
  • FIXED Renamed EDD Plugin Updater to prevent conflicts from another plugin.

Groundhogg 1.2

14 releases

1.2.10.2

  • HOT FIX Send all emails in HTML content type as GHSS does not like plain text emails. Use 'the_content' filter on plain text emails.

1.2.10.1

  • HOT FIX Elementor form integration broken after last update.

1.2.10

  • ADDED Send email notifications when event fails option.
  • ADDED Test method for GHSS.
  • TWEAKED Moved Misc settings to a misc tab
  • TWEAKED SMS Step now has a skip if no phone available option.
  • TWEAKED GH SS now uses an extended version of PHPMailer for better email encoding and support for attachments.
  • FIXED checking for option that does not exist in SMS Step. (Non lethal)

1.2.9.1

  • HOT FIX for WP mail bug when using GHSS.

1.2.9

  • ADDED Submission handler function for form extensions.
  • ADDED Shoddy column support for email builder.
  • ADDED Link picker for Button & Image Email blocks
  • ADDED Warning when sending email from an email address which has a different host than the given site.
  • TWEAKED improved link picker for link supported benchmarks.
  • TWEAKED Form File input visual ques.
  • TWEAKED Form Date picker now uses jQuery datepicker UI instead of browser date select.
  • TWEAKED Contact now has a meta cache array for faster querying of metadata
  • FIXED Iframe in modal now has proper scroll bar.
  • FIXED wp_mail() bug.
  • FIXED Site stats collection had num contacts and num funnels reversed.

1.2.8

  • TWEAKED Better warning for the global multisite db network.
  • FIXED Does not drop main network DB if subsite is deleted when the global DB option is enabled.

1.2.7

  • ADDED DB status to system report.
  • FIXED typo in notice when changing a contacts email address.
  • FIXED Dashboard not loading if circle graph report is in closed position.

1.2.6

  • ADDED progress bars to import/bulk delete tools to provide visual keys for progress.
  • ADDED Last broadcast Report in the dashboard.
  • TWEAKED Broadcasts are now scheduled in batches to avoid timing out for larger lists on bad hosting.
  • FIXED Add note not working. Code removed accidentally.

1.2.5

  • TWEAKED wpgh_get_contact now uses a cache to avoid multiple creations of similar objects.
  • TWEAKED Added option to send transactional emails through the Groundhogg Sending Service.
  • FIXED Send in TimeZone not scheduling events at the correct time in some cases.

1.2.4

  • ADDED Updated API methods v3.
  • ADDED My templates to emails section for easy duplicating of emails.
  • ADDED Ability to search and copy previous emails from the my-emails tab.
  • TWEAKED When duplicating and email append (Copy) to the subject line.
  • TWEAKED New UI for adding options and tags in the form builder.
  • TWEAKED API only loads when wp_rest_init is invoked rather than loading all of the classes ahead of time.
  • TWEAKED API Errors now have more revealing HTTP response codes.
  • TWEAKED Frontend tracking script now uses the REST API instead of admin-ajax.php for better performance.
  • TWEAKED Rather than explicitly enabling the API, a user must now explicitly disable it due to the fact we now use the API for most basic functionality.
  • FIXED Form Impression reporting bug only tracking impressions for existing contacts.

1.2.3

  • TWEAKED Reporting widgets can also register a shortcode for custom admin pages
  • TWEAKED Improved class hierarchy for custom reports in the dashboard
  • TWEAKED SMS Api & Email API now use id_or_email
  • FIXED Global Multisite DB queue error
  • FIXED Email & SMS API Sending notification should be POST, not GET

1.2.2

  • ADDED Schedule broadcasts at time in subscribers' timezone.
  • ADDED Schedule timers to run in subscribers' timezones.
  • ADDED Schedule SMS Broadcasts to run in subscribers' timezones.
  • ADDED Geographic reports to dashboard
  • ADDED Pie chart of optin status report
  • ADDED Tools menu item.
  • ADDED Admin menu base class for use in extensions.
  • TWEAKED Funnel Breakdown will now also feature a line chart of contact progress
  • TWEAKED Emails sent using the Groundhogg Sending Service will not longer use wp_mail as backup for error reporting purposes
  • TWEAKED The Groundhogg Sending Service url is now aws.groundhogg.io to improve the speed of requests.
  • FIXED Confirmation emails not skipping if email is already confirmed.
  • FIXED Email HTML not working

1.2.1

  • ADDED Automatic GEO location via geoplugin.net when a form is submitted and IP is collected.
  • ADDED Extrapolate location from IP via contact record.
  • ADDED Timezone and IP field to location section of contact record
  • TWEAKED changed "Address" to "Location" in contact record
  • TWEAKED excluded protected meta data from custom info tab

1.2

  • ADDED Gravatar image to contact profile.
  • ADDED Ability to unlink contact records from user accounts.
  • ADDED Guided Setup UI for new installations.
  • ADDED Central database for SMS so it can be used throughout plugin.
  • ADDED UI for managing SMS globally
  • ADDED Error reporting for failed events in the events screen.
  • ADDED Process events direct from contact activity tab.
  • ADDED Support for manually confirming a contact's email address.
  • ADDED Login abandonment funnel template
  • ADDED SMS API endpoint.
  • ADDED IMAP Test connection UI and more Bounce checker settings.
  • TWEAKED improved email and instruction copy in the funnel templates.
  • TWEAKED Add note UI rather than edit notes directly
  • TWEAKED form fields now default to required false, so no need to add required false into the form shortcode. Explicit required="true" now required.
  • TWEAKED removed SMS character limit.
  • TWEAKED removed 5 second check preventing emails sent in succession, no longer needed.
  • FIXED Email content centered if not explicitly given left align
  • FIXED Emails sent if in draft mode.
  • FIXED Non required fields are being required by the submission handler.

Groundhogg 1.1

5 releases

1.1.4

  • ADDED Search form to welcome page for docs help
  • ADDED Distinct helper methods to Funnel Parent Class
  • TWEAKED Welcome page now queries docs direct from documentation site
  • TWEAKED Welcome page now queries extensions direct from store
  • TWEAKED Stats collection will retrieve display_name

1.1.3

  • FIXED First & Last being set to null if not present in form.
  • TWEAKED Form spam verification is now more strict.
  • TWEAKED Is submission fails information is saved so you do not need to re-enter it all.

1.1.2

  • FIXED File upload file type specification not working
  • FIXED File upload not working if files not specified

1.1.1

  • ADDED New admin form submit action accessible from the contact record
  • TWEAKED Added spacing around button block & fixed centering issue for improved usability in outlook.
  • TWEAKED converted spacer to table format for outlook compat
  • TWEAKED Default email template for improved outlook compat
  • TWEAKED Image block now also uses width attribute for compatibility across platforms.
  • TWEAKED New filter and action hook guide
  • TWEAKED Form builder content area now sizes to the content automatically
  • TWEAKED Form builder content is auto formatted
  • TWEAKED Long form country is now converted to country code when importing
  • FIXED Email report wrongly included queued email statistics
  • FIXED Reporting month time ranges are now more specific

1.1

  • ADDED Prompt to allow anonymous usage tracking.
  • ADDED Logged in benchmark
  • ADDED Ability to deactivate a license from the licenses tab in the settings.
  • ADDED Ability to add tags based on radio button, dropdown selection, or checkbox enabling in the form builder.
  • TWEAKED Improved localization all around.
  • TWEAKED Quick UI improvement for creating emails from the broadcast view.
  • TWEAKED added URL params for pages with dynamic content to help excluding in various caching plugins.
  • TWEAKED API for ordering sub menu items
  • TWEAKED Renamed Groundhogg submenu item to Welcome
  • TWEAKED Various CSS fixes
  • TWEAKED SMTP check now checks for MOST WP SMTP plugins as well as Groundhogg service before publishing notice.
  • TWEAKED Referral prompt is now removed if the installation has active extensions.
  • TWEAKED Form builder is a little bit more specific when including fields to be added
  • FIXED z-index issue causing admin bar in editors to display above the admin bar.

Groundhogg 1.0

58 releases

1.0.24

  • ADDED Elementor Forms Integration.
  • TWEAKED Upped limit of contacts per request during contact import from 25 to 100 to limit the number of requests.
  • FIXED Import script making concurrent requests causing 503 errors for really large lists. Requests are now consecutive instead.

1.0.23.1

  • ADDED AR_es locale
  • TWEAKED Import contacts efficiency.
  • FIXED pass by reference notice in contact edit screen.

1.0.23

  • ADDED Tabbed contact record sections to cut down on scrolling.
  • FIXED Var dump $_FILES in contact record update.
  • FIXED Modal defaults only being loaded in funnel builder causing the modal not to work

1.0.22

  • ADDED Quick export button to contacts view
  • ADDED Import link to contact page
  • ADDED Actions for registering new From builder shortcodes
  • ADDED much better way of handling form errors.
  • UPDATED New REST API method for GH Email & SMS service that significantly improves usage performance and provides superior error reporting.
  • FIXED Some funnel builder assets loading on every page.

1.0.21.1

  • ADDED Failed status to Events table
  • FIXED Rest API function typo.

1.0.21

  • FIXED fatal error on multisite conversion of users to contacts.
  • FIXED email preferences center not being installed on multisite subsites.

1.0.20.5

  • ADDED WP Bakery block support
  • REMOVED Semaphore usage in the event queue as it was causing problems.
  • FIXED Call to deprecated function get_user_by_email()

1.0.20.4

  • FIXED Fatal error when adding users or updating user roles.

1.0.20.3

  • ADDED Translations for es_ES, fr_FR, fr_CA, ja, pt_BR, ro_RO
  • ADDED Translations
  • FIXED PHP Fatal Error when activating for the first time.

1.0.20.2

  • TWEAKED Base API Class
  • FIXED PHP error from direct accessing unresolved array.
  • FIXED PHP Fatal error when activating.

1.0.20.1

  • ADDED Beaver Builder form block.
  • TWEAKED Test Email selection will now default to the current user.
  • TWEAKED More proper error messages when now test email is selected.
  • FIXED Contact => Account linking was not working properly.

1.0.20

  • ADDED Iframe support for Forms! You can now paste forms into your CRM on any site anywhere.
  • ADDED Support for custom page builder blocks. Elementor is the first to be added. Others will come later.

1.0.19.5

  • ADDED Raw email confirmation link that can be put in buttons.
  • TWEAKED Create user step will now update a users level if the user already exists instead of adding another action to do so.
  • TWEAKED Renamed the cron job to wpgh_process_queue for better semantics.
  • TWEAKED Checking bounces now occurs hourly rather than with the queue process to avoid anything breaking being buggy.
  • TWEAKED Some benchmarks process the queue instantly. The following benchmarks are Forms, Link Clicks, Page Views & Email Confirmations
  • FIXED when creating a new email in a funnel you had to select the email after creating it which was annoying. The email is now auto updated as expected.
  • FIXED When editing an email and clicking "Save Changes" in the funnel builder not working.

1.0.19.4

  • ADDED Option to change the queue interval time.
  • ADDED plugin API to the multisite options page.
  • TWEAKED CSS for inputs & text areas hardened to not be overwritten by WC.

1.0.19.3

  • ADDED UTM Reporting
  • ADDED Preview modal for the form builder.
  • ADDED White labelling support
  • TWEAKED better tracking support for UTM variables
  • TWEAKED events belonging to a deleted step get move forward to the next available action.
  • FIXED partial match URL not accepting partial match strings.
  • FIXED wrong verbage for reporting toggle caused by altered css ID

1.0.19.2

  • ADDED Source Page report to dashboard.
  • FIXED Bug where empty title showing on contact record with no first or last name.
  • FIXED Settings page setup so that extensions can add option easier.

1.0.19.1

  • FIXED Create user step setting optin status to unconfirmed by accident.

1.0.19

  • ADDED New Contacts By Social Media Source Report
  • ADDED New Contacts By Search Engine Source Report
  • TWEAKED Added new reporting times to funnel reporting view in correlation with the dashboard
  • FIXED Collapse status of steps saved.
  • FIXED Bugs where collapsed report widgets caused JS Errors.

1.0.18.2

  • ADDED time to next queue run in the events table
  • FIXED manually process events button CSS

1.0.18.1

  • ADDED Export ability to reporting widgets
  • ADDED several new default reporting time ranges.
  • ADDED funnel breakdown report widget
  • ADDED Active Funnels report widget
  • ADDED Lead Source Activity report
  • ADDED reporting capabilities for admin and marketers
  • ADDED Compare option for META_QUERY in WPGH_CONTACT_QUERY class
  • FIXED could not collapse step if newly added.
  • FIXED could not delete all tags from a contact
  • FIXED file upload error on contact editor page when no files uploaded
  • TWEAKED moved dashboard reporting to widgets in the WP admin dashboard
  • TWEAKED the delay time between consecutive events have been changed from 10 seconds to 0 to allow for recursive and immediate queue iteration.
  • TWEAKED Cron schedule changed from every 10 minutes to every 5 minutes.
  • REMOVED Dashboard page

1.0.18

  • ADDED replacement codes {owner_first_name} & {owner_last_name}
  • ADDED date_picker generator to the HTML helper class
  • TWEAKED steps are now collapsible for better ui
  • TWEAKED Form layout CSS for better compatibility
  • TWEAKED Ignore tracking link replacement on mailto: links
  • TWEAKED Removed the ajax process functionality for queue events altogether because it was eating up too many resources and causing server timeouts in edge cases, implementation has been left included in the event someone comes up with a better way to tackle it. The best way to ensure events go out on time is to set up the server scheduler
  • TWEAKED Queue will run recursively until all successive scheduled events are completed.
  • FIXED Textarea in form builder not showing options

1.0.17.1

  • Fixed Contact Scripts breaking quick edit links in admin area

1.0.17

  • ADDED Contact File Management. Upload files from both admin and Frontend to contact record.
  • ADDED email management and sending via the REST API.
  • ADDED Date and Time form fields
  • FIXED grammer and spelling mistakes returned via the REST API.
  • FIXED Bug where user role tags were not being applied properly.

1.0.16.3

  • ADDED Account Creation button in contact record if the contact does not have an associated user account.
  • TWEAKED API V2 Improvements in json responses
  • TWEAKED default method for hooking into the user_register hook that in turn triggers the Account Created benchmark

1.0.16.2

  • FIXED Nested function loop causing 500 level error

1.0.16.1

  • TWEAKD MAX Ajax queue calls is 5 per page view to limit server load.
  • FIXED Upgrader class causing 500 error in admin
  • FIXED Form Shortcode calling class constructor with to many arguments.

1.0.16

  • ADDED introduction of the Marketplace
  • ADDED user roles re auto converted to tags and applies to the contact so sending broadcasts to specific users becomes easier
  • ADDED the standard create_contact_from_user function that can be used in multiple contexts...
  • ADDED upgrade class to handle updates
  • ADDED better API structure and authentication
  • ADDED API tab in settings area
  • ADDED Standardized method for updating email marketing preferences
  • ADDED Field timer for dynamic delay times.
  • FIXED Email block toolbar disappearing after save

1.0.15.1

  • TWEAKED Role Changed benchmark now also supports add_user_role as well.
  • TWEAKED Double check max event setting so as not to imply it could be 0
  • FIXED wrong setting name for Email Confirmation page

1.0.15

  • ADDED Gutenberg Form Block
  • TWEAKED HTML block in email builder support code-mirror now
  • TWEAKED minified ALL js files for faster performance
  • TWEAKED checkbox field now has visible value option in form builder
  • FIXED Email HTML editor view not working when editing emails in the funnel builder
  • FIXED serialized meta was not being duplicated properly when duplicating campaigns

1.0.14.1

  • ADDED Email browser page auto created on install
  • FIXED Meta data tables not registered during plugin activation causing email preferences funnel to not register correctly.
  • FIXED steps being added if dragged in but not dropped.
  • TWEAKED notice if max_input_vars to small for funnel.
  • TWEAKED removed step_order input arg from funnel editor to conserve max_input_vars since it wasn't being ued.

1.0.14

  • FIXED slashes appearing when saving contact names with the ['] of ["] symbol.
  • FIXED quotes escaped in email subject line and preheader.
  • TWEAKED better handling of changing email addresses for a contact.
  • TWEAKED exclude meta list so that meta data does not appear moe than once

1.0.13.4

  • ADDED support articles to support articles column on welcome page
  • TWEAKED double check semaphore locking is enabled
  • FIXED get_pages() not working on global multisite

1.0.13.3

  • ADDED Go back button in broadcast report if the broadcast has yet to be sent.
  • TWEAKED Export function now exports all the contact meta as well.
  • FIXED mixing source_page & page_source, now just page_source

1.0.13.2

  • ADDED New link click benchmark
  • ADDED Exclude list for scheduling broadcasts
  • FIXED Settings bug where privacy_policy and terms were overwriting each other.

1.0.13

  • ADDED code to prepare for bounce responses from AWS
  • ADDED new graph for form activity.
  • ADDED Replacement Codes Popup
  • TWEAKED View email in browser now has a shortcode and a specific page to use.
  • TWEAKED the settings page is now much more extendable for extra plugins.
  • TWEAKED there is now a check to see if a "robot" is submitting form. All robots will fail.
  • FIXED Form builder was using dropdown shortcode but that shortcode wasn't actually registered...

1.0.12

  • ADDED Interactive Broadcast pie chart.
  • ADDED Dashboard Reports.
  • TWEAKED Form Address Field to include proper placeholder information
  • TWEAKED Form Address Field to have better condensed layout
  • TWEAKED Report to use the jquery Flot library
  • TWEAKED Import contact trimming column headers
  • TWEAKED Better error reporting when contact import fails.

1.0.11.1

  • FIXED Line which included the report missing
  • TWEAKED added new code for the default form.

1.0.11

  • ADDED New Funnel Reporting Graph at top of funnel when in reporting mode.
  • ADDED compatibility for modal outside of funnel editor.
  • TWEAKED New form build improvements. Popup UI for adding fields in the form builder.

1.0.10.4

  • ADDED Introduced funnel warnings for date timers with descending dates and dates that are in the past.

1.0.10.3

  • ADDED some mobile compatibility for the funnel view. Mostly just for basic edits and funnel reporting purposes.
  • FIXED bug where cron was called a private function.

1.0.10.2

  • TWEAKED Groundhogg email service no sends email along with sender name + sender email
  • TWEAKED Event quueue locking using semaphore if it exists as a library.

1.0.10.1

  • Fixed bug where broadcasts were always being schedules for 9:30 AM despite other settings.
  • TWEAKED Cleaned up some event queue code
  • TWEAKED Switched back to an older method of queue traversal. There is now only a single ajax request that can process the event queue every 30 seconds to avoid queue collisions.

1.0.10

  • ADDED SMS messaging step. Uses the same credit system as emails.
  • FIXED Misc bug fixes.

1.0.9.2

  • FIXED contact->update() method not updating properties
  • TWEAKED parent methods in WPGH_Funnel_Step no longer call __doing_it_wrong
  • TWEAKED Queue now gives a thread ID to check on each while loop if the queue is the only one in action.
  • TWEAKED Queue will spawn separately on multisite unless global multisite usage is enabled.

1.0.9.1

  • FIXED Share link not exporting emails or tags.
  • TWEAKED Hooks for deleting and saving contacts

1.0.9

  • ADDED System Report
  • ADDED Conversion Rate Reporting for the Form Fill Step.
  • ADDED Skip Confirmation emails if already confirmed.
  • TWEAKED Email step now defaults to most recent email instead of oldest email.
  • TWEAKED "Form Fill" step now called "Web Form" step.
  • FIXED Email link picker bug replacing line before with link picker text if adding link at the beginning of a text block.

1.0.8.2

  • ADDED Share link to allow the sharing of funnels via links.
  • TWEAKED Disabled autocomplete for broadcast date picker.
  • FIXED Clicking image or button in email editor cause page reload.
  • FIXED PHP warning if a tag is deleted but a broadcast report is trying to access it.

1.0.8

  • FIXED could not use function in right context fatal error.
  • FIXED multisite funnel capability comparing string to int.
  • TWEAKED adding emails is also now done through the admin modal system.
  • TWEAKED better handling of edit email link when email changes.
  • FIXED activation error "you do not have permissions..."
  • TWEAKED DBs now clean themselves whenever stuff is deleted...
  • ADDED GH email sender API!
  • TWEAKED added failsafe event running to ensure that no event is run TWICE within 5 minutes...
  • TWEAKED emails cannot be sent within 30 seconds of each other to a contact.
  • TEAKED email sending delayed by 30 seconds

1.0.7

  • FIXED Emails were not updating from the funnel editor when click the "save changes button" in the modal. Click said button will now update the email.
  • FIXED Implemented the queue not being able to be started by two different requests.
  • FIXED multisite bugs
  • FIXED Tracking will force ssl if SSL is present in the blog url option.
  • FIXED duplicating steps in funnel literally duplicating the step which helps no one.
  • FIXED contact count not updating properly when contacts deleted.
  • FIXED longer imports using different import tag.
  • TWEAKED The create user step will now ask which blog you want to add the user too if on multisite.
  • TWEAKED if the funnel step is not available for the funnel builder than show an unkown question mark.
  • TWEAKED an event cannot be added to the queue if there is a similar event within 60 seconds of the time its being added.
  • TWEAKED if global multisite setting is enabled you can choose to only run an event if the associated step can be run by the current blog.

1.0.6

  • Added Funnel updates automatically when the modal closes.
  • Added Contacts which have unconfirmed emails will show as (Unconfirmed) int he table view
  • Added new wpgh_get_contact( $id_or_email ) function instead of new WPGH_Contact
  • Fixed removed console.log() calls.
  • Added form CSS to auto style some elements for compatibility with the from styling extension.
  • Changed the benchmark picker to be order by OPT GROUP and only include active steps.

1.0.5

  • Changed WP_Popup to be a singleton class. Enqueue with wpgh_enqueue_modal(); Calling new WPGH_Popup() will throw an error.
  • Added WP_Popup support for source from URLS. Use #source=<?php urlencode( 'https://mysite.com' ) ?>
  • Added WP_Popup support for width and height from init href. Use #source=id&width=400&height=500
  • Fixed links which trigger the popup now prevent default behaviour
  • Changed editing emails in funnels to open up the modal with an iFrame of he editing screen rather than opening up a new tab for better UX.

1.0.4

  • If a label is not present in a custom text field then use the placeholder as that is the next likely place.
  • Added Popup modal from Styling extension to core instead.
  • Added ability to add contacts to a funnel via the edit funnel UI.
  • Added ability to add contact to a funnel via the edit contact UI.
  • Added "mailto" option in List-Unsubscribe header.
  • Added "Import Y-m-d H:i:s" added to contacts when imported.
  • Added spinners next to import/export buttons.
  • Added BULK delete by tag to the tools.
  • Changed class WPGH_Importer to WPGH_Bulk_Contact_Manager
  • Fixed import status showing 100% when actually not done.
  • Fixed import/export js loading on every page, no only loads on tools page
  • Fixed superlinks not redirecting on multisite.

1.0.3

  • Changed WPGH_Contact_Query can now accept optin_status as an array of status options.
  • Added the broadcast reporting view
  • Fixed email preferences form not being installed correctly.

1.0.2

  • Added WPGH_Form instance to wpgh_form_code filter
  • Added Columns and Rows to the Funnel Form Editor
  • Added base class CSS for frontend forms
  • Fixed text editor bar is now sticky when scrolling.

1.0.1

  • Changed to a vastly superior layout in the funnel editor.
  • Fixed load funnel editor scripts in head rather than in footer.
  • Changed editing view for emails to make similar to new Funnel Editor layout.
  • Fixed load email editor scripts in head instead of footer.

1.0

  • Stricter checking of whether a contact exists or not.
  • Fixed wonky text editing in email editor.
  • Allowed for HTML and richtext in the form element.

Groundhogg 0.9

18 releases

0.9.18

  • Added round robin functionality to Apply Owner step.
  • Changed Sales Managers can only see contacts they are the owner of.
  • Fixed the create user step now links a user record to a contact if it exists... may be redundant but it's best to make sure.
  • Fixed [attributes] arg in HTML class being escaped when it shouldn't be
  • Fixed funnel stats refresh not working as a result of new ajax save.
  • Fixed the phone field not saving to primary phone.
  • Simplified the email editor text bar.
  • Fixed extensions errors when licensing new extensions
  • Fixed multisite config by retrieving options with get_blog_option rather than switch_to_blog
  • Began Adding API Stuff.

0.9.17

  • Fixed Apply owner step not saving.
  • Fixed date timer select box for no reason.
  • Added disable toggles to delay and date timers for testing
  • Fixed Checkbox required="false" still required
  • Fixed {_meta} replacement code showing as Array
  • Changed form buttons adding to bottom of text
  • Changed funnels save via AJAX instead of from POST

0.9.16

  • Fixed global multisite bugs where restore current was never being called resulting in weird behaviour.

0.9.15

  • Fixed activation fatal error.
  • Added multisite functionality. Use the same info across all subsites in the event you have a multisite setup.

0.9.14

  • Fixed text color picker from simple editor not working, again.
  • Added filter to email blocks to make it easier to add custom blocks.

0.9.13

  • Added simple editor to the form fill benchmark. Buttons now allow the user to quickly add standard fields to the forms without the need to view complete documentation.
  • Fixed bug in form address field that caused a warning
  • Fixed {_blah} replacement code not working because of unregistered code

0.9.12

  • Updated bounce checker Library. Has a few bugs that were incompatible with PHP 7.0 +
  • Fixed function name formlift_ to wpgh_ in locations.php
  • Fixed meta not being saved via custom form fields
  • Added security and copyright to all file headers
  • Added .htaccess to templates/funnels
  • Added email preferences funnel template
  • Changed the form shortcode to be a text editor in the step itself, needs updated documentation.

0.9.10

  • Fixed email preferences not working AT ALL, oops...
  • Added last_optin to submission

0.9.9

  • Finished implementing the Create User Action.
  • Fixed bug where add from previous emails gives a warning.
  • Tracking now uses the Logged in user as a contact if it exists so that if you're logged in replacement codes
  • among other functionality will work on the front end.
  • Added reporting ranges to the active contacts column in funnel list

0.9.8

  • Added Welcome Page
  • Changed menu structure
  • Added image assets
  • Added address section to contact record.
  • Added replacement codes {phone}, {phone_ext} & {address}
  • Added locations functions to get lists of known geographic areas
  • Fixed bug where clicking the confirmation link in tracking history resulted in a db error.

0.9.7

  • Added send email function to contact record.
  • Fixed Email Search Bug when searching in select2 email picker.
  • New HTML Helper "dropdown_owners"
  • Owner field now extended to include new roles "Marketer" & "Sales Manager"
  • Fixed Saving Contact owner not working when adding new contact

0.9.6

  • Fixed bug when deleting contacts with no tags caused a warning.
  • Added emails send plaintext version as well as HTML for better spam score.
  • Added alt tag to tracking image
  • Added List-Unsubscribe header

0.9.5

  • introduction of complex roles and caps
  • Minor UI fixes regarding select2 library

0.9.4

  • fixed {meta} not provided meta data
  • fixed exporting funnel throwing errors
  • added duplicate funnel link to table
  • added empty trash link to emails table
  • added filter to modify settings array

0.9.3

  • Moved is recaptcha enabled check to functions.php
  • fixed returning string instead of array when doing recaptcha check.
  • get_tags() will now return an empty array instead of false.

0.9.2

  • Add option to remove ALL data from WP when uninstalling Groundhogg
  • Fixed gh_referer not being set when leadsource tracking

0.9.1

  • Pre-release with some bug fixes

0.9

  • Pre-release for testing installation from repo

Groundhogg 0.1

1 release

0.1

  • First Commit

Take a load off.

With Groundhogg your contacts, automations and emails are taken care of. Save countless hours and thousands of dollars to spend on other parts of your business, or even a beach vacation.

Groundhogg relaxing at the beach with a drink