#javascript #html #jekyll #telegram #telegram-bot
#javascript #HTML #джекилл #телеграмма #telegram-бот
Вопрос:
У меня есть простой блог jekyll, где я хотел бы добавлять комментарии.виджет приложения.
Вот код, который я использую для добавления виджета:
<h3>Comments:</h3>
<script async src="https://comments.app/js/widget.js?3"
data-comments-app-website="{{ site.comments.commentsapp-id }}"
data-limit="{{ site.comments.limit }}"
data-color="39C4E8"
data-dark="1">
</script>
<noscript>
Comments not available if Javascript is blocked. This is the only function of
this website which needs Javascript.
</noscript>
идентификатор приложения site.comments.commentsapp хранится в my _config.yml
и правильно помещается в отображаемый результат.
Но виджет не отображается на странице. Что я сделал не так?
Обновление: В опции проверки элемента я обнаружил это:
<iframe id="comments-app-Kh5zcvkB-1" src="https://comments.app/embed/view?website=my-idamp;amp;page_url=%page/title/amp;amp;origin=https://my-site.comamp;amp;page_title=y-tittleamp;amp;limit=5amp;amp;color=39C4E8amp;amp;dark=1" scrolling="no" style="overflow: hidden; border: medium none;" width="100%" height="0" frameborder="0">
<head></head><body>Page url invalid</body>
</iframe>
Комментарии:
1. Вы видите ошибки Javascript в консоли? Когда вы просматриваете исходный код страницы, видите ли вы, что жидкость скомпилирована, что означает, что вместо
{{ site.comments.commentsapp-id }}
комментариев вы видите идентификатор приложения, который вы добавили в свой конфигурационный файл?2. Единственное, что есть в консоли
Layout was forced before the page was fully loaded. If stylesheets are not yet loaded this may cause a flash of unstyled content.
. Да, liquid скомпилирован правильно.3. Под консолью я имел в виду консоль браузера в ваших инструментах разработчика, а не терминал. Но, похоже, вы поняли, так что не беспокойтесь.
Ответ №1:
Наконец-то решена эта проблема. Это было вызвано относительным каноническим URL-адресом в заголовке документа.
Поэтому я заменил это:
<link rel="canonical" href="{{ page.url }}">
с помощью этого:
<link rel="canonical" href="{{ absolute_url }}">
Теперь он работает нормально.
Комментарии:
1. Вы, вероятно, захотите использовать
{{ page.url | prepend: absolute_url }}
, если это находится в общем макете. В противном случае все ваши страницы будут иметь один и тот же канонический адрес.