Subject: Re: [bug#43803] website: theme: Allow adding noindex meta element to pages.

From: Luis Felipe <[email-masked]>
Date: Mon, 05 Oct 2020 18:41:32 +0000

Sorry, I sent an answer only to Othacehe by mistake. Here it is again.

‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Monday, October 5, 2020 1:18 PM, Mathieu Othacehe <[email-masked]> wrote:

> Hello,
> > -                  (noindex? #false)
> You can use #f instead.

Yes, I know :)

> This means that indexing will be disabled for every single page?

No. But, now that I read your question I'm confused by the keyword. So how about renaming it to "index?". Patch attached.
From 367ce04bf6c1d138eff6c678df536328e60cdb7e Mon Sep 17 00:00:00 2001
From: Luis Felipe <[email-masked]>
Date: Mon, 5 Oct 2020 13:10:27 -0500
Subject: [PATCH] website: theme: Allow adding the noindex meta element to
 pages.

This change allows to tell Internet robots not to index some pages.

* website/apps/base/templates/theme.scm (theme): New parameter INDEX?
---
 website/apps/base/templates/theme.scm | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/website/apps/base/templates/theme.scm b/website/apps/base/templates/theme.scm
index 4734ee5..05d801a 100644
--- a/website/apps/base/templates/theme.scm
+++ b/website/apps/base/templates/theme.scm
@@ -1,4 +1,5 @@
 ;;; GNU Guix web site
+;;; Public domain 2020 Luis Felipe López Acevedo
 ;;; Initially written by sirgazil who waives all
 ;;; copyright interest on this file.
 
@@ -14,6 +15,7 @@
 		(title '())
 		(description "")
 		(keywords '())
+                (index? #true)
                 (active-menu-item (C_ "website menu" "About"))
 		(css '())
 		(scripts '())
@@ -42,6 +44,11 @@
      A list of keyword strings that will be used as the value for
      the keywords meta element of the document.
 
+   INDEX? (boolean)
+     Indicate whether the page should be indexed by Internet robots,
+     such as search engine robots. If not provided, it defaults to
+     true.
+
    ACTIVE-MENU-ITEM (string)
      The label of the menu item in the navigation bar that should be
      highlighted to indicate the current section of the website that
@@ -79,6 +86,10 @@
       (meta (@ (name "keywords") (content ,(string-join keywords ", "))))
       (meta (@ (name "description") (content ,description)))
       (meta (@ (name "viewport") (content "width=device-width, initial-scale=1.0")))
+      ;; Info for Internet robots.
+      ,(if index?
+           ""
+           '(meta (@ (name "robots") (content "noindex"))))
       ;; Menu prefetch.
       (link (@ (rel "prefetch") (href ,(guix-url "menu/index.html"))))
       ;; Base CSS.
-- 
2.28.0