Documentation home › Feature Procedures
This page gives 51 practical guides for the Washlora features that need set-up or testing. Each guide follows the same order: Enable → Configure → Front-end result → Test → Common mistakes → Disable / Reset → Troubleshooting. Screen names, labels and option keys are taken from the installed code. Where a feature has no admin screen, the guide says so and names the option or custom field to use.
1. Washlora Setup and required plugins
Enable
Nothing to switch on. The screen is available whenever the Washlora theme is active, and an admin notice beginning Washlora setup: appears for users who can activate plugins while a listed plugin is not installed.
Configure
The table lists Washlora Core (marked Required), Elementor, WPBakery Page Builder, Classic Editor, Smart Slider 3, Slider Revolution, Master Slider, WooCommerce and Contact Form 7 (all marked Optional / Demo feature). Install only the editors and sliders you plan to use.
Front-end result
The table shows Active, Installed or Not installed for each plugin. Nothing changes on the public site.
Test
Install and activate one plugin, reload the screen and confirm its status changes; the notice should list one fewer recommended plugin.
Common mistakes
Treating the list as complete. Washlora Native Layouts, which the niche importer and the generators need, is not in this table, and the importer also needs the WordPress Importer plugin.
Disable / Reset
There is nothing to disable. The notice disappears once every listed plugin is installed; it only checks that plugin files exist, not that they are active.
Troubleshooting
If the notice never clears, check that each plugin folder uses its standard name (for example woocommerce/woocommerce.php); a renamed folder counts as not installed.
2. Niche Importer (105 niches)
Enable
Activate Washlora Native Layouts, WooCommerce and Contact Form 7, and install the free WordPress Importer plugin. Without them the import stops with an error message that names the missing requirement. You need the administrator manage_options and import capabilities.
Configure
Pick one niche from the Niche list (the catalogue contains 105). Leave Download demo images (requires internet access) ticked for photography, or untick it for a content-only import. Tick Use imported Gutenberg Home 1 as the homepage only if you want the front page changed. Click Import selected niche.
Front-end result
Three home layouts in four editor versions are created, together with inner pages, products, a Contact Form 7 form titled Laundry service enquiry (when none is recorded yet), and a menu named Laundry: {niche name} when no menu of that name has items. Existing pages are not deleted.
Test
Read the notice Import processed: N home/editor versions, open the Import log for failed media, then preview Home 1 in each editor and the niche menu links.
Common mistakes
Importing on a busy live site. Use a fresh or staging install, because large imports can take several minutes and a second import within 15 minutes is refused as Another niche import is in progress.
Disable / Reset
There is no uninstall button. Delete the imported pages, products and menu manually or restore a backup. Repeat imports match earlier posts by _lni_source_id and keep posts you edited since the last import.
Troubleshooting
A checksum error means the demo file was changed or damaged. A missing-importer message means WordPress Importer is not installed. For failed images, repeat the import with internet access enabled.
3. One-click demo import
Enable
Import the niche first with Import a niche. This screen lists only niches already recorded in the laundryes_niches option, so it is empty on a site with no imported niche. Requires the edit_theme_options capability.
Configure
Choose Builder (Gutenberg, Elementor, WPBakery or Classic Editor), Laundry niche and Homepage layout (Home 1: Signature, Home 2: Service, Home 3: Editorial), then click Import Washlora Demo.
Front-end result
The chosen home page is set as the static front page, the niche menu from laundryes_adt_menu_map (if present) is assigned to the Primary Menu location, and the options laundryes_active_niche and laundryes_active_builder are stored. A missing Elementor, Classic or WPBakery page is built from the saved template when one exists.
Test
Look for the notice Demo ready. followed by niche and builder, then open the site front page and the primary menu.
Common mistakes
Expecting this screen to download content. It activates and wires up a niche that is already imported; it does not fetch media.
Disable / Reset
Choose another niche or builder and import again, or reset Settings → Reading and Appearance → Menus manually to your own front page and menu.
Troubleshooting
If the screen redirects with a failed flag, the builder page could not be built; check that the niche was imported and that the selected editor plugin is active.
4. Demo Setup
Enable
Available when Washlora Core is active. With the niche catalogue installed, as in this package, this screen opens the same form as Import a niche.
Configure
Use the niche importer form. The older bundled-content screen, Washlora Demo Setup, appears only when no niche catalogue is found; it offers Import Full Washlora Demo and Run Demo Finalizer Only and needs the WordPress Importer plugin.
Front-end result
The finalizer assigns the Demos page as front page, the Blog page, the WooCommerce Shop, Cart, Checkout and My Account pages and the Primary Menu location. It also sets permalinks to /%postname%/, turns off the WooCommerce coming-soon mode and restores portable sliders without overwriting your slider data.
Test
After running it, check Settings → Reading, Settings → Permalinks and each WooCommerce page.
Common mistakes
Running the finalizer on a live site that already has its own front page or permalink structure, because it overwrites both.
Disable / Reset
There is no undo. Restore your front page, blog page and permalink choices manually or from a backup.
Troubleshooting
If the finalizer lists pages as missing, create or import the page named Demos, Blog, Shop, Cart, Checkout, My Account or a menu named Primary Menu first.
5. Niche identity
Enable
Available when Washlora Native Layouts is active and at least one niche has been imported. Needs the edit_theme_options capability.
Configure
Pick a niche and click Choose niche. Edit Brand, Tagline, Phone, Email, Hours, Area and About, set the five colours (Primary, Dark, Accent, Soft, Ink) and click Save identity. The data is stored as _ln_identity on the niche home page.
Front-end result
Pages belonging to the niche use a niche header and footer showing the brand, tagline, phone, email, hours and area, and the palette becomes the CSS variables --ln-primary, --ln-primary-dark, --ln-accent, --ln-soft and --ln-ink.
Test
Save, then open the niche home page and an inner page in a private window and check the header, footer and button colours.
Common mistakes
Saving without checking the colour pickers. Every picker is submitted, so a colour still showing the fallback #245c52 is saved too. Header and footer design numbers are not editable here.
Disable / Reset
Set the fields back to your earlier values by hand. A repeat import will not overwrite them, because an edited niche home page is treated as your own content.
Troubleshooting
If nothing changes on the front end, clear page and CDN caches and confirm you edited the niche that the page belongs to.
6. Niche design
Enable
Available with Washlora Native Layouts. The design applies to native niche pages created by the importer or generators.
Configure
Choose a niche, then set Presentation (Neighbourhood, Atelier, Dispatch, Enterprise, Clinical, Hospitality, Active, Wellness, Home care or Restoration), Content width (1040 to 1320 px), Corner radius (0 to 48 px) and Desktop section spacing (64 to 120 px), then click Save design.
Front-end result
The page body gets the class lnl-design-{style} and the width, radius and spacing variables, in all four editor versions of that niche.
Test
Open two editor versions of the same niche home page and compare section spacing and card corners.
Common mistakes
Entering values outside the range. They are clamped silently to the limits shown in the labels.
Disable / Reset
Select Neighbourhood with width 1200, radius 16 and spacing 96, which are the defaults.
Troubleshooting
A page without a native-layout editor version does not use this setting; check that it was created by the importer or generator.
7. Design Studio and style presets
Enable
Needs Washlora Core and the edit_theme_options capability.
Configure
Set Primary Color, Secondary Color, Accent Color, Body Background, Text Color, Header Style (1 to 12), Footer Style (1 to 12), Logo Width (60 to 360), Slider Style (1 to 5), Site Layout and the checkboxes Sticky Header, Mega Menu, Menu Search and Menu Cart. Click Save Design.
Front-end result
Values are saved in the laundryes_options option. In this build the front end outputs the three colours as --adt-primary, --adt-secondary and --adt-accent, plus the body background and text colour. No template reads the header, footer, logo, slider or checkbox values yet.
Test
Save and look for Design Studio settings saved., then inspect the page source for the laundryes-redux-css style block.
Common mistakes
Expecting niche pages to follow these colours. Niche pages use their own palette from Niche identity and Niche design.
Disable / Reset
Change the values back and save again, or delete the option laundryes_options to reset everything.
Troubleshooting
If a colour does not show, clear caches, and remember that more specific theme or niche styles can override the variables.
8. AI Website Generator
Enable
Activate Washlora Native Layouts, import the niche you want to copy, and activate Elementor or WPBakery only if you choose those editors. It runs locally and needs no API key.
Configure
Fill Business name, Niche, Editor, Home layout, an optional Primary colour and the Website requirements (10 to 5000 characters). Words such as booking, pricing, FAQ, tracking, branches, commercial and recurring add the matching pages when their templates are installed. Click 1. Preview website plan, then 2. Create editable drafts.
Front-end result
New draft pages titled Brand | Role are created, together with a new menu. Your existing pages, menu locations and homepage are not changed.
Test
Use the Edit and Preview links in the result, then check links, sample phone numbers and prices.
Common mistakes
Changing a field after previewing. The plan is invalidated and must be previewed again; a plan also expires after 30 minutes.
Disable / Reset
Click Undo this batch (move drafts to Trash). It works only while every draft is still a draft, for the user who created it.
Troubleshooting
Messages such as No installed template for booking; this page will be skipped mean that niche has no matching template; import it or edit manually.
9. AI Theme Assistant
Enable
Available with Washlora Core. It is not a live AI service: it answers fixed topics and runs a small set of commands.
Configure
Type a question or a command and click Send (or press Ctrl+Enter). Supported commands: set primary color to #2563eb (also secondary and accent), set header style 4 and set footer style 3 (1 to 12), set logo width 180 (60 to 360), slider style 2 (1 to 5), enable or disable sticky header, enable or disable mega menu, and site title to ....
Front-end result
Applied commands reply Applied: ..., store values in laundryes_options and keep the last 100 exchanges in laundryes_adt_ai_log. The site title command changes the real site title.
Test
Run a harmless command, such as setting the primary colour, and confirm the reply, then check the same value in Design Studio.
Common mistakes
Assuming every command changes the layout. As with Design Studio, only colours are output by the front end in this build.
Disable / Reset
Run the opposite command, such as disable sticky header, or set the title back with a new site title command.
Troubleshooting
A reply of Permission denied means the user lacks edit_theme_options; the box must not be empty.
10. Customizer: header, colours, footer and shop text
Enable
Always available with the theme active.
Configure
Header: Show top bar, Phone, Email, Header button label, Header button URL. Colours: Primary, Secondary, Footer Bg, Footer Text Color. Footer: Copyright text, Business address, Opening hours. Washlora shop: Shop heading and Shop introduction.
Front-end result
The standard theme header and footer use these values on ordinary pages, and the shop page title block shows the shop heading and introduction.
Test
Publish, then open the home page, the shop and a normal page.
Common mistakes
Using these header and footer settings for niche demo pages. A niche with identity data prints its own header and footer instead, so use Niche identity there.
Disable / Reset
Clear a field or restore the default colour and publish.
Troubleshooting
If a change is invisible on a niche page, that is expected; check the page type before clearing caches.
11. Niche menus and primary navigation
Enable
Menus named Laundry: {niche name} are created by the importer. A one-click import can also assign a niche menu to the Primary Menu location.
Configure
Edit the niche menu like any menu. In the niche header the last item becomes the call-to-action button and the other top-level items form the navigation.
Front-end result
Pages that belong to a niche show that niche menu in place of the Primary Menu, through the _laundryes_niche_menu_id value on the niche home page. Native pages also rewrite links to the same editor version.
Test
Visit the niche home, an inner page and a page outside the niche and compare menus.
Common mistakes
Adding sub-items to a niche menu. The niche header shows top-level items only.
Disable / Reset
Remove an item from the menu or assign another menu to the Primary Menu location.
Troubleshooting
If the wrong menu appears, confirm the page is linked to its niche and that no menu is assigned through a plugin.
12. Mega menu
Enable
Show CSS Classes in Screen Options, then add the class mega-menu to a top-level item in the Primary Menu.
Configure
Build three levels: the top item, column heading items (any link, for example #) and the actual links under each column. Extra classes on a column item are copied to the column.
Front-end result
The item opens a panel with a header row and a View all link back to the top item, then columns of links. Items without the class keep the normal dropdown.
Test
Hover or tab to the item on desktop and test the mobile menu.
Common mistakes
Expecting it on niche pages. A niche header lists top-level items only, and the Mega Menu checkbox in Design Studio does not control this walker.
Disable / Reset
Remove the mega-menu class.
Troubleshooting
If the panel is flat, check the nesting depth and that the menu is assigned to the Primary Menu location.
13. Local fonts
inc/local-fonts.php)Enable
Loaded by the theme; no switch exists.
Configure
Nothing to configure. When the Redux typography stylesheet requests Inter at weight 700, the theme serves the local file assets/fonts/inter.css instead.
Front-end result
Visitors do not contact Google Fonts for that stylesheet, and DNS prefetch and preconnect hints for fonts.googleapis.com and fonts.gstatic.com are removed.
Test
Open the browser network panel and confirm no request goes to Google Fonts for Inter.
Common mistakes
Choosing another Google font in a font plugin and expecting it to be local. Only the Inter request is replaced.
Disable / Reset
There is no switch. Removing it means editing the theme files, which a developer should do on a copy, because the filters cannot be unhooked from a child theme.
Troubleshooting
If text falls back to a system font, confirm the four Inter files exist in assets/fonts.
14. Performance module
inc/performance.php)Enable
Loaded by the theme on public pages; there is no settings screen.
Configure
Nothing to configure. Contact Form 7 assets are kept on pages with the shortcode, on the contact and pickup-delivery pages and on niche contact pages. WooCommerce assets are kept on shop, cart, checkout, account and pages containing common shop shortcodes.
Front-end result
Other pages do not load those scripts and styles. Slider Revolution and Master Slider assets are loaded only when the page, or its parent, has _laundryes_slider_type set to revslider or masterslider.
Test
Compare a plain page and the shop in the browser network panel.
Common mistakes
Placing a Contact Form 7 form or shop block on a page the detector does not recognise, for example inside a custom block.
Disable / Reset
Use a child theme to remove the wp_enqueue_scripts action laundryes_optimize_plugin_assets (priority 999).
Troubleshooting
If a form or slider is unstyled, put the shortcode in the page content, name the page contact, or set the slider type value.
15. Four-editor native templates
Enable
Import a niche with Washlora Native Layouts active. Elementor and WPBakery require their own plugins; Gutenberg and Classic need none.
Configure
Gutenberg uses the block laundry/section. Elementor uses the Washlora Section widget. WPBakery uses the Washlora Section element. Classic pages show a Washlora page sections (visual controls) box (_lnl_sections) with reorder arrows, Add section and Remove. Each section has eyebrow, heading, text, button, image, layout, tone, cards and an optional service component.
Front-end result
The same section content renders with the layout chosen, in light, soft or dark tone. A Home layouts and Editor switcher is shown above home pages.
Test
Open the same niche in two editors and compare.
Common mistakes
Trying to convert a page between editors; each editor has its own page version.
Disable / Reset
Remove or hide sections in the editor, or delete that editor's page versions.
Troubleshooting
If a section is blank, confirm the plugin for that editor is active and the layout name is valid; unknown layouts fall back to cards.
16. Services and Pricing Packages
Enable
Both content types are created by Washlora Core (also Testimonials and FAQs).
Configure
In Service Details enter Starting price and Price unit. In Package Details enter Price, Billing label and tick Featured package. Add the content, a featured image and an excerpt.
Front-end result
Show them with [laundryes_services] and [laundryes_packages], using limit and columns (1 to 4). On niche pages only items with the matching _adt_niche_slug appear.
Test
Add one item of each type, place the shortcode on a page and check price text.
Common mistakes
Entering currency maths in the price box; the value is displayed as typed text.
Disable / Reset
Move the item to Trash or unpublish it.
Troubleshooting
If a list is empty on a niche page, the items are probably assigned to a different niche.
17. Laundry Service single template
Enable
Used automatically for the laundry_service content type.
Configure
Set the title, excerpt, featured image and body in the Services editor, and the price fields in Service Details.
Front-end result
The page shows the service lead, price and unit, a Schedule Pickup button to /pickup-delivery/, a four-step process, other services, testimonials and FAQs.
Test
Open a service and click the pickup button.
Common mistakes
Not creating a page with the slug pickup-delivery, which leaves the button without a destination.
Disable / Reset
Override single-laundry_service.php in a child theme.
Troubleshooting
If Order This Service Online is missing, the service has no _laundryes_product_id link to a published product.
18. Blog Details template
Enable
Used for standard posts with the theme active; its stylesheet loads on single posts.
Configure
Set featured image, categories, tags and excerpts, and add widgets to Blog Sidebar to show the sidebar.
Front-end result
Shows date, title, author and comment count, featured image, tags, share links for Facebook, X and LinkedIn, post navigation, three related posts from the same categories, a pickup call to action and comments.
Test
Publish a test post with a category and check share links and related posts.
Common mistakes
Expecting related posts for a post without categories.
Disable / Reset
Override single.php in a child theme.
Troubleshooting
If the sidebar is missing, add at least one widget to the Blog Sidebar area.
19. Booking request form and booking records
[laundryes_booking_form]; records under BookingsEnable
Place the shortcode, the Gutenberg block laundryes/booking, the Elementor widget or the WPBakery element on a page. The form needs no WooCommerce.
Configure
Fields: Name, Email, Phone, Service (from Services), Pickup date, Pickup window, Preferred delivery date, Delivery window, Pickup address and Care notes. Windows are Morning 8:00 to 12:00, Afternoon 12:00 to 17:00 and Evening 17:00 to 21:00. The button is Request Booking.
Front-end result
A Booking record titled Name - date is stored with the details in _laundryes_booking_* meta, the status is new, and the visitor sees Your laundry booking has been received.
Test
Submit on staging with your own details and open Bookings.
Common mistakes
Expecting an email. The code sends none, and the Bookings list shows only the title, so check records with developer tools or add your own notification.
Disable / Reset
Remove the form from the page; trash old records.
Troubleshooting
If nothing is stored, Name, Email and Pickup date are all required on the server.
20. Book and order form (cart booking)
[laundryes_booking] or [laundryes_new_order]Enable
Requires WooCommerce and at least one simple, purchasable, in-stock product. The two shortcodes show the same form.
Configure
Choose Service, Quantity (1 to 50), Pickup date and time, Delivery date and time, Pickup address, Phone and Care notes, then click Add Service & Continue to Cart. Add niche="slug" to list products tagged with that niche.
Front-end result
The service is added to the cart with Pickup, Delivery, Address and Phone lines. On checkout the details are saved on the order item and a Booking titled Order #N booking is created.
Test
Submit a past date and check the error, then complete a test order.
Common mistakes
Using variable products; they must be chosen on their service page.
Disable / Reset
Remove the shortcode from the page.
Troubleshooting
Errors such as Delivery must be after the pickup date and time. come from validation; fix the dates.
21. Service area and Service Settings
Enable
Needs the manage_options capability.
Configure
Fill Service postcodes / ZIP codes (comma or line separated), Standard turnaround and Express turnaround, then save. Place [laundryes_service_area_checker] and [laundryes_turnaround] on pages.
Front-end result
The checker shows Do we collect from your area?. A listed code returns Great — this area is currently in the configured service zone.; an unlisted one asks the visitor to contact you. With an empty list it says the team will confirm coverage.
Test
Test a listed code, an unlisted code and an empty field.
Common mistakes
Expecting partial matches. The match is exact and not case sensitive, so list the full code.
Disable / Reset
Clear the postcode list to stop claiming coverage.
Troubleshooting
Settings are stored in laundryes_service_postcodes, laundryes_standard_turnaround and laundryes_express_turnaround.
22. Postcode checker by branch
[laundryes_postcode_checker]; data on BranchesEnable
Publish at least one Branch.
Configure
Store codes in the branch meta _laundry_postcodes, separated by commas or spaces. Place the shortcode on a page.
Front-end result
A box titled Check Pickup Availability with a Check button answers Available via {branch} or Contact us to confirm service in this area.
Test
Enter a stored code in lower case and an unknown one.
Common mistakes
Codes with a space, such as SW1A 1AA, are split into two codes. List the outward part instead.
Disable / Reset
Remove the shortcode or clear the meta.
Troubleshooting
The keys start with an underscore, so set them with WP-CLI or developer code rather than the Custom Fields box.
23. Pickup Slots
[laundryes_slot_selector]Enable
Publish one slot per time window; the title is the label shown.
Configure
Optional meta _laundry_capacity and _laundry_booked control how many places are left. The shortcode prints a select named laundryes_slot with the text Choose pickup slot.
Front-end result
Slots whose booked count reaches their capacity are hidden; others show (N left). The option laundryes_blackout_dates is printed to the page as a script value.
Test
Set capacity 2 and booked 2 on a slot and confirm it disappears.
Common mistakes
Expecting automatic booking. No built-in form reads the select and nothing increases the booked count or reads the blackout dates.
Disable / Reset
Unpublish the slot or remove the shortcode.
Troubleshooting
Use WP-CLI to edit the underscore meta values.
24. Garment Items and garment tracking
[laundryes_garment_tracker]Enable
Automatic with WooCommerce checkout (classic and block checkout).
Configure
One item is created per unit of each order line. Statuses are stored in _laundry_status: received, cleaning, ready, delivered. Place the shortcode where customers enter a tag code.
Front-end result
New items are titled LG- plus 32 random characters. The tracker form (Garment tag code, Track garment) shows status only; old sequential codes require the order owner or a shop manager.
Test
Place a test order, copy a tag title, and track it.
Common mistakes
Looking for a status dropdown. This edit screen has none, so change the underscore meta with WP-CLI or code.
Disable / Reset
Trash the garment items; remove the shortcode.
Troubleshooting
No tracking details available means the code is wrong or an old tag is accessed without login.
25. Delivery Routes
Enable
Available with Washlora Core.
Configure
Create a route with a title. Assignment to an order uses the PHP function laundryes_route_assign( $order_id, $driver_id, $route_id ), which sets the order meta _laundry_driver_id and _laundry_route_id.
Front-end result
The route is an internal record. No public page shows it.
Test
Call the function from a test snippet and view the order meta.
Common mistakes
Expecting a route planner or map. Nothing in the theme reads routes beyond that stored meta.
Disable / Reset
Trash the route.
Troubleshooting
If the function is undefined, Washlora Core is inactive.
26. Branches
[laundryes_branches] and [laundryes_delivery_zones]Enable
Branches are a public content type with title, editor, image and excerpt.
Configure
Meta keys: _laundry_address, _laundry_phone, _laundry_hours, _laundry_delivery_zones, _laundry_delivery_fee, _laundry_postcodes. Use count for the first shortcode.
Front-end result
A grid shows image, name, address, phone and hours; the zones list shows name, zones and fee.
Test
Create two branches and check both shortcodes.
Common mistakes
Looking for edit boxes. The meta keys are hidden by WordPress, so use WP-CLI or code.
Disable / Reset
Trash the branch.
Troubleshooting
An empty output means no published branch.
27. Drivers
[laundryes_driver_status order="ID"]Enable
Add a driver with a title and a featured image.
Configure
Phone is stored in _laundry_driver_phone. The order needs _laundry_driver_id, and may have _laundry_delivery_status.
Front-end result
The shortcode shows photo, name, status (default Assigned) and phone, or Driver assignment pending.
Test
Set the order meta then view the page.
Common mistakes
Publishing it for any order. It has no login check, so use it only where safe.
Disable / Reset
Remove the shortcode; trash the driver.
Troubleshooting
Nothing shows without a valid order ID.
28. Commercial Quotes
[laundryes_commercial_quote]Enable
Place the shortcode on a page.
Configure
The form has Company, Email, Estimated weekly volume and Requirements, with the button Request Quote.
Front-end result
Visitors see Commercial quote request received. and a record titled Company - date time is saved with email, volume and notes.
Test
Submit a test and find the record.
Common mistakes
Expecting email. None is sent, and the list shows only the title.
Disable / Reset
Remove the shortcode; trash old records.
Troubleshooting
Company and a valid email are required.
29. Quote-only services
Enable
Tick Quote-only service (_lcst_quote_only) on a WooCommerce product that needs an individual assessment. WooCommerce must be active.
Configure
Enter Enquiry page ID (_lcst_quote_page), the ID of a published page that contains your contact or enquiry form, then update the product.
Front-end result
The product is no longer purchasable, its price reads Priced after assessment, shop buttons read View service, and the product page shows the box A service plan for your business with a Request a service quote link. The enquiry page opens with a notice Service enquiry: {service name}.
Test
Open the product as a visitor, confirm Add to cart is gone, follow the quote link and check the notice on the enquiry page.
Common mistakes
Entering a draft or non-page ID. The link is then replaced by Online enquiries for this service are not available yet. This is separate from the Commercial Quotes record type, which stores submissions of its own shortcode form.
Disable / Reset
Untick Quote-only service and update; the normal price and cart button return.
Troubleshooting
If the button still shows, clear caches and confirm you ticked the parent product, not only a variation.
30. Garment care guides
Enable
Enter text in the Garment care guide field (_lcst_care_guide). It needs no switch.
Configure
Write plain text with one point per line: accepted items, exclusions, preparation and label checks. HTML is removed.
Front-end result
The product summary shows a collapsible block titled Before you book: garment care guide, with each line on its own row.
Test
Open the product page and expand the block; check that line breaks appear.
Common mistakes
Pasting formatted HTML and expecting formatting, or filling the guide on a variation instead of the main product.
Disable / Reset
Empty the field and update the product; the block disappears.
Troubleshooting
If the block is missing, clear caches and check that the theme shows the standard WooCommerce product summary area.
31. Service catalogue fields and price units
Enable
Open WooCommerce → Settings → Products → Washlora shopping. All six checkboxes default to on: Service option buttons, Recently viewed services, Grid and list switching, Related service add-ons, Customer account shortcuts and Price units.
Configure
On each product fill the optional fields Price unit, Typical turnaround, What is included, Before collection and Care limitations (stored as _lcs_unit, _lcs_turnaround, _lcs_included, _lcs_preparation and _lcs_limitations).
Front-end result
The unit appears after the price with Price units on. A product tab named Service & care details lists the filled fields, and the same facts appear in quick view.
Test
Fill one product, view its page and the shop card, then untick Price units to see it vanish.
Common mistakes
Writing the unit into the price field. Use text such as per kg or per item.
Disable / Reset
Clear the fields or untick the matching checkbox and save changes.
Troubleshooting
If a variation lacks its unit, enter it on the parent product; variations inherit it.
32. Recurring Pickups
[laundryes_recurring_pickup] and [laundryes_subscription_control]Enable
Place [laundryes_recurring_pickup] on a page. Add niche="slug" to tag the request.
Configure
The form Recurring Pickup Plan has Name, Email, Frequency (Weekly, Every 2 Weeks, Monthly) and Pickup Address, with the button Request Recurring Pickup.
Front-end result
A record titled like Jane - Weekly is stored with _laundry_email, _laundry_frequency, _laundry_address and _adt_niche_slug, and the visitor sees Recurring pickup request received. The control shortcode lets a signed-in customer pause or resume records whose _laundry_user_id equals their user ID.
Test
Submit a request and find it in the list.
Common mistakes
Expecting automatic billing, scheduling or email. None exist, and the form does not set _laundry_user_id, so the customer control stays empty until that value is added.
Disable / Reset
Trash the record or remove the shortcode.
Troubleshooting
If submission fails, all of Name, a valid Email and Pickup Address are required.
33. Loyalty points
[laundryes_loyalty_dashboard]Enable
Active automatically with WooCommerce; there is no setting.
Configure
Place the shortcode on the account or a dashboard page.
Front-end result
When an order changes to Completed the whole-number part of its total is added to the customer user meta _laundry_loyalty_points. The shortcode shows the number with the label Loyalty Points.
Test
Complete a test order for a registered customer and reload the page.
Common mistakes
Expecting a redemption or reward rule. The code only counts points and guest orders earn none.
Disable / Reset
Remove the shortcode, or reset the user meta value for a customer.
Troubleshooting
Signed-out visitors see Sign in to view loyalty points. If points stay at zero, check the order has a customer account and reached Completed.
34. Popups
Enable
Add a popup with a title and content, publish it, and set its custom field _adt_enabled to 1. The key starts with an underscore, so WordPress hides it from the Custom Fields box; set it with WP-CLI or code.
Configure
Optionally set _adt_delay to the number of seconds to wait before it opens.
Front-end result
Visitors see a modal with the title and content after the delay. Only one popup shows, the newest enabled one. Closing it stores the cookie laundryes_popup_{ID} for seven days.
Test
Open the site in a private window, wait for the delay, close it and reload.
Common mistakes
Enabling several popups and expecting all to appear.
Disable / Reset
Unpublish the popup, set _adt_enabled to 0, or delete it.
Troubleshooting
To see it again, delete that cookie. Popups are not shown in the admin area.
35. Express care surcharge
laundryes_rush_percentEnable
Active with WooCommerce. The surcharge defaults to 25 percent; a value of 0 hides the option.
Configure
There is no settings screen. Change it with WP-CLI, for example wp option update laundryes_rush_percent 15. Values are limited from 0 to 100.
Front-end result
Product pages show the checkbox Request express care (+25% service surcharge). The cart shows the fee Express care surcharge and the line item gets Care speed: Express care requested.
Test
Add the same service with and without the box and compare cart totals.
Common mistakes
Assuming the surcharge changes catalogue prices; it applies only to selected cart lines.
Disable / Reset
Set the option to 0.
Troubleshooting
Please refresh the service page and select express care again means the page nonce expired; reload the product page.
36. Order and delivery tracking
[laundryes_order_tracker] and [laundryes_delivery_tracker]Enable
Requires WooCommerce. Place the shortcodes on pages.
Configure
The order tracker accepts order="123" or a visitor-entered Order number with Track Order. The delivery tracker takes no settings.
Front-end result
The order tracker shows a stage name such as Order Received, Cleaning in Progress or Delivered, the pickup and delivery times from the order, and a link to the full order, only for the order owner or a shop manager. The delivery tracker lists the signed-in customer's five latest orders.
Test
Test as the customer, as another customer and as a guest.
Common mistakes
Using it for guest order lookup; guests are asked to sign in.
Disable / Reset
Remove the shortcode from the page.
Troubleshooting
Order not found means the number is wrong; the sign-in message means the account does not own the order.
37. Price calculators and estimator
[laundryes_price_calculator], [laundryes_weight_pricing] and [laundryes_estimator]Enable
The price calculator needs WooCommerce products; the others have no requirement.
Configure
[laundryes_price_calculator niche="slug"] lists up to 30 products of that niche, or 12 products when none match. [laundryes_weight_pricing rate="2.5" minimum="10"] multiplies kilograms by the rate with a minimum. [laundryes_estimator] accepts wash_rate, shirts_rate, bedding_rate and pickup_rate (defaults 2.50, 4.50, 12.00 and 8.00).
Front-end result
Each tool shows an estimated total that updates as the visitor types.
Test
Enter quantities and compare with your own prices.
Common mistakes
Leaving the sample rates in place, or expecting the totals to enter the cart. They do not.
Disable / Reset
Remove the shortcode.
Troubleshooting
If the calculator says No services available, publish WooCommerce products.
38. Checkout pickup fields
Enable
Needs a WooCommerce version supporting additional checkout fields and the block-based checkout.
Configure
Four optional fields are added to the order section: Preferred pickup date (YYYY-MM-DD), Preferred pickup window (Morning, Afternoon, Evening), Care preference (Standard, Eco / low-fragrance, Delicate handling, Hypoallergenic) and Laundry care instructions.
Front-end result
The customer's answers are saved with the order. A past or incorrectly formatted date is rejected with a message.
Test
Place a test order with a valid date, then a past date.
Common mistakes
Treating the date as a confirmed slot; it is a preference.
Disable / Reset
Leave the fields empty, or use a classic checkout where they do not appear.
Troubleshooting
If fields are missing, check that the checkout page uses the Checkout block.
39. Commerce Studio shop shortcodes
[laundryes_commerce_store] and [laundryes_woocommerce_store]Enable
Requires WooCommerce. Both shortcodes show the same store.
Configure
Place one on a page, or add niche="slug" to show one niche. Without it the shortcode uses the niche of the current page, or the whole catalogue. Set heading text in Appearance → Customize → Washlora shop.
Front-end result
A toolbar with All services, Saved, Compare, Laundry bag and My account is shown above a search form and 12 products per page.
Test
Open the page logged out and check each button.
Common mistakes
Combining it with another AJAX shop filter plugin.
Disable / Reset
Remove the shortcode.
Troubleshooting
If styles are missing, confirm the page contains the shortcode text or add the filter laundryes_commerce_assets_needed.
40. AJAX filters and shareable filter state
Enable
Built into the store shortcodes.
Configure
Fields: Find your service, Laundry specialty, Sort by (Service name, Price: low to high, Price: high to low, Newest), Maximum price, Available only, with Find services and Reset.
Front-end result
Results and page links refresh without reloading. The address bar gets parameters such as lcs_search, lcs_sort, lcs_max and lcs_page, and opening that link restores the same filters.
Test
Filter, copy the URL into a new window, then use back and forward.
Common mistakes
Searching for products hidden from the catalogue; they are excluded.
Disable / Reset
Click Reset or remove the shortcode.
Troubleshooting
Unable to load. Please try again. means the request failed; check the admin-ajax address and caching.
41. Quick view
Enable
Active wherever the Commerce Studio assets load.
Configure
There is no setting. Each card shows Quick view, Save and Compare buttons.
Front-end result
A dialog titled Service preview shows image, name, price, short description, service facts and stock. A simple in-stock service can be added from it; other types link to the service page.
Test
Open quick view for a simple and a variable service.
Common mistakes
Expecting variation selectors inside the dialog.
Disable / Reset
Hide the button with CSS or remove the shortcode.
Troubleshooting
If the dialog is empty, the product may be hidden or unpublished.
42. Saved services and Compare
Enable
Active with the store.
Configure
Use Save and Compare on cards, then the toolbar counters. Up to 30 services can be saved and up to four compared.
Front-end result
Lists open in a dialog (Saved services, Compare services) with current prices. They are kept only in the browser storage of that device.
Test
Save five and compare five to see the limit message.
Common mistakes
Expecting lists to follow the customer to another device.
Disable / Reset
Click Remove on items, or clear browser site data.
Troubleshooting
If counts stay zero, check that browser storage is allowed.
43. Laundry bag drawer
Enable
Active wherever the store toolbar appears (the store shortcodes and single product pages). WooCommerce cart fragments must be allowed to load.
Configure
There is nothing to configure. Customers add services with the normal add-to-cart buttons.
Front-end result
The button opens a dialog titled Your laundry bag that shows the WooCommerce mini cart, loaded fresh each time so totals are current.
Test
Add a service, open the dialog and compare it with the full cart page.
Common mistakes
Caching the AJAX address, which makes the drawer show an old cart.
Disable / Reset
Remove the store shortcode, or hide the button with CSS in a child theme.
Troubleshooting
If the drawer is empty after adding items, exclude the admin-ajax address from page caching and check the console for script errors.
44. Sticky product order bar
Enable
Automatic for purchasable products when Commerce Studio assets load. Quote-only services do not get it.
Configure
There are no settings. The bar uses the product name, price and the anchor to the add-to-cart form.
Front-end result
A bar with the service name, price and Choose & order jumps to the options. On variable products it follows the chosen variation: the price changes, the link reads Selected service when the variation can be bought and Option unavailable when not, and it resets when the options are cleared.
Test
Open a variable product, choose different options and watch the bar.
Common mistakes
Expecting it for products that are not purchasable.
Disable / Reset
Hide .lcs-sticky-buy with CSS in a child theme.
Troubleshooting
If the price does not follow variations, check that the standard WooCommerce variation form is present and no script errors appear.
45. Service option buttons
Enable
Keep Service option buttons ticked (it is on by default; option lcx_choices).
Configure
Create ordinary WooCommerce variable products with attributes. No other settings exist.
Front-end result
Each variation drop-down is hidden and replaced by a group of buttons. The pressed button matches the selection, and combinations that are not available are disabled with the tooltip Unavailable combination.
Test
Click every option on a variable service and check price and add-to-cart.
Common mistakes
Combining it with a swatch plugin that also replaces the drop-downs.
Disable / Reset
Untick Service option buttons and save changes.
Troubleshooting
If buttons do not appear, clear caches and confirm the product uses WooCommerce variations.
46. Recently viewed services
Enable
Keep Recently viewed services ticked (option lcx_recent).
Configure
No other settings. Visited product IDs are kept in the visitor browser, up to 12, and up to six are shown.
Front-end result
A section titled Recently viewed services appears under the product and under the store, with current prices and a Clear history button. The current product is left out.
Test
Visit several products, return to one and check the list; click Clear history.
Common mistakes
Expecting the list to follow a customer to another device or login.
Disable / Reset
Untick the setting and save, or clear the history.
Troubleshooting
If the section stays hidden, there is no history yet, or browser storage is blocked.
47. Grid and list view
Enable
Keep Grid and list switching ticked (option lcx_layout).
Configure
No other settings.
Front-end result
Two buttons, Grid view and List view, appear above the filter form. The choice is remembered in the visitor browser.
Test
Switch to list view, reload and check it persists.
Common mistakes
Expecting the choice to be saved on the server or for other visitors.
Disable / Reset
Untick the setting and save.
Troubleshooting
If the buttons are missing, confirm the page uses a store shortcode and not the default WooCommerce loop.
48. Linked recommendations
Enable
Keep Related service add-ons ticked (option lcx_addons).
Configure
Add cross-sell products. Up to eight are used.
Front-end result
A section Complete your care titled Useful with this service lists published, visible, purchasable, in-stock cross-sells with a Choose service button. Separately, related products are limited to services of the same niche when the product carries a niche tag.
Test
Add two cross-sells, one out of stock, and check only the in-stock one appears.
Common mistakes
Linking unavailable or hidden products.
Disable / Reset
Remove the cross-sells or untick the setting.
Troubleshooting
If nothing shows, none of the linked products is currently purchasable.
49. My Account shortcuts
Enable
Keep Customer account shortcuts ticked (option lcx_account). The Laundry Dashboard hero and the repeat-order button come from Washlora Core and have no switch.
Configure
No settings. The Book Pickup button points to /pickup-delivery/, so create a page with that slug.
Front-end result
The dashboard shows Your laundry, organised with cards Book a service, Orders & repeat care and Collection details, the hero with Book Pickup, Order Laundry Services and View Orders, and Repeat Last Laundry Order when a completed or processing order exists.
Test
Sign in as a customer who has an order and open My Account.
Common mistakes
Leaving out the pickup page.
Disable / Reset
Untick the setting; the hero and repeat button stay unless removed in a child theme.
Troubleshooting
If repeat order fails, WooCommerce may reject an item that is no longer available.
50. Slider support
[laundryes_niche_slider]; slider pluginsEnable
The built-in slider needs only Washlora Core. Smart Slider 3, Slider Revolution and Master Slider are optional plugins listed in Washlora Setup.
Configure
[laundryes_niche_slider niche="slug" title="..." subtitle="..." type="1"] accepts a style from 1 to 5. Images come from the option laundryes_slider_media_map for the niche; without images it shows a text slide. Set _laundryes_slider_type to revslider or masterslider on pages that use those plugins.
Front-end result
A slider with previous and next buttons changes slides every seven seconds, and each image slide has a Book Pickup button that jumps to the #book-laundry booking form. The Demo Setup finalizer restores portable slider data without overwriting yours.
Test
View a page with two slides and use the arrow buttons.
Common mistakes
Forgetting to set the slider type, so the Performance module removes the plugin scripts.
Disable / Reset
Remove the shortcode or slider block.
Troubleshooting
If a plugin slider is blank, set the slider type value and clear caches.
51. RTL and translation readiness
rtl.css and languagesEnable
Choose a right-to-left site language. WordPress then loads the theme file rtl.css and the body gets the class laundryes-rtl.
Configure
Translate theme strings with the text domain laundryes and plugin strings with laundryes-core. The files languages/laundryes.pot and languages/laundryes-core.pot are the templates.
Front-end result
The layout mirrors, and installed translations are used for theme and plugin text. Your page, post and product content is not translated automatically.
Test
Switch the language on staging and check the header, menus, shop and booking forms.
Common mistakes
Expecting ready-made language files or machine translation. Only the template files are included.
Disable / Reset
Return the site language to a left-to-right language.
Troubleshooting
If strings stay English, check the language folder, cache and that the text domain matches.