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

i18n(ru): Add content-collections.mdx translation #7906

Merged
merged 5 commits into from
Apr 16, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Update links
  • Loading branch information
mearashadowfax committed Apr 16, 2024
commit 4218fbf1a6bad9041900939189e998a7475be116
2 changes: 1 addition & 1 deletion src/content/docs/ru/guides/content-collections.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -572,7 +572,7 @@ const { remarkPluginFrontmatter } = await blogPost.render();
<p>{blogPost.data.title} — {remarkPluginFrontmatter.readingTime}</p>
```

<RecipeLinks slugs={["en/recipes/reading-time" ]}/>
<RecipeLinks slugs={["ru/recipes/reading-time" ]}/>

Конвейеры remark и rehype запускаются только после рендеринга содержимого, что объясняет, почему `remarkPluginFrontmatter` доступен только после вызова `render()` для записи содержимого. В отличие от этого, `getCollection()` и `getEntry()` не могут возвращать эти значения напрямую, потому что они не рендерят ваш контент.

Expand Down
2 changes: 1 addition & 1 deletion src/content/docs/ru/guides/markdown-content.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -474,7 +474,7 @@ export default {
### Программное изменение frontmatter

:::note
Если вы используете [коллекции контента](/ru/guides/content-collections/), обратитесь к разделу ["Изменение Frontmatter с помощью Remark"](/ru/guides/content-collections/#modifying-frontmatter-with-remark).
Если вы используете [коллекции контента](/ru/guides/content-collections/), обратитесь к разделу ["Изменение Frontmatter с помощью Remark"](/ru/guides/content-collections/#модификация-frontmatter-с-помощью-remark).
:::

Вы можете добавить свойства frontmatter во все ваши файлы Markdown и MDX с помощью плагина [remark или rehype](#плагины-markdown).
Expand Down
2 changes: 1 addition & 1 deletion src/content/docs/ru/guides/upgrade-to/v3.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -370,7 +370,7 @@ export default defineConfig({

#### Что делать?

Чтобы продолжать помечать некоторые страницы в вашем проекте как черновики, [перейдите на коллекции контента](/ru/guides/content-collections/#migrating-from-file-based-routing) и [отфильтруйте страницы вручную](/ru/guides/content-collections/#filtering-collection-queries) со свойством `draft: true` frontmatter вместо этого.
Чтобы продолжать помечать некоторые страницы в вашем проекте как черновики, [перейдите на коллекции контента](/ru/guides/content-collections/#переход-от-маршрутизации-на-основе-файлов) и [отфильтруйте страницы вручную](/ru/guides/content-collections/#фильтрация-запросов-к-коллекции) со свойством `draft: true` frontmatter вместо этого.

### Утратило актуальность: возврат простого объекта в конечных точках

Expand Down
2 changes: 1 addition & 1 deletion src/content/docs/ru/guides/upgrade-to/v4.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -304,7 +304,7 @@ const { id } = Astro.params;

Если вы использовали устаревшую опцию `markdown.drafts`, то теперь вы должны удалить ее, так как она больше не существует.

Чтобы продолжать помечать некоторые страницы в проекте как черновики, используйте [миграцию в коллекции контента](/ru/guides/content-collections/#migrating-from-file-based-routing) и [ручную фильтрацию страниц](/ru/guides/content-collections/#filtering-collection-queries) со свойством `draft: true` frontmatter вместо этого.
Чтобы продолжать помечать некоторые страницы в проекте как черновики, используйте [миграцию в коллекции контента](/ru/guides/content-collections/#переход-от-маршрутизации-на-основе-файлов) и [ручную фильтрацию страниц](/ru/guides/content-collections/#фильтрация-запросов-к-коллекции) со свойством `draft: true` frontmatter вместо этого.

### Удалено: `getHeaders()`

Expand Down
18 changes: 9 additions & 9 deletions src/content/docs/ru/reference/api-reference.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -1096,7 +1096,7 @@ export const collections = { blog };

`schema` — необязательный объект Zod для настройки типа и формы frontmatter документа для коллекции. Каждое значение должно использовать [валидатор Zod](/~https://github.com/colinhacks/zod).

[Примеры использования см. в руководстве по `коллекциям контента`](/ru/guides/content-collections/#defining-a-collection-schema).
[Примеры использования см. в руководстве по `коллекциям контента`](/ru/guides/content-collections/#определение-схемы-коллекции).

### `reference()`

Expand Down Expand Up @@ -1127,7 +1127,7 @@ const authors = defineCollection({
export const collections = { blog, authors };
```

[Примеры использования см. в руководстве `Коллекции контента`](/ru/guides/content-collections/#defining-collection-references).
[Примеры использования см. в руководстве `Коллекции контента`](/ru/guides/content-collections/#определение-ссылок-на-коллекции).

### `getCollection()`

Expand All @@ -1151,7 +1151,7 @@ const draftBlogPosts = await getCollection('blog', ({ data }) => {
---
```

[Примеры использования см. в руководстве `Коллекции контента`](/ru/guides/content-collections/#querying-collections).
[Примеры использования см. в руководстве `Коллекции контента`](/ru/guides/content-collections/#запрос-к-коллекциям).

### `getEntry()`

Expand Down Expand Up @@ -1180,7 +1180,7 @@ const enterpriseCaptainProfile = await getEntry(enterprisePost.data.captain);
---
```

Примеры [запросов к записям коллекции](/ru/guides/content-collections/#querying-collections) см. в руководстве `Коллекции контента`.
Примеры [запросов к записям коллекции](/ru/guides/content-collections/#запрос-к-коллекциям) см. в руководстве `Коллекции контента`.

### `getEntries()`

Expand All @@ -1191,7 +1191,7 @@ const enterpriseCaptainProfile = await getEntry(enterprisePost.data.captain);
- `(Array<{ collection: string, id: string }>) => Array<CollectionEntry<collection>>`
- `(Array<{ collection: string, slug: string }>) => Array<CollectionEntry<collection>>`

`getEntries()` — это функция, которая извлекает несколько записей коллекции из одной и той же коллекции. Это полезно для [возврата массива ссылающихся записей](/ru/guides/content-collections/#defining-collection-references), чтобы получить доступ к связанным с ними свойствам `data`, `body` и `render()`.
`getEntries()` — это функция, которая извлекает несколько записей коллекции из одной и той же коллекции. Это полезно для [возврата массива ссылающихся записей](/ru/guides/content-collections/#определение-ссылок-на-коллекции), чтобы получить доступ к связанным с ними свойствам `data`, `body` и `render()`.

```astro
---
Expand Down Expand Up @@ -1223,7 +1223,7 @@ const enterprise = await getEntryBySlug('blog', 'enterprise');
---
```

[Примеры использования см. в руководстве `Коллекции контента`](/ru/guides/content-collections/#querying-collections).
[Примеры использования см. в руководстве `Коллекции контента`](/ru/guides/content-collections/#запрос-к-коллекциям).

### Тип элемента коллекции

Expand Down Expand Up @@ -1263,7 +1263,7 @@ import type { CollectionEntry } from 'astro:content';
**Доступно только для коллекций:** `type: 'content'`
**Пример типа:** `'entry-1' | 'entry-2' | ...`

Готовый к использованию в URL слаг для документов Markdown или MDX. По умолчанию используется `id` без расширения файла, но может быть переопределено установкой [свойства `slug`](/ru/guides/content-collections/#defining-custom-slugs) в frontmatter файла.
Готовый к использованию в URL слаг для документов Markdown или MDX. По умолчанию используется `id` без расширения файла, но может быть переопределено установкой [свойства `slug`](/ru/guides/content-collections/#определение-пользовательских-slugов) в frontmatter файла.

#### `body`

Expand Down Expand Up @@ -1292,7 +1292,7 @@ const { Content, headings, remarkPluginFrontmatter } = await entry.render();
---
```

[Пример использования см. в руководстве `Коллекции контента`](/ru/guides/content-collections/#rendering-content-to-html).
[Пример использования см. в руководстве `Коллекции контента`](/ru/guides/content-collections/#рендеринг-контента-в-html).

### Другие типы коллекций контента

Expand Down Expand Up @@ -1558,7 +1558,7 @@ import myImage from "../assets/my_image.png"; // Изображение имее

### `<Content />`

Общий компонент, используемый для отображения содержимого [записи коллекции контента](/ru/guides/content-collections/#what-are-content-collections).
Общий компонент, используемый для отображения содержимого [записи коллекции контента](/ru/guides/content-collections/#что-такое-коллекции-контента).

Сначала запросите одну или несколько записей с помощью `getCollection()` или `getEntry()`. Затем функция `entry.render()` может вернуть компонент `<Content />` для использования в шаблоне файла `.astro`.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ githubURL: /~https://github.com/withastro/astro/blob/main/packages/astro/src/core/

**Смотрите также:**

- [Определение коллекций контента](/ru/guides/content-collections/#defining-collections)
- [Определение коллекций контента](/ru/guides/content-collections/#определение-коллекций)
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ githubURL: /~https://github.com/withastro/astro/blob/main/packages/astro/src/core/

**Смотрите также:**

- [Зарезервированное поле записи `slug`](/ru/guides/content-collections/#defining-custom-slugs)
- [Зарезервированное поле записи `slug`](/ru/guides/content-collections/#определение-пользовательских-slugов)
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ githubURL: /~https://github.com/withastro/astro/blob/main/packages/astro/src/core/

**Смотрите также:**

- [Определение коллекций контента](/ru/guides/content-collections/#defining-collections)
- [Определение коллекций контента](/ru/guides/content-collections/#определение-коллекций)
8 changes: 4 additions & 4 deletions src/content/docs/ru/tutorials/add-content-collections.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ import { Steps } from '@astrojs/starlight/components';

Даже при использовании коллекций контента вы все равно будете использовать папку `src/pages/` для отдельных страниц, например, для страницы "Обо мне". Но перемещение записей блога в специальную папку `src/content/` позволит вам использовать более мощные и эффективные API для создания индекса записей блога и отображения отдельных записей блога.

В то же время вы получите более эффективное руководство и автодополнение в редакторе кода, поскольку у вас будет **[схема](/ru/guides/content-collections/#defining-a-collection-schema)** для определения общей структуры для каждого поста, которую Astro поможет вам реализовать. В своей схеме вы можете указать, когда требуются свойства frontmatter, например описание или автор, и какой тип данных должен быть у каждого свойства, например строка или массив. Это позволяет быстрее выявлять многие ошибки, а описания ошибок подскажут вам, в чем именно заключается проблема.
В то же время вы получите более эффективное руководство и автодополнение в редакторе кода, поскольку у вас будет **[схема](/ru/guides/content-collections/#определение-схемы-коллекции)** для определения общей структуры для каждого поста, которую Astro поможет вам реализовать. В своей схеме вы можете указать, когда требуются свойства frontmatter, например описание или автор, и какой тип данных должен быть у каждого свойства, например строка или массив. Это позволяет быстрее выявлять многие ошибки, а описания ошибок подскажут вам, в чем именно заключается проблема.

Подробнее о [Коллекциях контента Astro](/ru/guides/content-collections/) читайте в нашем руководстве, а чтобы преобразовать базовый блог из `src/pages/posts/` в `src/content/posts/`, воспользуйтесь приведенными ниже инструкциями.

Expand Down Expand Up @@ -133,7 +133,7 @@ import { Steps } from '@astrojs/starlight/components';
Если вы используете свой собственный проект, то обязательно обновите все установленные зависимости. В примере учебника по ведению блога используется только интеграция с Preact.
:::

2. В этом руководстве для блога используется `base` (наименее строгая) настройка TypeScript. Чтобы использовать коллекции контента, необходимо [настроить TypeScript](/ru/guides/content-collections/#setting-up-typescript) для коллекций контента **либо** с помощью настройки `strict` или `strictest`, **либо** путем добавления двух опций в `tsconfig.json`.
2. В этом руководстве для блога используется `base` (наименее строгая) настройка TypeScript. Чтобы использовать коллекции контента, необходимо [настроить TypeScript](/ru/guides/content-collections/#настройка-typescript) для коллекций контента **либо** с помощью настройки `strict` или `strictest`, **либо** путем добавления двух опций в `tsconfig.json`.

Чтобы использовать коллекции контента без написания TypeScript в остальной части примера, приведенного в учебнике, добавьте следующие две опции TypeScript в файл конфигурации:

Expand All @@ -156,7 +156,7 @@ import { Steps } from '@astrojs/starlight/components';

4. Переместите все существующие записи блога (файлы `.md`) из папки `src/pages/posts/` в эту новую коллекцию.

5. Создайте файл `src/content/config.ts, чтобы [определить схему](/ru/guides/content-collections/#defining-a-collection-schema) для вашей `postsCollection`. Для существующего кода учебника по блогам добавьте в файл следующее содержимое, чтобы определить все свойства frontmatter, используемые в записях блога:
5. Создайте файл `src/content/config.ts`, чтобы [определить схему](/ru/guides/content-collections/#определение-схемы-коллекции) для вашей `postsCollection`. Для существующего кода учебника по блогам добавьте в файл следующее содержимое, чтобы определить все свойства frontmatter, используемые в записях блога:

```ts title="src/content/config.ts"
// Импортируйте утилиты из `astro:content`.
Expand Down Expand Up @@ -191,7 +191,7 @@ import { Steps } from '@astrojs/starlight/components';
<Steps>
7. Создайте файл страницы с именем `src/pages/posts/[...slug].astro`. Ваши файлы Markdown и MDX больше не становятся страницами автоматически, используя файловую маршрутизацию Astro, когда они находятся внутри коллекции, поэтому вы должны создать страницу, отвечающую за генерацию каждой отдельной записи блога.

8. Добавьте следующий код в [запрос к коллекции](/ru/guides/content-collections/#querying-collections), чтобы slug и содержимое страницы каждой записи блога были доступны для каждой страницы, которую она будет генерировать:
8. Добавьте следующий код в [запрос к коллекции](/ru/guides/content-collections/#запрос-к-коллекциям), чтобы slug и содержимое страницы каждой записи блога были доступны для каждой страницы, которую она будет генерировать:

```astro title="src/pages/posts/[...slug].astro"
---
Expand Down
Loading