{"id":21937003,"url":"https://github.com/robertdevore/back-in-stock-notifications","last_synced_at":"2025-06-24T16:38:34.968Z","repository":{"id":261188222,"uuid":"881058230","full_name":"robertdevore/back-in-stock-notifications","owner":"robertdevore","description":"Back in Stock Notifications - A free plugin for WooCommerce® that notifies customers when products they're interested in are back in stock","archived":false,"fork":false,"pushed_at":"2025-02-22T01:26:47.000Z","size":224,"stargazers_count":18,"open_issues_count":0,"forks_count":5,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-24T11:09:44.926Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://robertdevore.com","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/robertdevore.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-10-30T20:59:21.000Z","updated_at":"2025-06-17T12:04:58.000Z","dependencies_parsed_at":"2024-11-05T07:26:37.816Z","dependency_job_id":"84c28cb2-e329-4b2c-978d-bac7e33b1235","html_url":"https://github.com/robertdevore/back-in-stock-notifications","commit_stats":null,"previous_names":["robertdevore/back-in-stock-notifications"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/robertdevore/back-in-stock-notifications","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robertdevore%2Fback-in-stock-notifications","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robertdevore%2Fback-in-stock-notifications/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robertdevore%2Fback-in-stock-notifications/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robertdevore%2Fback-in-stock-notifications/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robertdevore","download_url":"https://codeload.github.com/robertdevore/back-in-stock-notifications/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robertdevore%2Fback-in-stock-notifications/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261715556,"owners_count":23198771,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-29T01:17:19.795Z","updated_at":"2025-06-24T16:38:34.938Z","avatar_url":"https://github.com/robertdevore.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Back In Stock Notifications for WooCommerce®\n\nAutomatically notify customers when products they're interested in are back in stock, and track demand for your most popular items. The plugin integrates seamlessly with WooCommerce® to capture customer interest and manage notifications efficiently.\n\n* * *\n\n## Features\n\n- **Automated Notifications**: Sends customizable emails to customers when a product they signed up for is back in stock.\n- **Demand Tracking**: Track and display demand trends through waitlist statistics and analytics.\n- **WooCommerce® Integration**: Built for WooCommerce® to manage back-in-stock notifications.\n- **Customizable Emails**: Email templates for customer notifications can be customized to match your brand.\n- **Dashboard Insights**: Gain insights into product demand, customer interest, and track notification history within your WooCommerce® admin.\n- **Automatic Updates**: Receive updates through the WordPress® dashboard using [PluginUpdateChecker](https://github.com/YahnisElsts/plugin-update-checker).\n* * *\n\n## Installation\n\n### Option 1: Install via WordPress® Dashboard (Recommended)\n\n1. Download the latest `.zip` file from the [Releases section on GitHub](https://github.com/robertdevore/back-in-stock-notifications/releases).\n2. In your WordPress® Dashboard, navigate to **Plugins \u003e Add New**.\n3. Click the **Upload Plugin** button at the top of the page.\n4. Select the `.zip` file you downloaded and click **Install Now**.\n5. Once installation is complete, click **Activate Plugin**.\n\n* * *\n\n### Option 2: Install via SFTP\n\n1. Download the latest `.zip` file from the [Releases section on GitHub](https://github.com/robertdevore/back-in-stock-notifications/releases).\n2. Unzip the file to create a folder named `back-in-stock-notifications`.\n3. Use an SFTP client (e.g., FileZilla, Cyberduck) to connect to your WordPress® server.\n4. Upload the `back-in-stock-notifications` folder to the `/wp-content/plugins/` directory.\n5. Go to your WordPress® Dashboard, navigate to **Plugins**, and click **Activate** under _Back In Stock Notifications for WooCommerce®.\n\n### Requirements\n\n- WooCommerce® (must be active for the plugin to work)\n- WordPress® 5.0+\n- PHP 7.2+ (compatible with PHP 8.0+)\n* * *\n\n## Configuration and Setup\n\n### Step 1: Enable WooCommerce® Compatibility\n\nEnsure WooCommerce® is installed and activated before using this plugin. The plugin will automatically deactivate if WooCommerce® is not active.\n\n### Step 2: Configure the Plugin\n\nUpon activation, the plugin creates the following custom database tables:\n\n- **Waitlist**: Tracks product waitlists by customer email.\n- **Waitlist History**: Records historical waitlist data.\n- **Notifications**: Stores sent notifications for back-in-stock alerts.\n\nThese tables are created and maintained automatically.\n\n### Step 3: Email Customization\n\nThe plugin includes customizable email templates located in:\n\n- `templates/emails/back-in-stock-notification.php`: HTML version of the back-in-stock email.\n- `templates/emails/plain/back-in-stock-notification.php`: Plain text version of the email.\n\nYou can further customize these templates by copying them to your theme folder under `woocommerce/emails/` and editing them to match your brand style.\n\n* * *\n\n## Usage\n\n### 1. Adding Customers to the Waitlist\n\n- Customers can join a waitlist on a product's single page.\n- The waitlist form captures the customer's email, saving it to the waitlist database table.\n- The plugin enqueues JavaScript only on out-of-stock single product pages, optimizing performance.\n\n### 2. Notifying Customers\n\nWhen stock levels are updated (via WooCommerce®'s product update), the plugin will:\n\n- Check if the product's stock is now above zero.\n- Send a back-in-stock email notification to all users on that product's waitlist.\n- Log notifications and remove customers from the waitlist after notifying them.\n\n### 3. Managing Waitlists and Analytics\n\nAdmins can access the **Back In Stock** submenu under **WooCommerce®**. The dashboard provides insights, including:\n- **Most Wanted Products**: Products with the highest waitlist counts.\n- **Most Overdue Products**: Products that have been out of stock the longest.\n- **Most Signed-Up Products**: Top products based on waitlist sign-ups over time.\n- **Sign-Ups and Notifications**: Daily and monthly sign-up and notification statistics are tracked, with values stored for easy access via a helper class.\n\n### 4. CSV Exporting\n\nTwo CSV export options are available on the **Back In Stock** dashboard:\n- **Export Emails**: Exports all unique emails from the waitlist history table.\n- **Export Data**: Exports demand insights such as the most wanted, most overdue, and most signed-up products.\n\n### Helper Functionality\n\nThe plugin introduces a `BISN_Data_Helper` class to simplify database queries for various waitlist and notification statistics, such as:\n\n- `get_most_wanted_products()`: Retrieves the top 10 most wanted products based on waitlist count.\n- `get_most_overdue_products()`: Retrieves the top 10 products out of stock the longest.\n- `get_signups_today()`: Counts the sign-ups from today.\n- `get_sent_today()`: Counts notifications sent today.\n\nThe helper class enables efficient data retrieval for a streamlined and modular plugin structure.\n\n### Customizable Back In Stock Email\n\nThe **BISN_Back_In_Stock_Email** class controls the back-in-stock email notifications, which are sent when products are restocked. Emails are triggered by the `bisn_send_back_in_stock_email` action, providing seamless integration into WooCommerce's email management system.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobertdevore%2Fback-in-stock-notifications","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frobertdevore%2Fback-in-stock-notifications","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobertdevore%2Fback-in-stock-notifications/lists"}