Contact Wizard – Junk Removal Lead Form

M Media Contact Wizard – Junk Removal replaces your generic contact form with a five-step guided quote wizard tailored to junk removal and hauling businesses. Instead of vague “I have some stuff to get rid of” messages, you get structured leads that identify item types, volume, floor access, disassembly requirements, hazardous materials, and scheduling – all before you send a truck. Drop the shortcode on any page – no page builder, no third-party form service, no monthly fee.

The 5-Step Wizard Form

Every step is its own screen. The visitor moves forward only – no scrolling a wall of fields.

  • Step 1 – What needs to go: What types of items need to be removed? Checkbox group: Furniture (sofas, beds, tables), Appliances (fridge, washer, dryer), Electronics / e-waste, Yard waste / brush / debris, Construction / renovation debris, Boxes / household clutter, Mattress / box spring, Hot tub / shed / large structure (revealed by default), Piano (revealed by default), Full storage unit cleanout (revealed by default), Estate cleanout (revealed by default), Other. Selecting “Other” reveals a Please describe text field. How much do you have (roughly)? Radio group: Small – a few items (¼ truck or less), Medium – a room’s worth (½ truck), Large – multiple rooms (full truck), Extra large – multiple loads, Not sure – need an estimate.
  • Step 2 – About the location: Property type radio group (required): Single-family home, Apartment / condo, Storage unit, Commercial / office, Construction / job site, Other. Where are the items located? Checkbox group: Inside the home / building, Garage, Attic, Basement, Yard / driveway / outside, Multiple locations. Floor / access situation (select: Ground floor / easy access, 2nd floor no elevator, 2nd floor elevator, 3rd+ floor no elevator, 3rd+ floor elevator, Tight stairways or narrow halls). Any items need disassembly? Radio group: Yes – please help disassemble, No – items are ready to go, Not sure.
  • Step 3 – Photos: See Photo Upload section below.
  • Step 4 – Timing & access: How soon do you need this done? Radio group (required): Today or tomorrow, This week, Next week, Flexible. Any access restrictions? Textarea (gate codes, HOA rules, parking, building access). Any hazardous materials? Checkbox group (revealed by default): Paint or chemicals, Tires, Batteries, Possible asbestos (older home), None.
  • Step 5 – Contact & scheduling: Full name (text, required); Email address (email, required); Phone number (tel); Pickup address (text); Preferred date (date picker); Preferred time (select: Morning 7am–12pm, Afternoon 12pm–5pm, Flexible); Approximate budget (select: Under $150 → Over $900, Not sure yet – revealed by default); Additional notes (textarea); How did you hear about us? (select – revealed by default); Send me updates by text (checkbox – revealed by default); Privacy consent (checkbox, required).

Photo Upload

Step 3 includes a native file upload field. Visitors can attach up to 6 photos (JPG, JPEG, PNG, GIF, WebP, HEIC, HEIF – max 10 MB each). Files are stored in your WordPress uploads directory under junk_removal_leads/. The step note reads: “Photos of the items or the space make quotes faster and more accurate.” A Photo notes textarea lets the visitor annotate the images (oversized items, tight access, etc.).

Lead Storage

Every completed submission creates a Junk Removal Lead custom post type entry in your WordPress admin. All form fields are saved as individual post meta keys under the mjrw_ prefix. Leads appear under Junk Removal Leads in the sidebar – browse, search, and review without leaving WP admin.

Email Notification

On successful submission, the plugin sends an admin notification email containing all submitted field values, including photo file paths. The recipient address is the site’s admin email by default and is configurable from the plugin settings screen.

Installation

  • Upload the plugin ZIP via Plugins → Add New → Upload Plugin
  • Activate the plugin
  • Drop [junk_removal_wizard] on any page or widget area
  • View incoming leads under Junk Removal Leads in your WordPress admin

Requirements

  • WordPress 6.0+
  • PHP 8.0+ (tested on 8.4)
  • No page builder required – pure shortcode

$29.99

Perpetual License

SSL Secure
Stripe
PayPal
Money-Back Guarantee
// real.developer.js
const approach = {
investors: false,
buzzwords: false,
actualUse: true,
problems: ['real', 'solved']
};
// Ship it.

Built by People Who Actually Use the Software

M Media software isn't venture-funded, trend-chasing, or built to look good in pitch decks. It's built by developers who run their own servers, ship their own products, and rely on these tools every day.

That means fewer abstractions, fewer dependencies, and fewer "coming soon" promises. Our software exists because we needed it to exist — to automate real work, solve real problems, and keep systems running without babysitting.

We build software the way it used to be built: practical, durable, and accountable. If a feature doesn't save time, reduce friction, or make something more reliable, it doesn't ship.

Every feature solves a problem we actually had
No investor timelines forcing half-baked releases
Updates add value, not just version numbers
Documentation written by people who got stuck first

This is software designed to stay installed — not be replaced next quarter.

🤖
Support Bot
"Have you tried restarting your computer? Please check our knowledge base. Your ticket has been escalated. Estimated response: 5-7 business days."
❌ Corporate Script Theater
👨‍💻
Developer (M Media)
"Checked your logs. Line 247 in config.php — the timeout value needs to be increased. Here's the exact fix + why it happened. Pushed a patch in v2.1.3."
✓ Real Technical Support

Support From People Who Understand the Code

Ever contact support and immediately know you're talking to someone reading a script? Someone who's never actually used the product? Yeah, we hate that too.

M Media support means talking to developers who wrote the code, understand the edge cases, and have probably hit the same problem you're dealing with. No ticket escalation theatrics. No "have you tried restarting?" when your question is clearly technical.

Documentation written by people who got stuck first. Support from people who fixed it.

We don't outsource support to the lowest bidder or train AI on canned responses. When you ask a question, you get an answer from someone who can actually read the logs, check the source code, and explain what's happening under the hood.

Real troubleshooting, not corporate scripts
Documentation that assumes you're competent
Email support that doesn't auto-close tickets
Updates based on actual user feedback