Skip to content

Home Page

Flow ID: CF-26 | Module(s): eshop | Complexity: High

Business Overview

The home page is a content aggregation engine composing 15+ independent content streams into a single landing page. Every section is feature-gated via registry settings — marketing teams can toggle features without code changes.

Content streams include:

  • Hero sliders and slideshow groups
  • Curated product tabs and collections
  • Featured vendors and brand showcases
  • AI recommendations (Advisable AI, Google, Manago)
  • Last-seen products (personalized)
  • Video carousel (Bunny CDN)
  • Active coupons and gift promotions
  • Static sub-content blocks
  • Project Agora display ads

Key business behaviors:

  • All streams independently configurable via registry flags
  • Graceful degradation — disabled/down services simply don't render
  • Personalized content when customer is logged in
  • Deferred tasks handle AI/analytics tracking post-response
  • All content cached with configurable TTL

Content Streams

MethodStreamRegistry Gate
homeTabs()Product list tabsConfig home_tabs
homeProductLists()Curated collectionsConfig home_productlists
homeSliders()Image slidersConfig home_sliders
homeSlideshowGroups()Slider groupsConfig home_slideshowgroups
homePromoVendors()Featured vendorsAlways
homeVendorsList()All active vendorsAlways
homeSubContent()Static HTML blocksAlways
projectAgoraAll()Ad networkAGORA.IS_ENABLED
googleRecommendationsForHomePage()Google MLGOOGLE_RECOMMENDATIONS.GENERAL\ENABLED
renderSmartRecommendationsRelatedProducts()Internal algoSMART_RECOMMENDATIONS.IS_ENABLED_BASED_ON_CART
renderManagoRecommendations()Manago CRMMANAGO.ENABLE_API + ENABLE_RECOMMENDATIONS
renderLastSeenProducts()Recent viewsSMART_RECOMMENDATIONS.IS_ENABLED_LAST_SEEN
homeAI()Advisable AIADVISABLE_AI.ENABLED
getStreamVideos()Video carouselVIDEOSHOWCASE.ENABLED
activeCustomerCoupons()Active couponsAlways
getActiveGiftRules()Gift promotionsAlways

Code Flow

File: ecommercen/eshop/controllers/Adv_home.phpindex() (line 34-56)

  1. SEO init → site-level meta defaults
  2. indexExtras() → orchestrates all 15+ content stream methods
  3. defaultProductParseWithProductCodes() → enriches all queued product IDs
  4. Render with template

Client Extension Points

Primary Override

indexExtras() — override to add/remove content streams, custom data loading

Registry Configuration (no code changes needed)

KeyControls
AGORA.IS_ENABLEDAd network
GOOGLE_RECOMMENDATIONS.GENERAL\ENABLEDGoogle recommendations
SMART_RECOMMENDATIONS.IS_ENABLED_BASED_ON_CARTCart-based recommendations
SMART_RECOMMENDATIONS.IS_ENABLED_LAST_SEENRecently viewed
MANAGO.ENABLE_APIManago CRM integration
ADVISABLE_AI.ENABLEDAI recommendations
VIDEOSHOWCASE.ENABLEDVideo carousel

Service Integrations

ServiceClassPurpose
Advisable AIAdvAdvisableAIML recommendations
Google RecommendationsGoogleRecommendationsGoogle API suggestions
ManagoManagoCRM analytics
Project AgoraProjectAgoraFactoryDisplay ads
Bunny StreamBunnyStreamVideo CDN

Live Browser Testing Findings

Page Characteristics

  • HTML payload: The homepage renders approximately ~1.4 MB of HTML.
  • Vue app container: A #app container element is detected, confirming Vue 2 hydration on the frontend.

Visible Content Streams

The following streams were observed during live browser testing:

StreamDetails
Promo banner sliderFree shipping promotion banner
Search barProminent search input
Navigation25+ categories in the main navigation
Welcome / Login CTALogged-out CTA showing loyalty points incentive (e.g., "15,000 points")
Brands carouselKorres, Apivita, La Roche Posay, and other major brands
Gift suggestionsGift product recommendations section
Product cardsProduct cards with pricing
Blog section3 blog cards
FooterNewsletter signup form

SEO & Meta

  • Robots directive: noindex, nofollow in development environments.
  • OpenGraph: og:site_name set to the site name (e.g., PHARM16 in the test instance).

Image Delivery

  • Images are served through a dynamic resize endpoint: /mediastream/w320/ (width-based on-the-fly resizing).

Shared Patterns