Skip to content

Hard-coded IDs and names the theme depends on

This page is for developers and whoever manages cPanel settings. The altapac.com theme contains fixed numbers and names that have to match records in the Maropost cPanel: warehouse ids, Store Finder ids, customer group ids, page ids, form URLs, advert group names, content zone names and so on. Maropost does not warn you when one of these stops matching. The section that depends on it just goes empty, or shows the wrong store, price or image.

Use it before you delete, re-create, renumber or rename any of the records listed below, and when you add a new store, warehouse or trade tier.

Everything here was checked against Altapac-ReDev branch development on 2026-10-21. In the “Where used” column, paths are relative to Altapac-ReDev/src/templates/, and paths starting with js/ are relative to Altapac-ReDev/src/js/. “Live” means checked read-only on https://www.altapac.com on 2026-10-21. Live can lag development.

How to use this page

  1. Find the kind of record you are about to change (warehouse, store, page, advert group and so on) in the sections below.
  2. Find the exact value in the table. If it is listed, the theme depends on it.
  3. Read “What breaks”. If you still need the change, ask a developer to update every file in “Where used” in the same release as your cPanel change.
  4. After the change goes live, check the page or section named in “What breaks”. Most of these failures don’t show any error.
  5. If you are adding something new (a store, a warehouse, a trade group, a promo type), use the checklist at the end.

Warehouses

The product page’s Pick up tab and per-store stock come from a fixed warehouse-to-store table in the theme. The platform’s own warehouse-to-store link isn’t set up on this store, so the theme’s table is the only one.

ValueMeaningWhere usedWhat breaks if it changesStatus
4Kotara store stock, warehouse “Park Ave” (store id 1)products/includes/availability.template.html:270, :342, :416Kotara shows no stock in Pick up; kits can’t compute Kotara availabilitySeen live on sampled product pages
9Online warehouse, “Altapac DC” at McDougall St (the primary warehouse). Its stock counts as Kotara stock (also: ['9'])products/includes/availability.template.html:264-266, :270, :342, :416Online stock stops counting towards Kotara pick-upSeen live. Fold into Kotara is owner-stated 2026-08-06 (comment at :264-266)
7Maitland store stock, warehouse “Maitland” (store id 2)products/includes/availability.template.html:271, :342, :416Maitland shows no stockSeen live
11Artarmon store stock, warehouse “Roof Rack & Towbar World Artarmon” (store id 3)products/includes/availability.template.html:272, :342, :416Artarmon shows no stockSeen live
16Burwood store stock, warehouse “Altapac Burwood” (store id 4)products/includes/availability.template.html:273, :342, :416Burwood shows no stockNot seen live in a 24-product sample (ids 4, 7, 9, 11 appeared)

The three places must agree: the STORES table (:269-274), the requiredWareIds list that pads missing warehouses with zero (:342), and the kit list 4,7,9,11,16 (:416). Stock in any other warehouse is ignored by the Pick up tab.

Store Finder store ids

Store ids are the Store Finder record ids: 1 Altapac Kotara, 2 Altapac Maitland, 3 Altapac Artarmon, 4 Altapac Burwood (ReDev Store Finder probe, 2026-09-15). Live #altapac-stores data shows the same ids, with misc5 slugs kotara, maitland, artarmon, burwood.

ValueMeaningWhere usedWhat breaks if it changesStatus
1Kotarajs/storeHours.js:29 (DEFAULT_STORE_ID = "1"); products/includes/availability.template.html:270; headers/includes/structured_data/structured_data.template.html:100-104; cms/home.template.html:82, :94 (first slide of the store carousel)Open-now checks with no store fall back to a store that doesn’t exist; Kotara stock maps to nothing; Kotara loses its image, description and rating in search-engine data; the home store carousel has no active slideConfirmed live
2Maitlandavailability.template.html:271; structured_data.template.html:105-109Stock and search-engine data for MaitlandConfirmed live
3Artarmonavailability.template.html:272; structured_data.template.html:110-115Same, plus the “Roof Rack & Towbar World Artarmon” alternate nameConfirmed live
4Burwoodavailability.template.html:273; structured_data.template.html:116-121Same, plus the “Roof Rack & Towbar World Burwood” alternate nameConfirmed live
1–4 in CMS contentdata-store-id on data-store-field spansPage content, not the theme: 37 spans on locations/* pages in Altapac-Content (fields phone, weekdays, saturday, sunday). Filled in by js/storeHours.js:257-276The span keeps its hand-typed text, which can go staleConfirmed in Altapac-Content
misc5 slugStore Finder custom field misc5 (Short Text, added 2026-09-23) = location page slug. Custom store field values are cut at 50 charactersfooters/includes/scripts.template.html:38; structured_data.template.html:91-93; cms/contact.template.html:355, :374; headers/includes/head.template.html:21 (canonical of the /d/ store pages, not live yet, AUD-83)Links go to /locations/<new slug>; if no page has that URL, they 404Live slugs match locations/kotara (14003), locations/maitland (14004), locations/artarmon (14005), locations/burwood (14006)

The per-store image, description and aggregateRating in the search-engine data are typed into the template, keyed by store id (structured_data.template.html:100-121). The rating values (for example 4.0 from 240 ratings for Kotara) don’t update themselves.

The contact page also hard-codes the four store names as tab keys and URL hashes (kotara, maitland, artarmon, burwood) at cms/contact.template.html:268-277 and :413. A fifth store needs a template change there too.

Customer groups

ValueMeaningWhere usedWhat breaks if it changesStatus
8, 9, 10, 11, 12, 13The trade tiers (“… - DT”). Members see ex-GST trade pricing, with no RRP, savings or promo badgesproducts/includes/trade_group.template.html:7. Loaded by thumbs/product/template.html:7, home-card.template.html:5, list.template.html:76, box.template.html:10, products/includes/buying_options.template.html:75, bikerack/buycard.template.html:19, child_products.template.html:96A new trade group not on this list sees retail pricing. A renumbered group loses trade pricingOwner-stated 2026-10-20 (comment at :2-5). Groups 7–13 are the “… - DT” groups created for the Drive Trade customer move (ReDev docs/records/2026-10-15-wholesale-pricing/spec.md). The names of 8–13 aren’t recorded
2 (Wholesale), 7 (F&F - DT)Deliberately not tradetrade_group.template.html:4-5 (comment only)Nothing, unless someone expects them to get trade displayOwner-stated 2026-10-20. Group 2 = Wholesale confirmed by the price probe of 2026-10-20
default_groupid = 1Default (retail) group; anonymous visitors carry itthumbs/product/template.html:2 and six other price_hide forks, active only when config wholesale is setPrice hiding for the default group, if wholesale is ever switched onProbed 2026-07-27: default_groupid 1, wholesale empty

Shipping category

ValueMeaningWhere usedWhat breaks if it changesStatus
20Pickup-only products. The product page hides the Delivery tab and opens Pick upproducts/includes/availability.template.html:922 (sh_type_id eq '20')A pickup-only product offers Delivery again, unless the shipping matrix happens to return no delivery optionOwner-confirmed 2026-07-29 that 20 is the pickup-only category (ReDev commit c791c2d). No probe run

Product cards, the cart and search results don’t check this category, so a pickup-only product still gets an Add to Cart button on listings.

Content page ids and hard-coded page URLs

ValueMeaningWhere usedWhat breaks if it changesStatus
153Brands page, /brands/headers/includes/components/mobile-Menu.template.html:162 (“Our Brands” in the mobile menu)Mobile “Our Brands” link breaksConfirmed: Altapac-Content id 153 is brands/ (template brands), and the live mobile link resolves to /brands/ (200). The desktop “Explore More” link hard-codes /brands/ by URL instead (desk-Menu.template.html:265)
95Store Finder page, /store-finder/stockists/template.html:14 (breadcrumb “Stockists”)Breadcrumb points at a dead pagePage is inactive: Altapac-Content id 95 has Active: False, and /store-finder/ returns 404 live. /stockists/ also returns 404
14003–14006Location pages Kotara, Maitland, Artarmon, Burwood. Their main image URLs are typed into the search-engine datastructured_data.template.html:101, :106, :111, :117 (/assets/webshop/cms/03/14003-1.jpg and so on)Store image in Google results breaks if the page is re-created or the image removedAll four images return 200 live

Internal links typed into templates by URL (each confirmed in Altapac-Content and returning 200 live):

URLPage idWhere used
/privacy-policy/2cart/onepage.template.html:548; customer/login.template.html:166; customer/register/template.html:167; customer/wholesaleregister/template.html:198; products/includes/modals.template.html:111 (not live yet, AUD-32)
/terms-and-conditions-of-sale/13961cart/onepage.template.html:547 (not live yet, AUD-37)
/current-promotions/11319 (a category)cms/promotions-list.template.html:152, the link shown when /promotions has no promotions (not live yet, AUD-63)
/brands/153headers/includes/components/desk-Menu.template.html:265
/learn/about-altapac/145cms/serviceNew.template.html:398
/locations14002cms/serviceNew.template.html:399
/fair-price-policy/13962cms/serviceNew.template.html:400
/contact-altapac/223cms/serviceNew.template.html:401

Changing any of these URLs in cPanel breaks the link. Maropost may add a redirect, but this hasn’t been confirmed for this store.

Content type codes and ids

Menus, lists and product-page sections select content by content type code. One template line selects by numeric content type id.

The Altapac-Content pull of 2026-10-20 took every content page except the parts finder (421 pages). They sit in seven content type ids: 1 categories (175 pages), 2 info pages such as Privacy Policy and Contact Altapac (18), 9 forms (15), 10 brands (130), 12 services (38), 13 Learn and location pages (43) and 16 promotions (2). The parts-finder type’s id isn’t recorded.

ValueMeaningWhere usedWhat breaks if it changesStatus
categoryShop categoriesdesk-Menu.template.html:7; mobile-Menu.template.html:6; cms/products.template.html:36; cms/parent-category.template.html:102; cms/promotions.template.html:114Shop menus and category lists go emptyLive menus render
servicesService pagesdesk-Menu.template.html:119; mobile-Menu.template.html:62; cms/service-parent.template.html:150Services menu and child cards go emptyLive menus render
learnConnect menu and location pagesdesk-Menu.template.html:216; mobile-Menu.template.html:113; cms/learn-parent.template.html:161Connect menu and /locations child list go emptyLive menus render
brandBrand pagesdesk-Menu.template.html:252 (11 tiles); cms/brands.template.html:85Brand tiles and /brands list go emptyLive
promotionsPromo pagesproducts/template.html:4; products/bikeRacks.template.html:4 (product-page promo banner); cms/promotions-list.template.html:112 (/promotions list)Promo banners and the promotions list go emptyLive promo pages are content type 16
parts-finderParts-finder pages, the store’s real code. Links products to vehicles (“More for your Vehicle”)products/template.html:215; products/bikeRacks.template.html:252Section never showsLive
part-finderMisspelling in the parent-category template. Matches no content type, so the template’s parts-finder branch never runscms/parent-category.template.html:321—Wrong code; should be parts-finder
Content type id 1Category typecms/parent-category.template.html:101Category branch on that template stops matchingAltapac-Content: type 1 holds 175 category pages
Content type ids 1, 10, 16, 18, 23, 25Types whose page 2+ canonical URL keeps ?pgnum= (not live yet, AUD-70)headers/includes/head.template.html:12Paged listings of a missing type canonicalise to page 11 = categories, 10 = brands, 16 = promotions (Altapac-Content pull). 18, 23 and 25 hold none of the pulled pages, so each is either the parts-finder type or holds no pages

Category ids

No loaded template filters on a hard-coded category id. The only category ids in the theme are in two files that nothing loads (see Not loaded).

Form URLs

ValuePage idWhere usedWhat breaks if it changesStatus
/form/contact-us/74products/includes/buying_options.template.html:179 (price on request), bikerack/buycard.template.html:96, bikerack/template.html:160, modals.template.html:80; cms/contact.template.html:290 (Kotara tab)Enquiry fallbacks and the Kotara contact form show a 404200 live
/form/contact-modal/154footers/includes/contactModal.template.html:86The site-wide contact modal is blank200 live
inp-msg—contactModal.template.html:287: the enquiry text goes into the contact-modal form’s msg field through this URL parameterEnquiry buttons stop prefilling the messagePrefill from the URL confirmed working 2026-08-13 (ReDev content/README.md)
/form/contact-altapac-maitland/225cms/contact.template.html:302Maitland tab shows a 404200 live
/form/contact-artarmon/14015cms/contact.template.html:314Artarmon tab shows a 404200 live
/form/contact-burwood/14016cms/contact.template.html:326Burwood tab shows a 404200 live

/form/price-match-request/ and form/contact-us/contact-us-headless-form/ appear only inside commented-out modals (products/includes/modals.template.html:21-60). They return 404 live and do nothing.

Export feeds

The feed definitions live in cPanel export settings, not in any repo.

ValueMeaningWhere usedWhat breaks if it changesStatus
/export//service-product.jsonProducts shown on service pages. Fields read: category, name, price, description, img_url, img_url2. A product shows on a service page when its comma-separated category contains that page’s content idcms/services.template.html:147, :185; cms/serviceNew.template.html:212Service pages show no products, with no error200 live, 99 records. Only 4 have a category, all 106 (services/window-tinting/automotive-window-tinting/), which renders no product block live. The feed isn’t strict JSON (quotes are doubled CSV-style); the theme repairs it line by line
/export//pfdata.jsonParts finder tree. Fields: id, name, parent_id, urljs/pf_feed_V0.5.4.js:5, loaded by headers/includes/components/pf_feed_App_v1.template.html:40Parts finder dropdowns are empty200 live, about 1.5 MB. Cached per browser session in sessionStorage key pfdata (js/pf_feed_V0.5.4.js:15, :28), so shoppers see feed changes only in a new session

Config values

Read with [@config:…@]. Only values with theme-specific behaviour are listed; stock settings such as company_name are left out.

KeyMeaningWhere usedWhat breaksStatus
Operating_ExceptionsPublic-holiday closures. Must be a JavaScript object literal, not JSONfooters/includes/scripts.template.html:57Empty or malformed: the store-hours script fails and every store shows closedSet live (non-empty)
GOOGLE_GEO_APIGoogle key for postcode geocoding (store distance, Pick up default) and static store mapsproducts/includes/availability.template.html:302; cms/store_finder.template.html:57, :60; stockists/template.html:50, :53Stores are no longer ranked by distance and the Pick up tab isn’t chosen automatically. Store maps breakSet live. It is printed in page source, so it must be a browser-restricted key
Reviews_ioSwitches REVIEWS.io widgets and rating snippets onproducts/includes/reviews.template.html:1; product_information.template.html:12, :170; buying_options.template.html:129; thumbs/product/template.html:35; list.template.html:44; home-card.template.html:33; bikerack/template.html:85; bikerack/buycard.template.html:73—Off. Probed 0 on 2026-07-27; no reviews widget on a sampled live product on 2026-10-21
COMPANY_PHONEPhone on Within Reach, the contact modal, footer, service pages, bike-rack CTA and dropship modalcms/home.template.html:63; footers/includes/contactModal.template.html:29, :216; footers/template.html:158-162; cms/services.template.html:153; cms/serviceNew.template.html:218; products/includes/bikerack/template.html:163; products/includes/modals.template.html:80-81Every Call link changesLive: (02) 4941 4499
wholesale, default_groupidGroup price hiding (see Customer groups)thumbs/product/template.html:2 and six other forks—wholesale empty, default_groupid 1 (probed 2026-07-27)
ALLOW_NOSTOCK_CHECKOUTPrinted as a JavaScript variable for the theme’s scriptsfooters/includes/scripts.template.html:19—Probed 1
GOOGLE_VERIFICATIONSearch Console verification meta tagheaders/includes/head.template.html:16Verification tag disappearsTag present live
Operating_HoursRetired 2026-09-15. Nothing reads it——Hours now come from Store Finder custom fields misc1–4 (weekdays open, weekdays close, Saturday open, Saturday close; Short Text, HH:MM)

Custom config values such as Operating_Exceptions, GOOGLE_GEO_API and COMPANY_PHONE are edited in cPanel under Custom links > Custom Configs.

Group names must match exactly. A missing or renamed group hides its section without any error. Adverts beyond the limit aren’t shown.

GroupLimitWhere usedShowsStatus
home_news4cms/home.template.html:5Home news carouselLive: 4 slides
featureCards3cms/home.template.html:147Home service cardsLive: 3 cards
home_banner10cms/home.template.html:168Home “What do you get” carouselRenders live
category_ad10cms/category.template.html:223; cms/parent-category.template.html:133Category page bannerSource only
footer-usps4footers/template.html:10 (also category:'0')Footer USP stripNot rendering live: no USP strip on the home page, so the group is empty, missing or its adverts don’t match category:'0'
footer-logo1footers/template.html:150 (also category:'0')Footer logoNot in use live: the footer falls back to /assets/website_logo.png

The category templates also show adverts with an empty group name and inherit:'n' (cms/category.template.html:276, :303; cms/parent-category.template.html:186, :212). Those are adverts with no group set, chosen by category, not by group name.

Content zones

Zone idWhere usedHoldsWhat breaksStatus
announcementheaders/template.html:32Site-wide announcement barBar disappearsIn use live
footer blurbfooters/template.html:156Text under the footer logoText disappearsEmpty live
termsfooters/template.html:252Terms modal body (register, login, trade registration, notify-me). On altapac.com today checkout uses it too (not live yet, AUD-37)Modal is emptyIn use live: holds the website terms of use
shop_menu_contentheaders/includes/components/desk-Menu.template.html:64A bare content id used as the Shop mega-menu fallback panelFallback panel is empty if the id is wrapped in <p> or points at a deleted pageSource only. Cached 24 hours
serve_menu_contentdesk-Menu.template.html:175Same, for the Services menuSameSource only. Cached 24 hours
Wholesale Form Textcustomer/login.template.html:42; customer/register/template.html:42Trade account blurbFalls back to “Apply for a Trade Account and get trade pricing and priority support.”Not checked
wholesale_termscustomer/wholesaleregister/template.html:192, :209Trade account termsTerms emptyNot checked

Zone ids with spaces and capitals (footer blurb, Wholesale Form Text) must be entered exactly.

Menu idWhere usedNotesStatus
web_footerfooters/template.html:132Footer link columns. Cached 24 hours (:131)Renders live
category_gridcms/home.template.html:121Home category grid. Each item’s icon is /assets/images/homepage/grid/s_icon###.png (64px) and l_icon###.png (240px), where ### is the item’s hierarchy value (:132-133)Live: 18 items, 001–018, all icons return 200
web_informationcms/includes/sidebar.template.html:292Rendered hidden (display: none !important). Cached 24 hoursNo visible effect

Third-party ids and keys

Secret values are not printed here.

IntegrationWhat the theme depends onWhereWhat breaksStatus
Builder.ioModel name = the page’s Label 2. The API key is compiled into the bundle, not read from a configcms/builder-content.template.html:1; bundle src/content-app/index-DJYEhrs8.jsWrong Label 2: blank page. Key change: needs a rebuilt bundleNo live page uses builder-content (Altapac-Content)
AlgoliaApp id, search key and index name are constants in the separate altapac_instantsearch-app repo (src/algoliaConfig.ts:8-11), compiled into the theme bundlefooters/includes/scripts.template.html:62-63; bundle src/algolia-search/altapac_instantsearch-app.c477bea9.jsKey rotation or index rename: search breaks until the app is rebuilt and the hashed bundle filename is updated in scripts.template.htmlBundle loaded live. Expects neto_is_default_group, which the theme doesn’t set (see Customer groups)
TypeformEmbed ID (data-tf-live) = the page’s Label 3. Rendered only when Description 2 has contentcms/services.template.html:233-235; cms/serviceNew.template.html:298-300Wrong id: empty embedA live service page (/services/window-tinting/) renders a Typeform embed
REVIEWS.ioStore id altapac.com typed into the widgetproducts/includes/reviews.template.html:7Reviews from the wrong store, or noneOff (see Reviews_io)
GoogleGOOGLE_GEO_API, GOOGLE_VERIFICATIONSee Config values—Both set live

Hard-coded asset paths

Replacing a file at the same path is safe. Renaming or deleting it isn’t.

PathUsed forWhere usedLive
/assets/images/glenworth.jpgProduct-page promo banner background when the promo page has no imageproducts/template.html:13; products/bikeRacks.template.html:13200
/assets/images/4x4-sketch.jpgCard image fallback when a page has no Alt image 1cms/content.template.html:148; cms/default.template.html:85; cms/promotions.template.html:66200
/assets/images/lost_the_trail-noBG_500x500.pngEmpty-list imagecms/default.template.html:142200
/assets/images/homepage/Dometic-Camp_360x1257.jpgHome “Within Reach” imagecms/home.template.html:71200
https://www.altapac.com/assets/images/DSC01901.jpgserviceNew “Why Choose Altapac?” image (absolute URL)cms/serviceNew.template.html:333200
/assets/images/footer/That's%20what%20you%20get%404x_480x854.pngFooter benefits imagefooters/template.html:114200
/assets/images/homepage/grid/s_icon###.png, l_icon###.pngCategory grid iconscms/home.template.html:132-133001–018 return 200
/assets/pixel.gifPlaceholder when a menu page has no Alt image 1desk-Menu.template.html:53, :68, :164, :179, :200, :229, :260; mobile-Menu.template.html:18, :71, :122; cms/brands.template.html:99200
/assets/website_logo.pngOpen Graph default image; footer logo fallbackheaders/includes/head.template.html:8; footers/template.html:155 (through config:imageurl)200
/assets/favicon_logo.pngFaviconheaders/includes/head.template.html:22; customer/print/template.html:6; customer/nr_print/template.html:6200
/assets/webshop/cms/03/14003-1.jpg to /06/14006-1.jpgStore images in search-engine datastructured_data.template.html:101, :106, :111, :117200

/assets/images/discont.png (products/includes/buying_options.template.html:65) is commented out and returns 404 live. /assets/images/homepage/banners/[@ad_id@].png is only in thumbs/advert/srcset-banner.html, which no advert call uses.

Not loaded (ignore these)

These files contain hard-coded ids but no template loads them. Changing the ids they mention has no effect.

FileWhat it holds
headers/includes/structured_data/category_structured_data.template.html125 content_id comparisons (124 distinct ids) and made-up rating data. None of the ids belongs to an Altapac category in Altapac-Content. Recommended for deletion
cms/includes/bpf_count.template.htmlCategory ids 581325 and 581292 (not in Altapac-Content)
cms/includes/home-sections/image-w-overlay.htmlAdvert group overlay_ad
thumbs/advert/srcset-banner.html/assets/images/homepage/banners/ paths
js/pf_feed_V0.5.2.jsOlder parts finder script (/export//pfdata.json); the header loads pf_feed_V0.5.4.js

When you change X in cPanel, also update Y

  • Add, remove or renumber a warehouse: update STORES, requiredWareIds and the kit list in products/includes/availability.template.html (:269-274, :342, :416).
  • Add a store (new Store Finder record): add a STORES row with its warehouse id, a per-store arm in structured_data.template.html:100-121, a tab, form and hash entry in cms/contact.template.html, and a /locations/<slug> page matching its misc5. Hours, phone and the store JSON pick it up automatically.
  • Re-create or delete a Store Finder record: the id changes. Update every store id 1–4 listed above, including DEFAULT_STORE_ID in js/storeHours.js:29 and the data-store-id spans in location page content.
  • Change a store’s misc5 slug: rename the matching locations/… page URL to the same slug.
  • Add a trade customer group: add its id to products/includes/trade_group.template.html:7.
  • Create or renumber the pickup-only shipping category: update '20' in products/includes/availability.template.html:922.
  • Change the URL or id of Brands (153), a policy page, /current-promotions/, /locations, /contact-altapac/ or a contact form: update the template lines in Content page ids and Form URLs.
  • Reactivate or replace Store Finder (95): check the stockists breadcrumb still points at the right page.
  • Rename a content type code (category, services, learn, brand, promotions, the parts finder type): update every content_type: line above.
  • Edit an export feed (service-product, pfdata): keep the URL and field names. To show products on a service page, put that page’s content id in the product field the feed exports as category.
  • Empty or rewrite Operating_Exceptions: keep it a valid JavaScript object literal. Never leave it blank.
  • Rename an advert group, content zone or Menu Manager menu: update its id in the template line above, or the section disappears.
  • Put a page id in shop_menu_content or serve_menu_content: enter the bare number with no formatting, and allow up to 24 hours for the menu to refresh.
  • Reorder the category_grid menu: re-check the grid icons on the home page.
  • Rotate the Algolia, Builder.io or Google key: Algolia and Builder.io need a rebuilt bundle and an updated bundle filename in the theme. Google only needs the config value.
  • Rename or delete an image under /assets/images/: check the asset table first.

For developers

Sources and method

Theme: ~/src/altapac-org/Altapac-ReDev, branch development, read 2026-10-21. Every row above comes from a grep of src/templates and src/js (vendor libraries excluded) for: warehouse_id/wareId and quoted ids; user:group_id; store_id; sh_type_id; content_type_id; numeric id:/filter_category: parameters; /export/; /form/; every [@config:…@] key; ad_group:; content_zone id:; menu id:; content_type: and type: codes; /assets/ paths and absolute altapac.com URLs; typeform, builder, reviews.io, algolia. Whether an include is loaded was checked by matching every load_template file: and load_ajax_template call against the file list.

Files relied on most:

  • src/templates/products/includes/availability.template.html (warehouses, store join, shipping category 20, GOOGLE_GEO_API)
  • src/templates/products/includes/trade_group.template.html (trade groups)
  • src/templates/footers/includes/scripts.template.html (store JSON, Operating_Exceptions, Algolia bundle)
  • src/js/storeHours.js (default store, data-store-field spans)
  • src/templates/headers/includes/structured_data/structured_data.template.html (per-store SEO data)
  • src/templates/headers/includes/components/desk-Menu.template.html, mobile-Menu.template.html (menu zones, page 153, caches)
  • src/templates/footers/template.html, src/templates/cms/home.template.html (advert groups, zones, menus, assets)
  • src/templates/footers/includes/contactModal.template.html, src/templates/cms/contact.template.html (form URLs)
  • src/templates/cms/services.template.html, serviceNew.template.html, src/js/pf_feed_V0.5.4.js (export feeds, Typeform)
  • src/templates/cms/builder-content.template.html, src/templates/products/includes/reviews.template.html
  • .claude/skills/base-templating/references/value-formats.md (2026-07-27 config probe), docs/map/store-data/StoreData.md, docs/records/2026-09-25-repo-audit/backlog.md (AUD-29)
  • ~/src/altapac-org/altapac_instantsearch-app/src/algoliaConfig.ts, src/Hit.tsx (Algolia constants, neto_is_default_group)

Content: ~/src/altapac-org/Altapac-Content/pages/**/meta.json (421 pages, pulled 2026-10-20; commit 369acdd records that the pull skipped only the parts finder) for page ids, URLs, content types, Active flags and data-store-id spans. cPanel observations: ReDev docs/probes/RESULTS.md (Store Finder probe 2026-09-15, price probe 2026-10-20), docs/map/store-data/issues.md (misc5), docs/records/2026-10-15-wholesale-pricing/spec.md (customer groups), content/README.md (contact-modal prefill) and commit c791c2d (shipping category 20).

Live checks: read-only HTTP requests to https://www.altapac.com on 2026-10-21 (home page, one category page, 24 product pages, every listed URL and asset, both export feeds). Account pages return a bot challenge, so Wholesale Form Text and wholesale_terms couldn’t be checked.