ShahiLanding

How to Customize Landing Page Templates

This step-by-step tutorial shows you how to customize existing templates and create your own reusable designs.

What You’ll Learn

By the end of this tutorial, you’ll know how to:

    1. Find and use built-in templates
    2. Customize template designs
    3. Create your own templates
    4. Save templates for reuse
    5. Share templates with others
    6. Import community templates
    7. Time Required: 15-30 minutes
      Difficulty: Beginner to Intermediate
      Prerequisites: Basic HTML/CSS knowledge helpful

      Understanding ShahiLandin Templates

      What Are Templates?

      Templates are pre-designed landing page layouts you can customize:

    8. HTML structure
    9. CSS styling
    10. JavaScript functionality
    11. Pre-configured sections (hero, features, testimonials, etc.)
    12. Template Types

      Premium Templates (included):

    13. 50+ professional designs
    14. Industry-specific (SaaS, eCommerce, Agency, etc.)
    15. Fully responsive
    16. Conversion-optimized
    17. Community Templates (free):

    18. User-submitted designs
    19. Various styles
    20. Open-source
    21. Custom Templates (your own):

    22. Your saved designs
    23. Client work
    24. Brand-specific layouts
    25. Method 1: Using Built-In Templates

      Step 1: Access Template Library

    26. Go to Landing Pages → Add New
    27. Click Choose Template button
    28. Or go to ShahiLandin → Template Library
    29. Step 2: Browse Templates

      Filter by:

    30. Industry: SaaS, eCommerce, Agency, Education, Healthcare
    31. Style: Modern, Minimal, Bold, Corporate
    32. Purpose: Lead Gen, Sales, Event, Download
    33. Step 3: Preview Template

    34. Hover over template thumbnail
    35. Click Preview button
    36. Template opens in new tab
    37. Review design, sections, features
    38. Step 4: Select Template

    39. Click Use This Template button
    40. Enter page title: “My Product Launch”
    41. Choose slug: my-product-launch
    42. Click Create Page
    43. Step 5: Template Loaded

      Editor opens with template pre-loaded:

    44. HTML content
    45. CSS styles
    46. JavaScript functionality
    47. Placeholder content
    48. Now customize it!

      Method 2: Customizing Template Design

      Change Colors

      Find Color Scheme

      In CSS editor, look for color variables (usually at top):

      `css
      :root {
      –primary-color: #0066cc;
      –secondary-color: #ff6600;
      –text-color: #333333;
      –background-color: #ffffff;
      –accent-color: #00cc66;
      }
      `

      Update Colors

      Change to your brand colors:

      `css
      :root {
      –primary-color: #8b5cf6; / Purple /
      –secondary-color: #ec4899; / Pink /
      –text-color: #1f2937; / Dark gray /
      –background-color: #f9fafb; / Light gray /
      –accent-color: #10b981; / Green /
      }
      `

      All elements using these variables update automatically!

      Change Fonts

      Find Font Declarations

      `css
      body {
      font-family: ‘Roboto’, sans-serif;
      }

      h1, h2, h3 {
      font-family: ‘Montserrat’, sans-serif;
      }
      `

      Replace with Your Fonts

      `css
      / Import Google Fonts /
      @import url(‘https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700&family=Inter:wght@300;400;500&display=swap’);

      body {
      font-family: ‘Inter’, sans-serif;
      }

      h1, h2, h3 {
      font-family: ‘Poppins’, sans-serif;
      font-weight: 700;
      }
      `

      Update Images

      Replace Hero Image

      Find in HTML:

      `html

      `

      Replace with your image:

      `html

      `

      Or upload to Media Library and use URL.

      Replace All Placeholder Images

      Search HTML for: template- or placeholder-

      Replace with your actual images.

      Modify Layout

      Change Section Order

      Cut and paste HTML sections:

      Before:
      `html

      `

      After:
      `html

      `

      Add New Section

      Copy existing section and modify:

      `html

      Pricing Plans

      `

      Remove Sections

      Delete sections you don’t need:

    49. Remove HTML markup
    50. Remove associated CSS (search for class names)
    51. Test page still works
    52. Customize Components

      Button Styles

      Find button CSS:

      `css
      .cta-button {
      background: var(–primary-color);
      color: white;
      padding: 15px 40px;
      border-radius: 5px;
      }
      `

      Customize:

      `css
      .cta-button {
      background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
      color: white;
      padding: 18px 48px;
      border-radius: 50px; / Pill shape /
      font-size: 18px;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 1px;
      box-shadow: 0 10px 30px rgba(102, 126, 234, 0.3);
      transition: transform 0.2s;
      }

      .cta-button:hover {
      transform: translateY(-2px);
      box-shadow: 0 15px 40px rgba(102, 126, 234, 0.4);
      }
      `

      Form Styles

      `css
      .lead-form input,
      .lead-form textarea {
      width: 100%;
      padding: 15px;
      margin-bottom: 15px;
      border: 2px solid #e5e7eb;
      border-radius: 8px;
      font-size: 16px;
      transition: border-color 0.3s;
      }

      .lead-form input:focus,
      .lead-form textarea:focus {
      outline: none;
      border-color: var(–primary-color);
      box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
      }
      `

      Method 3: Creating Custom Template

      Step 1: Build Landing Page from Scratch

    53. Landing Pages → Add New
    54. Choose Blank Template
    55. Build your design using HTML/CSS/JS
    56. Test thoroughly
    57. Ensure it’s responsive
    58. Step 2: Save as Template

    59. In landing page editor, click ToolsSave as Template
    60. Template name: “Lead Gen – Purple Theme”
    61. Description: “High-converting lead generation template with purple gradient”
    62. Category: “Lead Generation”
    63. Tags: purple, modern, forms
    64. Add thumbnail (screenshot): Upload image
    65. Click Save Template
    66. Step 3: Template Saved

      Template now appears in Template Library under My Templates.

      Template File Structure

      Templates are saved as JSON:

      `json
      {
      “name”: “Lead Gen – Purple Theme”,
      “description”: “High-converting lead generation template”,
      “version”: “1.0”,
      “author”: “Your Name”,
      “category”: “Lead Generation”,
      “tags”: [“purple”, “modern”, “forms”],
      “content”: {
      “html”: “…”,
      “css”: “…”,
      “js”: “…”
      },
      “settings”: {
      “rendering_mode”: “canvas”,
      “enable_analytics”: true,
      “lazyloadimages”: true
      },
      “thumbnail”: “data:image/png;base64,…”
      }
      `

      Method 4: Exporting/Importing Templates

      Export Template

      Via Dashboard:

    67. ShahiLandin → Template Library
    68. Find your template
    69. Click Export icon
    70. Choose format: JSON or Blueprint
    71. Download file: lead-gen-purple-theme.json
    72. Via WP-CLI:

      `bash
      wp shahi template export “Lead Gen – Purple Theme” –file=template.json
      `

      Import Template

      Via Dashboard:

    73. ShahiLandin → Template Library
    74. Click Import Template button
    75. Upload .json or .zip file
    76. Click Import
    77. Template added to library
    78. Via WP-CLI:

      `bash
      wp shahi template import template.json
      `

      Share with Others

    79. Export template as JSON
    80. Share file via email, GitHub, etc.
    81. Recipient imports into their ShahiLandin installation
    82. Using Template Variables

      Make templates more flexible with variables.

      Define Variables

      In template, use placeholder syntax:

      `html

      {{COMPANYNAME}} – {{PRODUCTNAME}}

      Get started with {{PRODUCT_NAME}} today for only {{PRICE}}/month!

      `

      Set Variable Values

      When using template:

    83. Select template
    84. Customize Variables dialog appears:
    85. `
      COMPANY_NAME: [Your Company]
      PRODUCT_NAME: [Your Product]
      PRICE: [99]
      PRIMARY_COLOR: [#8b5cf6]
      SECONDARY_COLOR: [#ec4899]
      `

    86. Fill in values
    87. Click Apply
    88. Template is created with values replaced:

      `html

      Acme Corp – SuperWidget

      Get started with SuperWidget today for only $99/month!

      `

      Template Best Practices

      Design Guidelines

    89. Mobile-first: Design for mobile, then scale up
    90. Single goal: One clear call-to-action
    91. Fast loading: Optimize images, minimize code
    92. Accessible: Proper contrast, alt text, ARIA labels
    93. Consistent: Use design system (colors, fonts, spacing)
    94. Code Quality

      `css
      / Good – organized, commented /
      / === HERO SECTION === /
      .hero {
      height: 100vh;
      display: flex;
      align-items: center;
      background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
      }

      .hero h1 {
      font-size: clamp(2rem, 5vw, 4rem);
      color: white;
      }

      / === FEATURES SECTION === /
      .features {
      padding: 80px 20px;
      background: #f9fafb;
      }
      `

      Placeholder Content

      Use clear placeholders:

      `html

      [Your Company Name]

      [Replace with hero image]

      XXXX

      image
      `

      Documentation

      Include instructions in template:

      `html

      `

      Community Templates

      Browse Community Library

    95. ShahiLandin → Template Library
    96. Click Community tab
    97. Browse hundreds of free templates
    98. Filter by rating, downloads, category
    99. Download Template

    100. Click template thumbnail
    101. Preview template
    102. Click Download & Install
    103. Template added to your library
    104. Submit Your Template

      Share your designs with community:

    105. Create template
    106. Click Share with Community
    107. Fill in details:
    108. – Name
      – Description
      – Category
      – Tags
      – License (MIT, GPL, etc.)

    109. Upload screenshot
    110. Click Submit for Review
    111. Approved templates appear in Community library
    112. Template Licensing

      Choose appropriate license:

    113. MIT: Free to use, modify, redistribute
    114. GPL: Must share modifications
    115. Creative Commons: Attribution required
    116. Commercial: Purchase required for commercial use
    117. Advanced: Template Hooks

      For developers – extend templates with PHP.

      Register Custom Template

      `php
      // functions.php or plugin

      addfilter(‘shahilandintemplates’, function($templates) {
      $templates[] = [
      ‘id’ => ‘custom-saas-template’,
      ‘name’ => ‘SaaS Landing Page’,
      ‘category’ => ‘SaaS’,
      ‘path’ => getstylesheetdirectory() . ‘/shahilandin-templates/saas-template.json’,
      ‘thumbnail’ => getstylesheetdirectory_uri() . ‘/shahilandin-templates/saas-thumb.jpg’
      ];

      return $templates;
      });
      `

      Template Preprocessing

      Modify template before rendering:

      `php
      addfilter(‘shahilandintemplatehtml’, function($html, $templateid) {
      // Replace placeholders dynamically
      $html = strreplace(‘{{CURRENTYEAR}}’, date(‘Y’), $html);
      $html = strreplace(‘{{SITENAME}}’, get_bloginfo(‘name’), $html);

      return $html;
      }, 10, 2);
      `

      Troubleshooting

      “Template Not Displaying Correctly”

      Causes:

    118. Missing CSS
    119. Conflicting theme styles
    120. JavaScript errors
    121. Solution:

    122. Use Canvas rendering mode (removes theme styles)
    123. Check browser console for errors
    124. Validate HTML/CSS
    125. “Template Variables Not Replacing”

      Cause: Incorrect syntax or variable not defined

      Solution:
      Use double curly braces: {{VARIABLE_NAME}}

      “Template Import Failed”

      Causes:

    126. Invalid JSON
    127. File too large
    128. Version incompatibility
    129. Solution:

    130. Validate JSON at jsonlint.com
    131. Increase PHP upload limit
    132. Update ShahiLandin plugin
    133. “Lost Template After Update”

      Cause: Template stored in plugin directory (overwritten on update)

      Solution:
      Store custom templates in: /wp-content/uploads/shahilandin-templates/

      Summary

      You’ve learned how to:

    134. ✅ Browse and use built-in templates
    135. ✅ Customize template colors, fonts, images
    136. ✅ Modify template layouts and sections
    137. ✅ Create your own custom templates
    138. ✅ Export and import templates
    139. ✅ Use template variables
    140. ✅ Share templates with community
    141. ✅ Apply best practices for template design
    142. Now you can create beautiful, reusable landing page templates!

      Related Tutorials

    143. How to Create Your First Landing Page
    144. How to Optimize Landing Page Performance
    145. Template Builder Feature

Need Help? Check documentation or visit community forums.

Share this article

Was this article helpful?

Help us improve our documentation

Still need help?

Our support team is ready to assist you with personalized guidance for your workspace.

Submit a support ticket