{"id":28262318,"url":"https://github.com/strangerstudios/pmpro-lock-membership-level","last_synced_at":"2025-08-21T02:08:54.298Z","repository":{"id":48394571,"uuid":"69875192","full_name":"strangerstudios/pmpro-lock-membership-level","owner":"strangerstudios","description":"Lock membership level changes for specific users.","archived":false,"fork":false,"pushed_at":"2024-02-27T12:56:54.000Z","size":77,"stargazers_count":7,"open_issues_count":5,"forks_count":16,"subscribers_count":2,"default_branch":"dev","last_synced_at":"2025-06-25T08:05:39.588Z","etag":null,"topics":["paid-memberships-pro","strangerstudios-product","wordpress","wordpress-plugin"],"latest_commit_sha":null,"homepage":"https://www.paidmembershipspro.com/add-ons/pmpro-lock-membership-level/","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/strangerstudios.png","metadata":{"files":{"readme":"readme.txt","changelog":null,"contributing":".github/CONTRIBUTING.md","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}},"created_at":"2016-10-03T13:53:29.000Z","updated_at":"2025-05-29T15:25:35.000Z","dependencies_parsed_at":"2025-06-25T08:05:41.991Z","dependency_job_id":"5c0fc68b-062c-4e03-8ae3-dd6fe2cc8b1a","html_url":"https://github.com/strangerstudios/pmpro-lock-membership-level","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/strangerstudios/pmpro-lock-membership-level","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/strangerstudios%2Fpmpro-lock-membership-level","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/strangerstudios%2Fpmpro-lock-membership-level/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/strangerstudios%2Fpmpro-lock-membership-level/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/strangerstudios%2Fpmpro-lock-membership-level/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/strangerstudios","download_url":"https://codeload.github.com/strangerstudios/pmpro-lock-membership-level/tar.gz/refs/heads/dev","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/strangerstudios%2Fpmpro-lock-membership-level/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271415496,"owners_count":24755639,"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","status":"online","status_checked_at":"2025-08-21T02:00:08.990Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["paid-memberships-pro","strangerstudios-product","wordpress","wordpress-plugin"],"created_at":"2025-05-20T06:12:32.957Z","updated_at":"2025-08-21T02:08:54.283Z","avatar_url":"https://github.com/strangerstudios.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"=== Paid Memberships Pro - Lock Membership Level Add On ===\r\nContributors: strangerstudios\r\nTags: paid memberships pro, pmpro, restrict, lock, block, admin\r\nRequires at least: 4.0\r\nTested up to: 6.4\r\nStable tag: 1.0.1\r\n\r\nLock membership level changes for specific users or by level.\r\n\r\n== Description ==\r\n\r\nThis add on allows you to lock a specific user from making changes to their membership level (including selecting a new level if they currently do not have a level). This may be useful for problem members that repeatedly purchase and cancel membership.\r\n\r\nAdditionally, you can use this add on to lock a membership level for a specific term.  This is useful if you want to restrict members from canceling membership until a required number of installment payments are made.\r\n\r\n== Installation ==\r\n\r\n1. Make sure you have Paid Memberships Pro installed and activated.\r\n1. Upload the `pmpro-lock-membership-level` directory to the `/wp-content/plugins/` directory of your site.\r\n1. Add a new page for the \"Membership Locked\" message and assign it under Memberships \u003e Page settings. This is the page that members will be redirected to when attempting to cancel or change membership.\r\n1. Add the shortcode [pmpro_membership_locked] to that page. The shortcode's only attribute \"message\" can be used to customize the default message shown.\r\n\r\n== How to Lock a Member ==\r\n1. Locate the member in the PMPro Members List.\r\n1. Edit the member.\r\n1. Under \"Lock Membership\", click the button to add a lock to restrict the member from changing their membership level.\r\n1. To view a list of all locked members, navigate to Memberships \u003e Locked Members in the WordPress admin.\r\n\r\nNote that a locked member will still \"expire\" if there is an expiration date set on their membership account. The member will change to \"no level\" or a downgrade level you have specified via custom code upon expiration.\r\n\r\n== How to Lock a Membership Level for a Specific Term ==\r\n1. Edit the membership level on the Memberships \u003e Membership Levels \u003e Edit Membership Level page.\r\n1. Under \"Lock Membership Level Settings\", check the box to lock the membership level.\r\n1. The level can be set to unlock \"Never\" or after a specified time period (X days, weeks, months, or years).\r\n\r\n== How to View Locked Members ==\r\n1. Navigate to the Memberships \u003e Members List page in the WordPress admin.\r\n1. Select \"Locked\" from the \"Show\" dropdown.\r\n\r\n== Frequently Asked Questions ==\r\n\r\n= I found a bug in the plugin. =\r\n\r\nPlease post it in the GitHub issue tracker here: https://github.com/strangerstudios/pmpro-lock-membership-level/issues\r\n\r\n= I need help installing, configuring, or customizing the plugin. =\r\n\r\nPlease visit our premium support site at https://www.paidmembershipspro.com for more documentation and our support forums.\r\n\r\n== Changelog ==\r\n= 1.0.1 - 2024-02-27 =\r\n* BUG FIX: Fixed PHP error when trying to delete a lock for a user when using PMPro v2.x. #30 (@dparker1005)\r\n* BUG FIX: Fixed issue where the lock expiration would show as \"Jan 1, 1970\" instead of \"Never\" while editing a user when using PMPro v2.x. #30 (@dparker1005)\r\n* BUG FIX: Fixed conflict with the PMPro Unlock Protocol Add On where this plugin's Edit Member panel may not show. #30 (@dparker1005, @kimcoleman)\r\n\r\n= 1.0 - 2024-02-23 =\r\n* FEATURE: When using PMPro v3.0+, now allows locking specific levels for MMPU compatibility. #28 (@dparker1005)\r\n* FEATURE: When using PMPro v3.0+, added a \"Locked Membership\" panel to the Edit Users page allowing admins to view, add, and update a user's locks. #28 (@kimcoleman, @dparker1005)\r\n* ENHANCEMENT: Updated how locks are saved in the database to allow for multiple locks per user. Locks from pre-1.0 setups will be migrated as \"all level\" locks. #28 (@dparker1005)\r\n* BUG FIX/ENHANCEMENT: Improved logic to detect when the checkout page or cancellation page should be locked. #28 (@dparker1005)\r\n* REFACTOR: Removed functions that were no longer needed. #28 (@dparker1005)\r\n\r\n= 0.4 - 2023-08-17 =\r\n* ENHANCEMENT: Now hiding member action links on the Membership Account page for locked members. #15 (@dparker1005)\r\n* ENHANCEMENT: If the lock page is not set, locked users will instead be redirected to the Membership Account page and an error message will be shown. #15 (@dparker1005)\r\n* ENHANCEMENT: Updating `\u003ch3\u003e` tags to `\u003ch2\u003e` tags for better accessibility. #25 (@michaelbeil)\r\n* BUG FIX/ENHANCEMENT: Updated localization and escaping of strings. #17, #19 (@JarrydLong, @femiyb)\r\n* BUG FIX/ENHANCEMENT: Marking plugin as incompatible with Multiple Memberships Per User for the PMPro v3.0 update. #21 (@dparker1005)\r\n* BUG FIX: Fixed a PHP warning on the plugins page when the user does not have specified capabilities. #22 (@JarrydLong)\r\n\r\n= .3 - 2019-11-22 =\r\n* BUG FIX: Fixed issue where dates could save incorrectly with WP 5.3+.\r\n\r\n= .2 =\r\n* BUG FIX: Incorrect text domain for translation\r\n* BUG FIX: Partially complete default values for level settings\r\n* BUG FIX: Locked members were able to unlock their profile through the Edit Profile page.\r\n* BUG FIX: Fixed other bugs with the settings on the edit membership level page. (Thanks, Ted Barnett)\r\n* SECURITY: Added sanitization of settings on the edit level and edit user/profile pages.\r\n\r\n= .1.1 =\r\n* BUG: Switched get_usermeta and update_usermeta calls to get_user_meta and update_user_meta.\r\n\r\n= .1 =\r\n* Initial version.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstrangerstudios%2Fpmpro-lock-membership-level","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstrangerstudios%2Fpmpro-lock-membership-level","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstrangerstudios%2Fpmpro-lock-membership-level/lists"}