How to Install the Blog Plus Template on Blogger, Step by Step
A complete guide that takes you from uploading the template file to a site running every feature, in three parts: Layout settings, then the Theme Designer, then the User Zone inside the template.
1Before you start: prepare your blog
- Back up your current theme: in your Blogger dashboard, open Theme, click the arrow next to Customize, then choose Backup. Save the file with today’s date in its name.
- Set your blog language: under Settings → Basic → Blog Language. The template reads your blog’s language to translate its interface and set the page direction automatically: pick English and everything runs left to right; pick Arabic and the whole site flips to right to left.
- Have your blog ID ready for license activation: you’ll find it in your Blogger dashboard URL, right after
blogger.com/blog/posts/. - Prepare your logo as a PNG or WebP file with a transparent background, a site icon of at least 32×32, and, if you want one, a 180×180 icon for Apple devices.
2Upload the template file to Blogger
- Open your Blogger dashboard and go to Theme.
- Click the arrow next to the Customize button and choose Restore.
- Select the template’s XML file you received after your purchase and upload it.
- Open your site. You’ll see the activation screen, and that’s normal: the template is waiting for the license token you’ll add in the User Zone (Part 3, in the license section).
Layout settings in Blogger
Layout is Blog Plus’s everyday control panel: it’s where you set up the logo, menus, bars, ads, homepage and footer without touching any code. Open it from Blogger dashboard → Layout; we’ll walk through it from the top of the page to the bottom.
3General rules before you start
- The version bar at the top of Layout shows the template name and version (
Tooliqo: Blog-Plus / V9.1.8). It’s there for identification only and can’t be edited. - Sections locked to a single gadget (such as Site Logo and Sections Menu) don’t accept new gadgets; that’s deliberate, to protect the template’s structure. Sections that show Add a Gadget are yours to use.
- Settings gadgets are written as
key: value, one line per key. A line that starts with#is a comment the template ignores. - The eye icon next to a gadget shows or hides it. Some gadgets use it as their on/off switch; we’ll point them out as we go.
Ad 1 | Hero top are read literally by the template to know where each ad goes. Change only the link, as explained in the ads section.4Site Logo: your logo
Click Edit on the Blog-Plus Template (Header) gadget in the Site Logo section, then type your blog name or upload your logo image. The template loads the logo early, so it appears quickly and doesn’t cause layout shift.
5Links Menu: the top pages bar
A Link List gadget displayed in the colored bar at the top of the site. Add your static pages here: About, Contact, Privacy Policy, Terms and FAQ. AdSense looks for these pages when it reviews your site, so don’t skip them.
The bar’s background and text colors are set in the Theme Designer: pagesBarBg and pagesBarText.
6Sections Menu: the main menu and its submenus
The main menu under the logo. Each item has a title and a link, usually a label link such as /search/label/Label-Name. The menu supports three levels and a highlighted item, using markers you add at the start of the title; visitors never see them:
| Marker | Result |
|---|---|
| No marker | Top-level item |
+ | Sub-item under the top-level item above it |
++ | Third level, under the sub-item above it |
* | Highlights the item in your brand color; combine it with other markers like this: +* |
*Home Tools Technology Templates *Blog-Plus +Explanation File ++Template Explanation ++Template Installation +Licensing File
On desktop, submenus open on hover; on phones, they open inside the side menu.
7Social Links, Follow Us and languages
Social Links: your social profiles
Add the full URL of each profile, starting with https://. The template recognizes the network from the link and adds its icon automatically: Facebook, X, YouTube, Instagram, WhatsApp, Telegram, TikTok, LinkedIn and more. Any network it doesn’t recognize gets a generic icon.
Follow Us (link): the follow button
An HTML gadget holding a single link: your blog’s Blogger follow link. Replace the placeholder with your blog ID:
https://www.blogger.com/followers/follow/YOUR-BLOG-ID
Languages: the language switcher
A Link List shown next to the follow button. The title is the language name, and the link is the address of your site in that language. If your site is in one language only, delete the items and the switcher disappears.
Read alsoTooliqo template languages and how they work8Login Tool: sign-in (Firebase)
This gadget gives your visitors an account through Google or a magic email link, and it powers post ratings and locked download buttons. It only works once you fill in the four keys from your own Firebase project, and the eye icon is its on/off switch:
apiKey: # authDomain: # projectId: # appId: #
The value # means “empty”. Once your Firebase project is set up, copy the values from your web app’s settings and paste them in place of the # signs.
Protected file links aren’t written in the template but in the downloads collection in Firestore; you then call them from a post with a button like this:
<a class="tq-btn" data-tq-file="Blog-Plus-Free" style="cursor:pointer">Download the file</a>
Here Blog-Plus-Free is the document ID in the downloads collection, and that document holds a url field with the file’s link. For an open download, or a members-only one with a direct link, use:
<a class="tlq-cta-btn" data-tq-file="https://example.com/file.zip">Download</a> <a class="tlq-cta-btn" data-tq-lock="1" data-tq-file="https://example.com/file.zip">Download (members)</a>
9Bell Announcement: the announcement bell
A bell icon in the header that opens a short announcement card with two buttons. The eye icon turns the gadget on or off, and the value text: # also hides the bell:
title: Blog Plus - Now Free text: The premium blogging template, free for everyone. link: /2026/09/free-blog-plus.html button: Get it free icon: fa-solid fa-download link2: /p/templates.html button2: See all templates icon2: fa-solid fa-grip style: gradient badge: fa-solid fa-gift
| Key | What it does |
|---|---|
title / text | The card’s title and text |
link / button / icon | First button: its link, label and icon |
link2 / button2 / icon2 | An optional second button |
badge | The large icon at the top of the card |
style | Button style: solid · gradient · outline · soft · dark · white · link |
Icons use Font Awesome names such as fa-solid fa-rocket or fa-brands fa-whatsapp. The red dot on the bell comes back every time you change the title or the text.
10News Ticker Bar: the breaking news ticker
A scrolling bar that shows the titles of your latest posts, configured with a single line:
<div class='tlq-ticker' id='tlq-ticker' data-show='on' data-max='10' data-speed='55'></div>
| Attribute | What it does |
|---|---|
data-show | on shows the bar, off hides it |
data-max | Number of titles shown |
data-speed | Length of one full loop, in seconds: a bigger number means slower movement |
11Post tools: ratings, comments, Google and redirects
Article Rating: post ratings
enabled: true title: Rate this article thanks: Thanks for rating!
enabled: false hides the whole rating box. Ratings need the sign-in gadget turned on to save votes, and the star color comes from the Theme Designer (rateStar).
Comment Form Message: the comments message
Free text shown above the comment form, such as an invitation for readers to share their opinion. Write it in your own language.
Follow on Google bar: following on Google
enabled: true url: https://www.google.com/preferences/source title: subtitle: button: where: post
Leave title, subtitle and button empty and the template writes them in your blog’s language. where accepts post (inside posts), home (on the homepage) or both.
External Links Redirect: redirecting outbound links
enabled: true page: /p/redirect.html protect: true in_post: true new_tab: true delay: 5
| Key | What it does |
|---|---|
enabled | Turns the gadget on (true) or off (false) |
page | Path of the redirect page |
protect | Hides your site’s address from the destination site |
in_post | Applies the redirect to links inside posts |
new_tab | Opens the destination in a new tab |
delay | Countdown seconds before leaving; 0 redirects instantly |
/p/redirect.html (title it redirect first, then rename it however you like after publishing).12The hero area: slider, text, buttons and media
The hero is the first thing visitors see on the homepage. It’s made of five independent sections: Hero · Slider, Hero · Text, Hero · Buttons, Hero · Media and Hero · Custom Ad. Turn on what you need with the eye icon.
Hero · Slider: the slider
<i class='slider-from' data-type='hub' data-label='random' data-number='6' data-speed='5' data-show='on'></i>
| Attribute | What it does |
|---|---|
data-type | Slider style (see the next table), or its number from 1 to 6 |
data-label | A label name, or random for random posts |
data-number | Number of slides |
data-speed | Seconds per slide; 0 stops autoplay |
data-show | on shows the slider, off hides it |
data-tiles | Hub style only: labels for the side tiles, separated by commas |
| No. | data-type | Look |
|---|---|---|
| 1 | classic | A large full-width image with the title on top |
| 2 | mag | The title in a semi-transparent box, magazine style |
| 3 | split | Image on one side, text on the other |
| 4 | cards | A horizontal strip of cards you can swipe |
| 5 | kenburns | A slow zoom across the image |
| 6 | hub | A main slide with side tiles (the default) |
<i class='slider-from' data-type='hub' data-label='recent' data-number='6' data-tiles='Technology,Tools,Tutorials,Templates' data-show='on'></i>
The hero’s size and render timing are set in the Theme Designer: sliderSize and heroDefer.
Hero · Text: the text
Off by default. Turn it on with the eye icon and write your headline and description. The grad class paints the text in your brand gradient:
<h2><span class="grad">Welcome to my blog</span></h2> <p class="lead">A short description of what your blog offers.</p>
Hero · Buttons: the buttons
<a class="btn btn-primary btn-lg" href="#latest-articles"><i class="fa-solid fa-compass"></i> <span>Browse Articles</span></a> <a class="btn btn-primary btn-lg" href="#HTML16"><i class="fa-solid fa-envelope-open-text"></i> <span>Subscribe</span></a>
The #latest-articles link scrolls down to your latest posts, and #HTML16 scrolls to the newsletter box.
Hero · Media and Hero · Custom Ad
Hero · Media holds an image or banner as wide as the hero (off by default), and Hero · Custom Ad holds your own ad code in the hero area.
13Homepage areas and the posts-from code
| Layout section | What goes in it | Limit |
|---|---|---|
| Above Article | A gadget shown above the content | 5 |
| Featured strip (Homepage, full width) | A full-width strip of posts | 6 |
| Above-content area (Homepage) | A welcome message or a gadget above the posts | 3 |
| Homepage Widgets (Posts / Labels / Featured) | Blogger gadgets and posts-from sections | 10 |
| Homepage Bars — drag to reorder | The homepage section bars, reordered by dragging | 20 |
| Below Articles (under posts) | Latest comments and the featured post | — |
Most of these sections are built with a single code, posts-from, which you place in an HTML/JavaScript gadget:
<i class='posts-from' data-type='grid' data-number='4' data-label='Templates' data-title='Unique Templates'></i>
| Attribute | What it does |
|---|---|
data-type | Display style: lead · grid · list · cover · mosaic · carousel · random |
data-label | The label name exactly as it appears in Blogger |
data-number | Number of posts |
data-title | Section title; remove it for a section without a title |
data-desc | A short description under the title |
data-index | The post number the section starts from |
<i class='posts-from' data-type='mosaic' data-number='5' data-label='Tutorials' data-title='Latest Tutorials'></i> <i class='posts-from' data-type='carousel' data-number='8' data-label='Technology' data-title='Technology World'></i> <i class='posts-from' data-type='list' data-number='4' data-label='Tools' data-title='Latest Tools'></i> <i class='posts-from' data-type='random' data-number='4' data-title='Posts you might like'></i>
data-label doesn’t match its name in Blogger, capital letters and hyphens included.Latest comments
<i class="latest-comments" data-number="3"></i>
Newsletter (Homepage Bars)
The Subscribe to our newsletter gadget is a form that sends email addresses to Google Forms. Create a form with an email field, then replace the action URL and the entry number with your form’s values:
<form action="https://docs.google.com/forms/d/e/YOUR_FORM_ID/formResponse" id="news-form" method="POST"> <input type="email" name="entry.YOUR_FIELD_ID" required="required"/> <button type="submit">Subscribe now</button> </form>
14The sidebar
| Section | What it does |
|---|---|
| Sidebar · Top bar (3 tools) | Three gadgets at the top of the sidebar; it holds the translate gadget by default |
| Sidebar | Your gadgets: social, most read, labels, archive, search… |
| Sidebar · AdSense 1 (top) / 2 (bottom) | Two ad slots, at the top and bottom of the sidebar |
The template restyles Blogger gadgets inside the sidebar so they match the design, and turns the archive into a dropdown. Whether the sidebar shows on the homepage, on pages and on phones is set in the Theme Designer (Part 2).
15The ad system in Layout
AdSense ads are managed from three Link List gadgets. In each item, leave the title as it is and put the value in the link field:
| Gadget | What to put in the link field |
|---|---|
| AdSense · Publisher ID | Your publisher ID, in the form ca-pub-XXXXXXXXXXXXXXXX |
| AdSense · Home Slots (5) | The ad unit number (data-ad-slot) for each homepage slot |
| AdSense · Post Slots (5) | The ad unit number for each slot inside posts |
| Homepage slots | Post slots |
|---|---|
Ad 1 | Hero top | Ad 1 | Top (above article) |
Ad 2 | Above content | Ad 2 | Middle (inside article) |
Ad 3 | Middle (between posts) | Ad 3 | Below article |
Ad 4 | Before footer | Ad 4 | Below related |
Ad 5 | Sidebar | Ad 5 | Above comments |
A value of 0 means the slot is off, and an off slot leaves no empty gap. The AdSense library only loads after the visitor’s first interaction, so it doesn’t slow down page load.
16The footer and the contact form
| Section | Suggested content |
|---|---|
| About column (Footer) | A short introduction to your site and your social icons |
| Quick Links column (Footer) | Links to your key pages |
| Footer Categories | Your main sections or pages |
| Contact column (Footer) | Email, WhatsApp and your contact page |
| Site Credit (editable sentence only) | The editable sentence in the credit line |
| Contact Form Source (do not remove) | The contact form’s source: don’t delete it |
The credit line at the very bottom of the site is protected and can’t be removed; what you edit in the Site Credit gadget is only the editable sentence.
Showing the contact form on a page
Create a “Contact” page and, in the page’s HTML view, put this line where you want the form to appear:
<div class="tq-contactus"></div>
17Gadgets that work without showing in Layout
Some gadgets are deliberately hidden from the Layout editor to keep it uncluttered, and they work with their default values as soon as the template is installed:
| Gadget | Default value |
|---|---|
| Likes & Favorites | enabled: on: favorites and likes are on |
| Copy Protection | ON: copy protection is on, except for code blocks and input fields |
| In-post Link Buttons | enabled: true · shape: solid · scope: standalone |
To change one of these values, open Theme → Edit HTML, search for the value itself (for example scope: standalone), edit it and save. For the link buttons, shape accepts solid or outline, and scope accepts standalone (links that sit alone on their own line) or all (every link).
Theme Designer: 43 options in 14 groups
18How to open it and read its options
From your Blogger dashboard: Theme → Customize → Advanced. You’ll find a dropdown with fourteen groups, and every change shows up in the preview right away, before you save.
1px is the first choice and 2px the second, and the description next to each option explains what it does.19Colors, font and width
| Group | Option | What it does | Value |
|---|---|---|---|
| Brand Colors | brand1 | Primary color: start of the gradient | #0B8043 |
brand2 | Secondary color: middle of the gradient | #41B375 | |
brand3 | Accent color: end of the gradient | #ffb400 | |
| Typography | bodyFont | Site font. The system font needs no external download and is the fastest | system-ui 16px |
| Layout | contentMaxWidth | Maximum content width, from 980px to 1480px | 1240px |
The three brand colors are the template’s most important options: they build the gradient used in headings, buttons, underlines and view icons. Change just these three and your whole site takes on a new identity.
Free toolColor Code Studio, to pick your brand colors20The header, light and dark surfaces
| Group | Option | What it does | Value |
|---|---|---|---|
| Header and Menus | pagesBarBg | Background of the top pages bar | #0066ff |
pagesBarText | Pages bar text | #ffffff | |
sectionsBarBg | Sections bar background | #ffffff | |
sectionsBarText | Sections bar text | #0b1220 | |
sectionsHoverBg | Item background on hover | #b7e1cd | |
sectionsHoverText | Item text on hover | #059669 | |
| Light Mode Surfaces | bgPage | Page background | #f7f8fb |
bgElev | Cards and raised surfaces | #ffffff | |
textColor | Main text | #0b1220 | |
textMuted | Muted text: dates and descriptions | #475569 | |
borderColor | Borders and dividers | #e6e9ef | |
| Dark Mode Surfaces | bgPageDark | Page background in dark mode | #0b1220 |
bgElevDark | Cards in dark mode | #0f172a | |
bgSoftDark | Soft surfaces in dark mode | #111a2e |
pagesBarBg light, make pagesBarText dark. White text on a light background is hard to read and lowers your accessibility score.21The homepage
| Group | Option | Choices | Value |
|---|---|---|---|
| Homepage Layout | sliderSize | 1px full-width hero · 2px compact | 2px |
heroDefer | 1px renders immediately · 2px on first interaction (faster) | 2px | |
| Homepage Section Titles | toolBarBg | Background of each section’s title bar | #f7f8fb |
toolBarText | Section title text | #0b8043 | |
| Homepage Frames | homeCardBg | Background of cards and bars | #ffffff |
homeCardBorder | Borders of cards and bars | #e6e9ef |
22The sidebar
| Option | Choices | Value |
|---|---|---|
sidebar.width | Sidebar width, from 260px to 420px | 330px |
sidebarHome | On the homepage: 1px show · 2px hide | 1px |
sidebarPage | On static pages: 1px show · 2px hide | 2px |
sidebarMobile | On phones: 1px below the content · 2px hide | 2px |
Label pages and the “Load more” page always display full width, with no sidebar, whatever these settings say.
23Posts, the author box and site icons
| Group | Option | Choices | Value |
|---|---|---|---|
| Article Title and Headings | titleStyle | 1px plain title · 2px inside a frame in your brand color | 2px |
titleColor | Post title color | #0b1220 | |
h2Style | 1px gradient bar behind headings · 2px underline | 1px | |
| Article Boxes and Buttons | tocShow | 1px show the table of contents · 2px hide it | 1px |
pnStyle | Next/previous: 1px in your brand color · 2px in the two colors below | 1px | |
pnBg | Next/previous background with 2px | #e6f4ff | |
pnBorder | Next/previous border with 2px | #B7E1CD | |
linkBtnBg | Color of the link buttons inside posts | #0066ff | |
linkBtnText | Link button text | #e6e9ef | |
rateStar | Color of the active rating star | #ffb400 | |
| Author Box | authorBoxShow | 1px show the author box · 2px hide it | 1px |
authorBoxAccent | Author name color | #0b1220 | |
| Site Icons | faviconUrl | URL of your PNG site icon; empty means the built-in icon | Empty |
appleTouchIconUrl | URL of the 180×180 icon for Apple devices | Empty |
The author box fills itself from your Blogger profile: photo, name and bio. Update your profile and the box shows exactly what you want.
24Ready-made recipes
| You want | Change |
|---|---|
| A faster site | heroDefer: 2px, and keep bodyFont on the system font |
| A reading focus | sidebarHome: 2px · titleStyle: 1px |
| A big, striking hero | sliderSize: 1px |
| A completely new identity | brand1, brand2 and brand3, nothing else |
| A sidebar on phones | sidebarMobile: 1px |
The User Zone inside the template
25Where to find it, and its golden rule
The User Zone is an open block at the top of the template file, split into ten numbered slots, that gathers everything specific to your site: the license, verification codes, AdSense, analytics and your own styles. Open Theme → Edit HTML, press Ctrl + F (Cmd + F on a Mac) and search for:
TOOLIQO USER ZONE
The zone starts with the line <!-- TOOLIQO USER ZONE --> and ends with <!-- END USER ZONE -->.
YOUR CODE with your value. Don’t delete the commas or the quotes around the values, and don’t edit anything outside the zone.26[1] THEME LICENSE ACTIVATION: activating your license
- Open the activation portal and sign in with the email you used to buy.
- Enter your blog ID and copy the token the portal gives you.
- In Edit HTML, search for
THEME LICENSE ACTIVATIONand replace the text between the quotes with your token:
window.TLQ_LICENSE_TOKEN = 'Paste your license token here';
Save the theme and refresh your site: the activation screen disappears. The token is permanent and tied to your blog and your email.
| What you see | What it means |
|---|---|
| The activation screen still shows | The token is incomplete or belongs to another blog: check that the blog ID in the portal matches yours |
| The preview and the Layout editor work without a token | Normal: they’re exempt from the check to make setup easier |
| The template stopped working after a while | The token was revoked; contact support |
27[2] SITE VERIFICATION: verification codes
Six ready-made tags. Put your code in place of YOUR CODE only in the tags you need, and leave the rest as they are:
<meta content='YOUR CODE' name='google-site-verification'/> <meta content='YOUR CODE' name='google-adsense-account'/> <meta content='YOUR CODE' name='msvalidate.01'/> <meta content='YOUR CODE' name='yandex-verification'/> <meta content='YOUR CODE' name='p:domain_verify'/> <meta content='YOUR CODE' name='dmca-site-verification'/>
| Tag | Service |
|---|---|
google-site-verification | Google Search Console |
google-adsense-account | Linking your site to your AdSense account |
msvalidate.01 | Bing Webmaster Tools |
yandex-verification | Yandex Webmaster |
p:domain_verify | |
dmca-site-verification | DMCA |
28[3] DEFAULT IMAGES: fallback images
window.TLQ_USER.FALLBACK_IMAGE="YOUR CODE",window.TLQ_USER.SHARE_IMAGE="YOUR CODE"
| Variable | What it does |
|---|---|
FALLBACK_IMAGE | Image shown for posts that have none. Leave it as is and the template shows a built-in placeholder that costs no network request |
SHARE_IMAGE | Default image for social sharing on pages without one |
Use a full URL starting with https://. Suggested size: 1200×630, in WebP or JPG, with no small text that might get cropped.
29[4] ADSENSE ID and [6] AUTO ADS
window.TLQ_USER.ADSENSE_CLIENT="YOUR CODE"
Enter only your publisher ID, in the form ca-pub-XXXXXXXXXXXXXXXX, not the long AdSense code. The template builds the code itself and loads the library after the visitor’s first interaction.
Auto ads are off by default. To turn them on, change !1 to true in slot [6]:
window.TLQ_USER.AUTO_ADS=true
30[5] ANALYTICS: analytics
window.TLQ_USER.ANALYTICS_ID="YOUR CODE",window.TLQ_USER.GTM_ID="YOUR CODE",window.TLQ_USER.CLARITY_ID="YOUR CODE"
| Variable | Format |
|---|---|
ANALYTICS_ID | Google Analytics 4 ID, in the form G-XXXXXXXXXX |
GTM_ID | Google Tag Manager ID, in the form GTM-XXXXXXX |
CLARITY_ID | Your Microsoft Clarity project ID |
All optional: anything left on YOUR CODE doesn’t load. Filled-in IDs load after the visitor’s first interaction or when the browser is idle, so they don’t slow down page load.
31[7] SOCIAL META: share cards
window.TLQ_USER.FB_APP_ID="YOUR CODE",window.TLQ_USER.TWITTER_SITE="YOUR CODE"
FB_APP_ID is your Facebook app ID if you have one, and TWITTER_SITE is your X handle, in the form @username. Both are optional.
32[8] FEATURE SWITCHES: feature switches
window.TLQ_USER.CLEAN_MOBILE_URL=!0,window.TLQ_USER.READING_BAR=!0,window.TLQ_USER.BACK_TO_TOP=!0
In the minified code, !0 means “on” and !1 means “off”; you can write true and false instead.
| Key | What it does | Default |
|---|---|---|
CLEAN_MOBILE_URL | Removes ?m=1 from mobile URLs in the address bar | On |
READING_BAR | Reading progress bar at the top of posts | On |
BACK_TO_TOP | Back-to-top button | On |
window.TLQ_USER.READING_BAR=false
33[9] CUSTOM CSS and [10] CUSTOM HEAD CODE
Put your own styles between the style tags in slot [9], instead of editing the template code directly:
<style>
.post-body{font-size:17px}
</style>Slot [10] is disabled inside a comment and is meant for any extra code in the page head. Move what you need out of the comment, or add your own code after the comment’s last line:
<!-- [10] CUSTOM HEAD CODE <meta content='YOUR CODE' name='custom-meta'/> <link href='https://example.com/custom.css' rel='stylesheet'/> -->
downloads collection in Firebase.34Pre-launch checklist
- A backup of your old theme, saved with its date.
- Your license token in [1], and the activation screen is gone.
- The verification codes you need in [2], and your publisher ID in [4] or in the Layout gadget.
- Logo, menus and social links set up in Layout.
- The three brand colors match your identity, and the top bar’s contrast is readable.
- Every homepage section shows real posts, and the label names match.
- About, Contact and Privacy pages are published, plus the redirect page if you turned that gadget on.
- You’ve tested the site on desktop and on a phone, in both light and dark mode.