{"id":20575776,"url":"https://github.com/dan0sz/ffwp","last_synced_at":"2026-02-13T22:41:15.459Z","repository":{"id":50351944,"uuid":"289737745","full_name":"Dan0sz/ffwp","owner":"Dan0sz","description":"Use the same license key for a specified Easy Digital Downloads download ID.","archived":false,"fork":false,"pushed_at":"2025-03-20T17:01:04.000Z","size":373,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-26T01:35:59.892Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Dan0sz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-08-23T17:48:27.000Z","updated_at":"2025-03-20T17:01:08.000Z","dependencies_parsed_at":"2023-02-15T09:01:09.042Z","dependency_job_id":"3c047048-3d7d-49fa-8d2e-e3a1d5441e2d","html_url":"https://github.com/Dan0sz/ffwp","commit_stats":null,"previous_names":[],"tags_count":62,"template":false,"template_full_name":null,"purl":"pkg:github/Dan0sz/ffwp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dan0sz%2Fffwp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dan0sz%2Fffwp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dan0sz%2Fffwp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dan0sz%2Fffwp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Dan0sz","download_url":"https://codeload.github.com/Dan0sz/ffwp/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dan0sz%2Fffwp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29420852,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-13T22:20:51.549Z","status":"ssl_error","status_checked_at":"2026-02-13T22:20:49.838Z","response_time":78,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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-16T05:43:23.454Z","updated_at":"2026-02-13T22:41:15.438Z","avatar_url":"https://github.com/Dan0sz.png","language":"PHP","readme":"# Custom Additions to EDD for FFWP.dev\n\nThis WordPress plugin contains all custom additions I made to tailor Easy Digital Downloads to my wishes for usage with [Fast FW Press](https://ffwp.dev).\n\nSharing this publicly for educational purposes.\n\n## Reusable License Key\n\nThis plugin allows you to specify a license key that you wish to reuse endlessly for a specified EDD download.\n\nEasy Digital Downloads Software Licensing only allows pre-specified keys or randomly generated keys to be used, but what if you want a certain (free) download to use the same key over and over again? That's not possible.\n\nTo use EDD Software Licensing's automatic update feature (e.g. with EDD GIT Updater) a license key is required. But what if it's e.g. a free download and you want to save people the hassle of having to activate it using a license key?\n\nUsing a static license key, you could programmatically activate the license, saving your customers the hassle.\n\n### Usage\n\n`includes/reusable-license/class-generate.php` contains two variables: \n\n- `$license_key`: the license key you wish to use.\n- `$item_id`: the ID of the download you wish to apply the license key on.\n\nAfter setting these two variables, the specified `$license_key` will be applied with every order of `$item_id`.\n\nEnjoy!\n\n## Auto Add To Cart\n   \nFor my premium WordPress plugins I use a separate plugin to manage licenses.\n   \nThis plugin automatically adds FFWP License Manager to the customer's cart, when adding another product. It also prevents it from being removed from the cart.\n\n### Usage\n   \nThe item's ID can easily be changed by changing the variable `$item_id` on line 17 in `includes/auto-add-to-cart/class-process.php`. I'll make this dynamic in the future.\n   \nThis plugin could also be used for free giveaways, gifts with each purchase, freebies, etc.\n   \nSee it in action at [ffwp.dev](https://ffwp.dev).\n\n## Changelog Shortcode\n\nThis plugin for WordPress adds a shortcode which accepts a (Easy Digital Downloads) Download ID as a parameter and prints the changelog (generated by Software Licensing).\n\n### Usage\n\n`[changelog id=\"132\"]`\n\nThat's it!\n\n## Child Pages Menu Shortcode\n\nThis plugin adds a shortcode to WordPress which renders an unordered list of a specified (`slug`) parent page.\n\nIf a `slug` isn't specified, it attempts to find a page using the last part of the current URI, combined with the `base` paremeter.\n\n### Usage\n\n`[child_pages_menu slug=\"my-page\" base=\"knowledge-base\"]`\n\nThis shortcode will return the children pages of a page located at `knowledge-base/my-page`.\n\nIf a slug is not specified, e.g. `[child_pages_menu base=\"animals\"]` and this shortcode is called on https://yourdomain.com/awesome-stuff/cool-hamsters, then it will attempt to render the child pages of a page located at `animals/cool-hamsters`.\n\nYou can also hide some child pages by specifying their ID's in a comma separated list, e.g. \n\n`[child_page_menu slug=\"my-page\" base=\"kb\" hide=\"1,2,3\"]`\n\nThis will not render child pages with ID's 1, 2 and 3.\n\nAs a last fallback it will try to get child pages based on the `base` parameter.\n\nThat's it!\n\n## Download Information Shortcodes\n\nIt does what the title says, it adds two shortcodes which output additional information of a defined plugin.\n\n### Usage \n\nShortcode `[edd_dl_version id=\"post_id\"]` displays the version number of a defined product. \"id\" defaults to the current post.\nShortcode `[edd_dl_last_updated id=\"post_id\" format=\"date_format\"]` displays the date last modified of the post. \"id\" defaults to the current post. \"format\" defaults to the `date_format` option in WordPress' settings.\n\n## Non-required Card State Field\n\nDynamically detect if State should be a required field, based on the selected Country.\n\nFor any country with a predefined list of states, e.g. US and CA, the State field is a required field. For any other country, where the State field is a text box, it becomes a non-required entry.\n\nInspired by and an enhanced version of: http://library.easydigitaldownloads.com/checkout/non-required-card-state.html \n\n### Usage\n\nInstall. \n\nEnjoy!\n\n## Modify Product Details Widget\n\nModifies EDD's product details widget by adding a Last Updated and Current Version line, where a click on the version number opens the changelog in a lightbox. \n\n### Usage\n\nInstall.\n\nEnjoy!\n\n## Custom Checkout Fields\n\nAdds custom Project Information fields to its checkout, purchase confirmation, order confirmation email and payment details screens when defined items are purchased. This includes validation, etc.\n\nLoosely based on [this tutorial](https://scottdeluzio.com/add-custom-field-to-easy-digital-downloads-checkout/). Sharing it here for educational purposes. Fork it and do as you please!\n\n### Usage\n\n* Install,\n* Define download ID's \n* Enjoy!\n\n## Login Fields Legend and Description\n\nAdds a custom translatable legend and description to the login form in checkout.\n\n## Better Checkout\n\nHeavily customizes the otherwise rather boring checkout flow for Easy Digital Download's checkout. With only 1 (!) template override!\n\n### Overview\n\n- Personal details and billing information is moved to the top,\n- A separate right column for the shopping cart,\n- Loading animations when e.g. tax fields are refreshed,\n- Discount form is moved below shopping cart,\n- Renew license (when Software License add-on is used) is moved to the top of the screen, along with the login form, which is hidden under a popup,\n- Payment methods are shown in big buttons, spread among 2 columns, along with logos.\n- Specific information for a payment method is shown upon selection.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdan0sz%2Fffwp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdan0sz%2Fffwp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdan0sz%2Fffwp/lists"}