Я разрабатываю личный сайт с использованием GitHub Pages. В частности, я использую шаблон jekyll под названием chirpy (https://chirpy.cotes.page/). Прежде чем начать публиковать в своем блоге, я хотел бы реализовать систему рассылки новостей, чтобы читатели могли подписаться и получать последние посты из моего блога.
Чтобы сделать это, я прочитал несколько материалов, которые нашел в интернете:
[1] https://wewake.dev/posts/how-i-setup-my-own-scalable-email-subscription-system-with-0-cost/
[2] https://medium.com/@davideiaiunese/the-problem-why-a-newsletter-baae4409a526
[3] https://dev.to/charalambosioannou/create-a-static-webpage-with-a-contact-form-on-github-pages-3532
К сожалению, все эти решения несовместимы с моей ситуацией каким-то образом. [1] использует Linux, а я в данный момент использую Windows в качестве операционной системы. [2] использует более раннюю версию https://feedburner.google.com/, и я не смог разобраться, как настроить ее с самой последней версией feedburner. В [3] я следовал почти всем инструкциям и не получил ничего. То, что я сделал до сих пор, это
1) добавить gem “jekyll-feed” в Gemfile
2) добавить
плагины:
- jekyll-feed
в файл _config.yml
3) Так как файл feed.xml не был создан после этого, я решил скопировать и вставить feed.xml, который появляется в репозитории chirpy (https://github.com/cotes2020/jekyll-theme-chirpy/blob/master/assets/feed.xml), в мой репозиторий (следуя тому же маршруту), и ничего не произошло.
4) Я также решил добавить
outputFormats:
RSS:
mediatype: “application/rss+xml”
baseName: “rss”
Atom:
mediatype: “application/atom+xml”
baseName: “atom”
mediaTypes:
application/rss+xml:
suffixes:
– xml
application/atom+xml:
suffixes:
– xml
в файл _config.yml, и никакие файлы rss.xml/atom.xml вообще не были созданы.
Я просто хочу добавить систему рассылки новостей на свой сайт. Я пытался связаться с создателем шаблона, но он не ответил. Я открыл обсуждение в репозитории chirpy, и никто не ответил. Если кто-то еще здесь может помочь мне с этой задачей, я буду очень благодарен. У меня не так много опыта в веб-разработке, но я открыт для эффективных сложных решений. В данный момент мой проект основан здесь: https://github.com/amahury/amahury.github.io
Спасибо за внимание, надеюсь услышать от кого-то,
Amahury
Ответ
Чтобы реализовать систему рассылки новостей для вашего блога на платформе GitHub Pages с использованием темы Jekyll Chirpy, вы можете следовать этому пошаговому руководству. Я постараюсь предложить простое решение, которое не потребует от вас больших затрат на техническую реализацию.
Шаг 1: Настройка системы для сбора подписок
-
Выбор сервиса для рассылки:
Популярные решения для создания рассылок включают Mailchimp, ConvertKit, или даже более простые решения, такие как Formspree, для сбора адресов электронной почты.Например, мы рассмотрим использование Mailchimp:
- Зарегистрируйтесь на Mailchimp.
- Создайте новую аудиторию и получите форму подписки.
- Получите код HTML формы:
В Mailchimp найдите раздел "Audience" (Аудитория) и выберите "Signup forms" (Формы подписки). Создайте форму и скопируйте HTML-код, предоставляемый Mailchimp.
Шаг 2: Добавление формы на ваш сайт
-
Редактирование вашего сайта:
Перейдите к вашему проекту на GitHub и найдите файл, куда нужно вставить форму подписки. Это может быть файл, напримерindex.html
или отдельная страница, напримерsubscribe.html
. -
Добавьте код формы:
Вставьте скопированный код HTML формы в соответствующее место вашего сайта. Например:<div class="newsletter"> <h2>Подписывайтесь на наш Newsletter</h2> <form action="https://YOUR_MAILCHIMP_ENDPOINT" method="post" target="_blank"> <input type="email" name="EMAIL" placeholder="Ваш адрес электронной почты" required> <button type="submit">Подписаться</button> </form> </div>
Обязательно замените
YOUR_MAILCHIMP_ENDPOINT
на тот URL, который был сгенерирован для вашей формы в Mailchimp.
Шаг 3: Уведомление о новых публикациях
Чтобы ваш читатель мог получить уведомление о новых публикациях, вы можете интегрировать Mailchimp с Atom/RSS.
-
Создание RSS-канала:
Убедитесь, что вы правильно добавили поддержку RSS, если этого ещё не сделано. ВGemfile
у вас уже есть строка дляjekyll-feed
, и в_config.yml
— строкаplugins: - jekyll-feed
.После этого, убедитесь, что ваш
feed.xml
файл правильно генерируется. Если он не генерируется, проверьте настройки в_config.yml
(например, обязательно укажитеbaseurl
иurl
). -
Подключение RSS к Mailchimp:
В Mailchimp вы можете создать автоматическую кампанию, которая будет отправлять письма вашей аудитории каждый раз, когда у вас появляется новый пост в RSS-канале.Для этого:
- Перейдите в Mailchimp, выберите "Campaigns" и создайте новую автоматическую кампанию.
- Выберите "Share blog updates" (Делитесь обновлениями блога) и введите ваш RSS-канал (например,
https://your-github-username.github.io/feed.xml
).
Шаг 4: Настройка автоматических писем
После настройки автоматической кампании укажите, как часто будут отправляться письма, например, раз в неделю или сразу после публикации нового поста.
Шаг 5: Тестирование
Обязательно протестируйте вашу форму подписки и автоматические письма, чтобы убедиться, что всё работает правильно. Подпишитесь на свой бюллетень с тестовым адресом электронной почты.
Заключение
Следуя этим шагам, вы сможете успешно интегрировать систему рассылки новостей на вашем блоге, используя Jekyll и Mailchimp. Если у вас возникнут вопросы или сложности, вы всегда можете обратиться за поддержкой к сообществу Jekyll или Mailchimp, или здесь, на GitHub. Удачи в вашей веб-разработке!