Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add meta tags #42

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from
Draft

feat: add meta tags #42

wants to merge 1 commit into from

Conversation

benjavicente
Copy link
Member

Añade un template base de meta tags. Cada función de cada vista tiene que entregarle al template que título, descripción o imagen quiere mostrar, no el template respectivo con block (como estaba antes).

resolves #41

@agucova
Copy link
Member

agucova commented Jul 29, 2021

El favicon tiene un tamaño correcto como para ser la imagen por defecto?

@benjavicente
Copy link
Member Author

Creo que el favicon no puede ser imagen por defecto y tiene que ser png, jpg o gif.
Lo dejé por mientras para ver si funcionaba el template, en otro commit agrego la imagen.

@benjavicente
Copy link
Member Author

Otra cosa importante antes de seguir esta PR es ver como asignar una variable para los templates especiales (ej: <error-code>.html) que parecen no tener un "controlador" asociado en donde se le debería asignar el título correspondiente. Si no se puede, el commit anterior no creo que pueda funcionar.

@nico-mac
Copy link
Member

Esa descripción no respeta la construida a través del bloque head en algunos casos. Miren como esta en course.html.

@benjavicente
Copy link
Member Author

Me falta cambiar como está implementado la descripción y el título en los templates actuales.

Mi idea con el template que agregué es que simplemente se entregue la información del título, descripción e imagen en el controlador / vista, con valores por defecto, de la forma:

page_info = {"page_title": title, "page_description": description}
render(request, template, {**data, **page_info})

En vez de:

{% block title %} {{ page_title }} {% endblock %}
{% block head %}
<meta name="description" content="{{description}}">
<!-- + los otros tags que faltan -->
{% endblock %}

Entonces, para el caso de course.html, la descripción de los cursos quedía implementado en single_course como:

page_info = {"page_title": course.name, "page_description": course.get_description()}
return render(request, "courses/course.html", {**cached_course, **cached_sections, **page_info})

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Meta!
3 participants