{"id":315034,"date":"2026-05-22T05:36:30","date_gmt":"2026-05-22T05:36:30","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/all-appointment-scheduler\/"},"modified":"2026-05-22T07:29:59","modified_gmt":"2026-05-22T07:29:59","slug":"sniza-scheduler","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/sniza-scheduler\/","author":23240318,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.0","stable_tag":"1.1.0","tested":"6.9.4","requires":"6.4","requires_php":"7.4","requires_plugins":null,"header_name":"Sniza Appointment Scheduler","header_author":"Shehzad","header_description":"Instructor-based appointment scheduler with monthly availability calendar, weekly time slots, and prepaid time packages.","assets_banners_color":"","last_updated":"2026-05-22 07:29:59","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":44,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq"],"tags":{"1.0.0":{"tag":"1.0.0","author":"nizamani5","date":"2026-05-22 06:17:20"},"1.1.0":{"tag":"1.1.0","author":"nizamani5","date":"2026-05-22 07:29:59"}},"upgrade_notice":[],"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.1.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3543334,"resolution":"1","location":"assets","locale":"","width":1920,"height":1367},"screenshot-10.png":{"filename":"screenshot-10.png","revision":3543334,"resolution":"10","location":"assets","locale":"","width":1920,"height":1301},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3543334,"resolution":"2","location":"assets","locale":"","width":1920,"height":3020},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3543334,"resolution":"3","location":"assets","locale":"","width":1920,"height":3002},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3543334,"resolution":"4","location":"assets","locale":"","width":1920,"height":3055},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3543334,"resolution":"5","location":"assets","locale":"","width":1920,"height":486},"screenshot-6.jpg":{"filename":"screenshot-6.jpg","revision":3543334,"resolution":"6","location":"assets","locale":"","width":1889,"height":758},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3543334,"resolution":"7","location":"assets","locale":"","width":1920,"height":431},"screenshot-8.png":{"filename":"screenshot-8.png","revision":3543334,"resolution":"8","location":"assets","locale":"","width":1920,"height":1708},"screenshot-9.png":{"filename":"screenshot-9.png","revision":3543334,"resolution":"9","location":"assets","locale":"","width":1920,"height":1301}},"screenshots":{"1":"Admin area where users can select multiple themes and even custom coloring of how appointment scheduler look on frontend","2":"Monthly availability calendar with the weekly slot grid in color theme 1","3":"Monthly availability calendar with the weekly slot grid in color theme 2","4":"Monthly availability calendar with the weekly slot grid in color theme 3","5":"Packages purchase page with one package available for purchase for now","6":"Confirmation before scheduling an appointment","7":"My Lessons page with AJAX-powered Future \/ Past filter.","8":"Admin creating packages and assigning woocommerce products to the packages","9":"Admin screen for managing instructors, timeblocks, packages and assignments."}},"plugin_section":[],"plugin_tags":[8132,269,416,62817,268],"plugin_category":[40],"plugin_contributors":[239572],"plugin_business_model":[],"class_list":["post-315034","plugin","type-plugin","status-publish","hentry","plugin_tags-appointments","plugin_tags-booking","plugin_tags-calendar","plugin_tags-instructor","plugin_tags-scheduling","plugin_category-calendar-and-events","plugin_contributors-nizamani5","plugin_committers-nizamani5"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/sniza-scheduler.svg","icon_2x":false,"generated":true},"screenshots":[{"src":"https:\/\/ps.w.org\/sniza-scheduler\/assets\/screenshot-1.png?rev=3543334","caption":"Admin area where users can select multiple themes and even custom coloring of how appointment scheduler look on frontend"},{"src":"https:\/\/ps.w.org\/sniza-scheduler\/assets\/screenshot-2.png?rev=3543334","caption":"Monthly availability calendar with the weekly slot grid in color theme 1"},{"src":"https:\/\/ps.w.org\/sniza-scheduler\/assets\/screenshot-3.png?rev=3543334","caption":"Monthly availability calendar with the weekly slot grid in color theme 2"},{"src":"https:\/\/ps.w.org\/sniza-scheduler\/assets\/screenshot-4.png?rev=3543334","caption":"Monthly availability calendar with the weekly slot grid in color theme 3"},{"src":"https:\/\/ps.w.org\/sniza-scheduler\/assets\/screenshot-5.png?rev=3543334","caption":"Packages purchase page with one package available for purchase for now"},{"src":"https:\/\/ps.w.org\/sniza-scheduler\/assets\/screenshot-6.jpg?rev=3543334","caption":"Confirmation before scheduling an appointment"},{"src":"https:\/\/ps.w.org\/sniza-scheduler\/assets\/screenshot-7.png?rev=3543334","caption":"My Lessons page with AJAX-powered Future \/ Past filter."},{"src":"https:\/\/ps.w.org\/sniza-scheduler\/assets\/screenshot-8.png?rev=3543334","caption":"Admin creating packages and assigning woocommerce products to the packages"},{"src":"https:\/\/ps.w.org\/sniza-scheduler\/assets\/screenshot-9.png?rev=3543334","caption":"Admin screen for managing instructors, timeblocks, packages and assignments."},{"src":"https:\/\/ps.w.org\/sniza-scheduler\/assets\/screenshot-10.png?rev=3543334","caption":""}],"raw_content":"<!--section=description-->\n<p>Sniza Appointment Scheduler is a self-hosted booking system for sites that sell instructor time in prepaid blocks. Students draw down minutes from packages assigned by an admin or purchased through WooCommerce, and book appointments against per-instructor availability.<\/p>\n\n<p>Features:<\/p>\n\n<ul>\n<li>Per-instructor weekly availability (timeblocks) and ad-hoc time off<\/li>\n<li>Configurable package definitions in 30 minute increments up to 4 hours<\/li>\n<li>Admin-assigned prepaid packages with optional expiration date and notes<\/li>\n<li>Optional WooCommerce integration: mark packages as purchasable and auto-grant minutes when an order completes<\/li>\n<li>Frontend month calendar with day-level availability indicators<\/li>\n<li>Weekly time-slot view with status colours (available, booked, time off, blocked by another user, too soon, current)<\/li>\n<li>Mobile single-day scheduler with mini calendar<\/li>\n<li>Per-user appointment booking and cancellation, with a configurable cancellation cutoff<\/li>\n<li>\"My Lessons\" view with AJAX-powered Future \/ Past filter and in-place cancellation<\/li>\n<li>Admin Appointments screen with instructor and date-range filters (defaults to the next 3 days, hides cancelled lessons)<\/li>\n<li>Configurable maximum appointment length (admin setting)<\/li>\n<li>Sample-data tool for seeding and wiping a fixed demo dataset<\/li>\n<li>Timezone-aware: each instructor has their own timezone, and end users see times in the site timezone<\/li>\n<\/ul>\n\n<p>Available shortcodes:<\/p>\n\n<ul>\n<li><code>[sniza_scheduler]<\/code> \u2014 booking UI (month calendar + week grid)<\/li>\n<li><code>[sniza_packages]<\/code> \u2014 store front for purchasable packages (requires WooCommerce)<\/li>\n<li><code>[sniza_my_lessons]<\/code> \u2014 logged-in user's upcoming and past lessons with cancel controls<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>sniza-scheduler<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> screen in WordPress.<\/li>\n<li>Open <strong>Sniza Appointment Scheduler<\/strong> in the admin sidebar and add at least one instructor, one weekly timeblock, and one package definition.<\/li>\n<li>Either assign a package to a logged-in user from <strong>Assign Packages<\/strong>, or \u2014 with WooCommerce active \u2014 mark a package as purchasable, link it to a product, and let users buy it via <code>[sniza_packages]<\/code>.<\/li>\n<li>Place the <code>[sniza_scheduler]<\/code> shortcode on any page to render the booking UI, and <code>[sniza_my_lessons]<\/code> on another page so users can see and cancel their lessons.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20the%20plugin%20send%20data%20to%20any%20external%20service%3F\"><h3>Does the plugin send data to any external service?<\/h3><\/dt>\n<dd><p>No. All data stays in your WordPress database. The plugin makes no outbound HTTP calls.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20i%20delete%20the%20plugin%3F\"><h3>What happens when I delete the plugin?<\/h3><\/dt>\n<dd><p>The plugin's tables and options are removed via <code>uninstall.php<\/code>. Deactivation alone leaves the data in place.<\/p><\/dd>\n<dt id=\"can%20guests%20book%20appointments%3F\"><h3>Can guests book appointments?<\/h3><\/dt>\n<dd><p>No. Booking requires a logged-in WordPress user with an active package assignment.<\/p><\/dd>\n<dt id=\"is%20woocommerce%20required%3F\"><h3>Is WooCommerce required?<\/h3><\/dt>\n<dd><p>No. WooCommerce is optional. Without it, admins assign packages manually via <strong>Assign Packages<\/strong>. With WooCommerce active, packages flagged as purchasable can be sold through a linked product and minutes are granted automatically when the order completes.<\/p><\/dd>\n<dt id=\"can%20users%20cancel%20their%20own%20lessons%3F\"><h3>Can users cancel their own lessons?<\/h3><\/dt>\n<dd><p>Yes, from the <code>[sniza_my_lessons]<\/code> page, as long as the start time is at least the configured cancellation cutoff in the future (8 hours by default). Cancelling restores the unused minutes to the source package.<\/p><\/dd>\n\n<\/dl>","raw_excerpt":"Appointment scheduler with per-instructor availability, prepaid time packages, and optional WooCommerce package sales.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/315034","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=315034"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/nizamani5"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=315034"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=315034"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=315034"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=315034"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=315034"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=315034"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}