El que el seu empleat sap abans que construeix qualsevol cosa

Qualsevol pot apuntar un model a un lloc web. Aquestes són les regles que s' aplica a cada pàgina, per què cada un existeix, i que d'ells impedeixen publicar- la en comptes d' avisar- lo.

Cada regla de sota va ser pagat per un incident en un lloc on s' executa el penya-segat de classificació, una traducció trencada, una pàgina que renderitza el seu propi codi font. No s' assumeix que la millor pràctica; estem escrivint el que ja ha anat malament, de manera que no va malament en el vostre lloc.

Regles que bloquegen una publicació a la dreta: 8 de 12. Es torna una pàgina bloquejada a l'empleat amb la raó, i ho intenta de nou. No publica i us adverteixà després.

1. One page, one subject

Blocs que publiquen

Exactly one <h1>. A descriptive <title> of 15-60 characters.

Per què: Title is the strongest per-page signal Google has. Google rewrites titles for the SERP most of the time, but the signal it forms from yours still affects ranking, and a generic or duplicated title reads as a quality problem.

2. A description written for a human

Avisos

A meta description of 140-158 characters, unique to the page.

Per què: Description does not rank the page, it decides whether anyone clicks it. Too short wastes the snippet; too long truncates mid-sentence.

3. No shared body text, ever

Blocs que publiquen

Every page gets body copy and FAQ answers written for that page. Never a shared template with a noun swapped in.

Per què: This is the one that costs months. A site we run shipped ~1700 pages on one generic FAQ body and a site-level quality classifier suppressed the whole domain — pages still indexed, ranking gone, no manual action to appeal. Recovery ran on core-update timescale.

4. Absolute canonical, paired with hreflang

Blocs que publiquen

Every page self-canonicalises with an absolute URL. Any hreflang cluster ships alongside that canonical, also absolute.

Per què: Relative hrefs are silently dropped. hreflang without a self-canonical fills the index report with "Duplicate without user-selected canonical" — 56,801 pages on one site we run.

5. Markup may only claim what the page shows

Blocs que publiquen

Structured data mirrors the visible text exactly. Schema goes on the page types that earn a rich result, not on everything.

Per què: Schema is not a general ranking input and not required for AI search -- Google says so directly. Markup that claims a price or a question the page never shows is a violation that can earn a manual action.

6. Django comments are {% comment %}

Blocs que publiquen

Never {# #}. Not even on one line.

Per què: Django's template lexer regex has no DOTALL flag, so {# #} only closes on its own line. A multi-line one renders as visible page text, and if it contains a {% %} substring the lexer treats it as a real tag and every render crashes. Both have happened in production.

7. Positional {0} slots in translatable strings

Blocs que publiquen

Any string that will be machine-translated uses {0}, {1} — never {name}.

Per què: MT engines translate or transliterate the word inside the braces, or drop a brace entirely. A numeric slot has no word to translate and survives intact. This silently broke about 10% of non-English rows on one site before anyone noticed.

8. Nothing is indexable until it is finished

Blocs que publiquen

Pages ship noindex. Indexing is a deliberate opt-in by the owner, per site.

Per què: These sites share a wildcard domain. One spam tenant indexed on that wildcard damages every other tenant on it, and a half-finished page indexed on day one takes months to undo.

9. Build the thing, do not describe the thing

Avisos

A page either does something useful or says something specific. A page that only describes a tool is not a page.

Per què: Thin wrappers around someone else's API are the clearest signal a quality classifier has. Real utility is what survives a core update.

11. Alt text and intrinsic dimensions on every image

Avisos

Every <img> has alt text and explicit width/height.

Per què: Alt text is an accessibility requirement first and an indexing signal second. Missing dimensions cause layout shift, which is a Core Web Vitals failure on mobile — and mobile is what gets indexed.

12. Retired URLs return 410, verified

Blocs que publiquen

A removed page returns 410 Gone, confirmed by an actual request after deploy.

Per què: A 404 lingers as a soft-404 for months; a 410 deindexes cleanly. And per-view dispatch often intercepts the request before the 410-returning view is ever reached, so the check has to be a real HTTP request, not a code read.

Per què aquesta és una guia de l'interI i no una guia d' estil

Una regla que només viu en una instrucció és un suggeriment que el model segueix la majoria de vegades i en silenci no fa la resta, i que trobeu tres mesos més tard en un informe de trànsit. Així que aquestes executeu com a codi, després de que la pàgina s' escrigui i abans que vagi a viure. Una pàgina que falla en una regla de bloqueig es retorna amb la raó i es torna a escriure. El resultat està en el rebut de qualsevol manera, de manera que podreu veure quins comprovats han fugit.

I no hi ha res indexat fins que ho diguis.

Cada lloc no indexa. No com a predeterminat heu de descobrir que l' ordre linter força, perquè aquests llocs comparteixen un domini i un altre altre veí dolent fa mal a tothom. Quan el vostre lloc val la pena trobar, poseu la indexació en els arranjaments i comenceu a ser arrossegats.

El resultat de l'inter per a cada pàgina està gravada al seu rebut i els rebuts estan disponibles sobre l' API.

Construeix lliure la meva empresa