Вы хотите продемонстрировать свои статьи на другом веб-сайте? Давайте удалим их и разместим на сайте gatsby.js.
Недавно я начал делать свой профессиональный сайт. Часть моей профессиональной деятельности - это написание статей. Большинство моих статей посвящено среде. Я хочу, чтобы они оставались на среднем уровне, но я также хотел отображать некоторые из них на своем веб-сайте. Оказывается, это довольно просто сделать. Итак, приступим:
ШАГ №1: Создайте стартер Gatsby.js и разместите его на GitHub.
Если у вас уже есть целевая страница, вы можете сразу перейти к ШАГУ 2.
Как и раньше, мы начнем с создания стартера Gatsby.js. Если вы еще не настроили среду разработки, вы можете выполнить эту процедуру.
Как только вы это сделаете, мы создадим новый сайт gatsby и проведем его первый запуск, используя следующие команды.
gatsby new gatsby-site gatsby develop
Оказавшись здесь, вы можете открыть браузер и перейти по адресу http: // localhost: 8000 /, чтобы увидеть свой веб-сайт в действии.
ШАГ №2: Установите плагин
Мы будем использовать плагин gatsby-source-medium. Это не официальный плагин, поэтому мы не сможем получить все данные с Medium:
Плагин исходного кода для извлечения данных в Gatsby из неофициальной конечной точки Medium JSON. К сожалению, конечная точка JSON не предоставляет полные истории, а только предварительные просмотры. И из-за ограничения, установленного Medium, возвращаются только 10 последних сообщений.
Начнем с установки плагина:
npm install --save
gatsby-source-medium
и настраиваем его:
plugins: [ { resolve: 'gatsby-source-medium', options: { username: '@mariequittelier', // Medium user name }, }, ]
И теперь в вашем GraphiQL (http: // localhost: 8000 / __ grapql) вы сможете запрашивать данные с носителя. Вся документация по API находится здесь.
Ваш запрос будет зависеть от того, что вы хотите. Но имейте в виду, что данные относятся к пользователю. Но какие данные вы можете получить?
- allMediumCollection: вы можете связать данные с публикацией пользователя.
- allMediumPost: это будут данные, относящиеся к статье пользователя.
- allMediumUser: много всего о самом пользователе.
Не стесняйтесь копаться в GraphiQl, чтобы проверить, какие данные вы можете извлечь!
ШАГ №3: Запросите и создайте интерфейс
Теперь, когда данные доступны, вы можете вызвать их, а затем отобразить. Но давайте начнем с вызова наших данных:
Теперь давайте создадим лицевую сторону. Для этого мы будем использовать стилизованный компонент. Итак, давайте установим его:
npm install --save gatsby-plugin-styled-components styled-components babel-plugin-styled-components
и настройте плагин:
//gatsby-config.js module.exports = { plugins: [`gatsby-plugin-styled-components`], }
Первое, что мы собираемся сделать, это сопоставить запрашиваемые данные. Цель состоит в том, чтобы отобразить один компонент для каждой статьи:
Вы можете заметить, что у нас есть один компонент для каждой статьи:
Теперь давайте добавим всю необходимую информацию и немного стилизуем, и здесь мы поздравляем 🎊 🎈 🍾. Стиль всегда можно улучшить, но, по крайней мере, у вас есть кое-что для начала:
Две вещи, на которые стоит обратить внимание: ссылка и изображение.
- Начнем со ссылки на вашу статью. Все статьи на среднем уровне доступны по адресу «https://medium.com/@AUTHOR_USERNAME/THE_ARTICLE_SLUG. Неважно, была ваша статья опубликована в публикации или нет. По этой ссылке вы будете перенаправлены на свою статью.
- Теперь изображения. Как и любой крупный веб-сайт, medium использует CDN для своего медиа-контента. Использование инспектора позволило мне найти его адрес https://cdn-images-1.medium.com / YOUR_IMAGE_ID.
👏 Если вам понравилась эта статья, дайте мне знать, хлопнув в ладоши (или 50) или оставив комментарий.
👍 Если вам понравились мои работы, вы всегда можете подписаться на меня.
📚 Кроме того, если вы хотите узнать больше, вы можете ознакомиться с этими статьями: