SEO.
npx -y skills add addyosmani/web-quality-skills --skill seo --agent claude-codeОптимизация поисковой видимости на основе Lighthouse SEO аудитов и руководств Google Search. Охватывает технический SEO, on-page оптимизацию и структурированные данные. Используйте при запросах: «улучшить SEO», «мета-теги», «добавить structured data», «sitemap», «оптимизация для поисковиков».
| Фактор | Влияние | Этот скилл |
|---|---|---|
| Качество и релевантность контента | ~40% | Частично (структура) |
| Ссылки и авторитет | ~25% | ✗ |
| Технический SEO | ~15% | ✓ |
| Page experience (Core Web Vitals) | ~10% | См. core-web-vitals skill |
| On-page SEO | ~10% | ✓ |
# robots.txt
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /api/
Disallow: /private/
# Не блокировать ресурсы, нужные для рендеринга
Sitemap: https://example.com/sitemap.xml
<!-- Noindex для конкретных страниц -->
<meta name="robots" content="noindex, nofollow">
<!-- Контроль сниппетов -->
<meta name="robots" content="max-snippet:150, max-image-preview:large">
Canonical URL — предотвращает проблемы дублированного контента:
<link rel="canonical" href="https://example.com/current-page">
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://example.com/</loc>
<lastmod>2024-01-15</lastmod>
<changefreq>daily</changefreq>
<priority>1.0</priority>
</url>
</urlset>
Максимум 50 000 URL или 50 МБ на сайтмап. Включать только canonical, индексируемые URL.
✅ Хорошо:
https://example.com/products/blue-widget
https://example.com/blog/how-to-use-widgets
❌ Плохо:
https://example.com/p?id=12345
https://example.com/products/item/category/subcategory/blue-widget-2024-sale
Правила: дефисы вместо подчёркиваний, только строчные, менее 75 символов, ключевые слова органично, всегда HTTPS.
<!-- ❌ Слишком длинный (обрезается в поиске) -->
<title>Buy Blue Widgets Online - Best Quality Blue Widgets at Lowest Prices</title>
<!-- ✅ Оптимальный (50-60 символов) -->
<title>Blue Widgets — Free Shipping | WidgetCo</title>
<!-- ❌ Слишком длинное -->
<meta name="description" content="[более 160 символов]">
<!-- ✅ Оптимальный (120-160 символов) -->
<meta name="description" content="Shop premium blue widgets with free shipping. 500+ styles, bulk discounts, 30-day returns. Order by 2 PM for same-day dispatch.">
<!-- ❌ Пропуск уровней -->
<h1>Page Title</h1>
<h3>Section</h3>
<!-- ✅ Правильная иерархия -->
<h1>Page Title</h1>
<h2>Major Section</h2>
<h3>Subsection</h3>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Заголовок статьи",
"author": { "@type": "Person", "name": "Автор" },
"datePublished": "2024-01-15",
"dateModified": "2024-01-20",
"description": "Описание статьи"
}
</script>
Другие типы по назначению страницы: Product, FAQPage, Organization, WebSite, BreadcrumbList.
<!-- Open Graph -->
<meta property="og:title" content="Заголовок страницы">
<meta property="og:description" content="Описание 200 символов">
<meta property="og:image" content="https://example.com/og-image.jpg">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
<meta property="og:url" content="https://example.com/page">
<meta property="og:type" content="article">
<!-- Twitter Card -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="Заголовок">
<meta name="twitter:image" content="https://example.com/twitter-image.jpg">
<h1> на каждой странице с ключевым словом