DataTalksClub / DataTalksClub/datatalksclub.github.io

Reusable CTA banners

Open
#66 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
381
Forks
42
PR merge metrics
No merged PRs in 30d

Description

Define a reusable include with variants (banner / sidebar / inline), pull content from either
(a) a named CTA in _data/ctas.yml
b) page-level overrides in front matter.

Then drop the include where you want it (top, sidebar, inline). This gives you global control + page-specific flexibility.

Steps:

1) Create a CTA catalog

_data/ctas.yml: reusable, named CTAs you can reference across pages.

data_engineering_zoomcamp:
  title_text: "Start Data Engineering Zoomcamp"
  description: Want to learn data engineering? DE Zoomcamp ...
  cta_text: "Register now"
  url: "/zoomcamp/"
  target: "_self"
2) A single include that supports variants + overrides

_includes/cta.html

3) Minimal styles (three variants)

Add to your CSS:


/* Banner (top) */

/* Sidebar (card-like) */

/* Inline (within article body) */
4) How to place CTAs
5) Per-page overrides (front matter)

If a page needs a unique CTA without inventing a new catalog entry:

---
title: "ML Zoomcamp: Module 5"
cta:
---
6) Define which pages should have which CTAs

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the requested _data/ctas.yml and _includes/cta.html paths, then locate the site's CSS and the pages that should receive CTAs. Done means the catalog, banner/sidebar/inline variants, page-level overrides, and page placement rules described in the issue are defined and usable.

Written by the indexing model from the issue text.

Assessment

Tech stack
css, html, jekyll, yaml
Domain
content, web-dev
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.