Plugin Features

What LocalPins does — and why it matters for local businesses

LocalPins is a WordPress plugin built for local service companies. This page explains each feature, who it serves, and what it means for a business's relationship with its local customers.

Pin Pages Field App Review Queue Social Distribution Structured Data Testimonials Internal Links Written Content FAQs Admin Tools
Core feature

Pin Pages

A pin page is a dedicated web page for a single completed job. It documents where the work happened, what was done, who commissioned it, and what the customer thought of it. Each pin page is published at a structured URL based on service, city, and street.

Why this matters for local businesses

When a homeowner searches for "roof replacement near Oak Street in Millbrook" they are looking for proof that someone has done this specific work in their specific neighborhood. A pin page is that proof — a permanent, indexed record that puts the business at the right place at the right time in search results. Over time, a library of pin pages covers the actual service area of a business in granular geographic detail that no single homepage can match.

Each pin page is created automatically when a field submission is approved
URL follows the pattern /[base-slug]/[city]/[service]/[street]/
Page includes map, job details panel, testimonial, photos, written description, and CTA
Structured data (JSON-LD) generated automatically for every page
Breadcrumb navigation links back to city and service archive pages
Related jobs section links to nearby completed work
Feature
Who it serves
What it does for the business
Google Maps embed with GPS precision
Each pin page shows an interactive map at the exact street-level location of the job, not just the city.
GPS
Prospective customers checking service area
Proves the business actually works in the customer's neighborhood, not just the general area.
Job details panel
Displays service type, location, customer type, season, outcome, and date in a structured sidebar.
Customers evaluating fit and experience
Lets a customer quickly assess whether the business has done their type of project before.
Job photo gallery
Up to 10 photos per pin, uploaded from the field. Displayed in a lightbox gallery on the page.
Field photos
Customers evaluating work quality
Real job site photos carry more weight than portfolio shots. They show the actual work, not curated examples.
Tiered indexability
Admin controls whether individual pins are indexed, noindexed, or set to canonical. Useful for managing thin pages at scale.
SEO control
Agency managing SEO at scale
Prevents low-quality pins from diluting the site's search authority while the library builds up.
Data capture

Field App

The field app is a mobile-optimized web interface that technicians use to log completed jobs from the job site. It requires no app installation and runs in any mobile browser. Submissions go into a review queue — nothing publishes automatically without admin approval.

Why this matters for local businesses

The bottleneck in most content marketing for contractors is capture — someone has to document the work. The field app puts that capture at the point of completion, with the crew still on site. Photos are taken in context. Location is accurate. Details are fresh. The alternative is asking an office admin to reconstruct job details from invoices days later, which produces weaker content and rarely gets done consistently.

Runs in any mobile browser — no download or install
Password protected with named user logins per tech
Captures service type, customer type, GPS location, photos, and job notes
Offline-capable with background sync when signal returns
Rate limiting prevents accidental duplicate submissions
Per-IP and per-user rate limit allowlist for office staff
📍
GPS location capture
Location is captured automatically from the device or entered manually. The system normalizes street names and matches them to the correct city in the database.
// Street abbreviations normalized
St → Street · Ave → Avenue · Blvd → Boulevard
📷
Photo upload
Up to 10 photos per submission. Photos are stored on the WordPress media library and attached to the pin. The first photo is used as the pin's featured image and for social posts.
👤
Named tech users
Each tech logs in with their own name and a shared password. Submissions are tagged by submitter so admins know who logged what and can follow up if anything is incomplete.
Quality control

Review Queue

Every field submission sits in a review queue until an admin approves it. Approval creates the public pin page, triggers social distribution (if configured), and generates the written content. Nothing is visible to the public until explicitly approved.

Why this matters for local businesses

A published page with the wrong address, a blurry photo, or a misspelled customer name damages credibility more than no page at all. The review queue is the checkpoint between what happened in the field and what a potential customer sees. It takes less than a minute to approve a clean submission and gives the business full control over its public-facing record.

Single approve — review and publish one pin at a time
Bulk approve — select multiple pins and publish in one action
Edit before approving — correct any field before the page goes live
Written content generated at approval time, ready to review
Social distribution queued at approval — no separate step
Duplicate detection flags similar submissions before they publish
Distribution

Social Distribution

When a pin is approved, it can be queued for distribution to connected platform accounts. Each platform is configured independently with its own posting mode, daily limit, CTA type, and caption template. Posts can be sent automatically, after a delay, or only on manual trigger.

Why this matters for local businesses

A completed job is a content event — a real thing happened, at a real location, for a real customer. Most local businesses never distribute this because the documentation and posting process requires too many steps. LocalPins collapses that into the approval action the admin is already taking. The business gets a consistent presence on the platforms where local customers look without any extra work from the team.

Google Business Profile — What's New, Offer, or Event post types
Facebook Page — photo post with caption and pin page link (in development)
Instagram — photo post and Reels (in development)
Auto / Hybrid / Manual posting modes per location
Per-pin platform selection — exclude specific platforms for specific jobs
Per-pin post type override — change What's New to Offer for a specific job
Daily post limit enforced per platform location
Retry logic with exponential backoff on failure
Social queue dashboard — status, retry, cancel per post
Posting mode
How it works
When to use it
Auto
Posts immediately when the pin is approved. No additional steps.
Businesses with consistent job quality who want zero manual involvement after approval.
Hybrid
Posts automatically after a configured delay (1–72 hours). Posts can be cancelled during the window.
Businesses who want automation but a window to review before anything goes public on social.
Manual
Pin enters queue as On Hold. Nothing posts until an admin clicks Post Now for that specific entry.
Businesses who want to curate which jobs appear on social, or write custom captions per post.
Search visibility

Structured Data

Every pin page outputs a JSON-LD @graph block containing a Service node, a BreadcrumbList node, and optionally a Review node when a testimonial is present. The schema is compatible with Yoast SEO and does not conflict with existing site schema.

Why this matters for local businesses

Structured data tells search engines precisely what a page is about — the service type, the location, the business providing it, and a verified customer review. This is how a page becomes eligible for rich results in Google Search and how it gets correctly understood by AI-driven search tools. Without it, a page about a plumbing job in Fishkill looks the same as a blog post about plumbing to a search engine. With it, the connection between the business, the service, and the location is explicit.

Service schema — service type, provider, area served, geo coordinates
BreadcrumbList schema — full path from homepage to pin
Review schema — added automatically when a testimonial exists
Yoast SEO compatible — @graph merges correctly, no duplicate nodes
Canonical URL management — base slug changes handled with 301 redirects
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Service",
      "serviceType": "New Construction",
      "areaServed": "Hudson, NY",
      "geo": { "latitude": 42.247, "longitude": -73.785 }
    },
    { "@type": "Review", ... },
    { "@type": "BreadcrumbList", ... }
  ]
}
Social proof

Customer Testimonials

Each pin page can include a verified customer testimonial — a quote, star rating, customer name, date, and links to where the review was originally posted. The testimonial renders prominently on the page and is included in the Review schema node.

Why this matters for local businesses

When a potential customer lands on a pin page about work done near their street, the most trust-building thing on that page is not the description of the work — it is hearing from someone who was there. A testimonial with a name, a date, and a link to a verifiable external review (Google, Houzz, Facebook) tells the visitor that this is not the business describing itself. It is a neighbor describing their experience. That is the difference between a page that informs and a page that converts a hesitant visitor into a phone call.

Star rating (1–5) displayed in the job details panel and testimonial card
Customer name and date of review
Up to 3 review links with custom labels (Google Review, Houzz Project, etc.)
Review schema node added to JSON-LD @graph automatically
Testimonial section only appears on pages where one has been entered — no empty blocks
Stars echoed in the job details sidebar for immediate visibility
Written content

Job Descriptions & Written Content

Each pin page includes a written description of the job — generated from the job notes, location data, service type, and customer context submitted through the field app. Content goes through the review queue before publishing. Admins can edit, replace, or supplement it before approval.

Why this matters for local businesses

A page with only a map and a photo tells a visitor what happened. A page with a well-written description of what happened, why it was challenging, and what the outcome was tells a visitor what kind of business this is. That distinction matters to both search engines evaluating expertise and to customers deciding whether to make contact. The content does not need to be long — it needs to be accurate, specific, and grounded in the actual job.

Job notes from field submission feed directly into the content pipeline
Content generated before admin review — ready to read and approve or edit
CTA blurb configurable per service type and city
Link / portfolio buttons allow linking to related external references per job
Content review dashboard for bulk review and editing of generated text
Page depth

FAQ System

Each pin page can include a FAQ section — a set of questions and answers specific to the service and city combination. FAQs are managed through the FAQ Manager and assigned to pin pages based on service type and location. The system flags when a FAQ pool is being overused across too many pages, to avoid duplicate content at scale.

Why this matters for local businesses

Local customers ask predictable questions before hiring a contractor — how long does it take, do you work in my city, what does it cost. A FAQ section on a pin page answers those questions in the context of the specific work shown on that page. This depth of content is also what makes pages eligible for FAQ rich results in search and relevant to AI-driven search tools that pull structured answers from authoritative local sources.

FAQ pools created per service + city combination
FAQs assigned to pin pages automatically based on service and location
Pool reuse warning — alerts when the same FAQ set is used across too many pages
FAQ accordion displayed at the bottom of each pin page
FAQPage schema generated automatically for eligible pages
Management

Admin Tools

LocalPins includes a set of administrative tools for managing pins, settings, and site health at scale — including bulk import via Excel, URL management, slug history and redirects, analytics, and a license system for managed deployments.

Excel import — bulk import jobs from a spreadsheet into the review queue
City and service URL import via Excel
Base slug management with automatic 301 redirects for URL changes
Old slug redirect tool — manually add legacy URL patterns
Analytics dashboard — views, referrers, top pages per city and service
Duplicate pin detector — flags near-identical submissions
Rate limiting with IP allowlist — prevents office staff from hitting submission limits
License system — plugin activation and validation via localpins.co
Shortcodes and embeds for displaying pin maps and lists in pages
Service rename tool — rename a service type across all published pins