FastComments.com

Προσθέστε σχόλια στον ιστότοπό σας Jekyll


Αυτή είναι η επίσημη Βιβλιοθήκη Jekyll για το FastComments.

Ενσωματώστε ζωντανά widget σχολιασμών, συνομιλίας και αξιολογήσεων στην ιστοσελίδα Jekyll σας.

Αποθετήριο

Δείτε στο GitHub


Ζωντανή Παρουσίαση Internal Link

Για να δείτε κάθε tag να εκτελείται τοπικά απέναντι στον δημόσιο tenant demo, κλωνοποιήστε το αποθετήριο και τρέξτε:

cd example
bundle install
bundle exec jekyll serve

Κάθε widget έχει τη δική του σελίδα κάτω από example/ την οποία μπορείτε να αντιγράψετε απευθείας στην δική σας ιστοσελίδα Jekyll.

Εγκατάσταση Internal Link

Gem

Προσθέστε το gem στην ομάδα :jekyll_plugins στο Gemfile του ιστότοπού σας:

group :jekyll_plugins do
  gem "fastcomments-jekyll"
end

Then:

bundle install

(Συμβατό με Jekyll 3.7+ και 4.x.)

Ετικέτες Internal Link

ΕτικέταΠεριγραφή
fastcommentsΖωντανά σχόλια με απαντήσεις, ψηφοφορία, διαχείριση και ενημερώσεις σε πραγματικό χρόνο
fastcomments_comment_countΑριθμός σχολίων για την τρέχουσα σελίδα
fastcomments_comment_count_bulkΑριθμοί σχολίων για πολλές σελίδες σε μια λίστα/σελίδα ευρετηρίου
fastcomments_live_chatWidget συνομιλίας σε πραγματικό χρόνο
fastcomments_collab_chatΣυνεργατικός ενσωματωμένος σχολιασμός (σημειώσεις κειμένου)
fastcomments_image_chatΣχόλια/σημειώσεις σε εικόνες
fastcomments_recent_commentsΠρόσφατα σχόλια σε όλο τον ιστότοπο
fastcomments_recent_discussionsΠρόσφατα ενεργά νήματα συζήτησης
fastcomments_reviews_summaryΠερίληψη αξιολογήσεων με αστέρια
fastcomments_top_pagesΠιο συζητημένες σελίδες
fastcomments_user_activity_feedΡοή δραστηριότητας ανά χρήστη

Παραδείγματα

{% raw %}{# Αριθμός σχολίων. Το widget εμφανίζει τη δική του ετικέτα, π.χ. "0 comments" #}
{% fastcomments_comment_count %}

{# Ζωντανή συνομιλία #}
{% fastcomments_live_chat %}

{# Συνεργατική συνομιλία. Στοχεύστε το σε ένα στοιχείο περιεχομένου με έναν CSS selector #}
<article id="post-body">
  <p>Highlight me to leave a comment.</p>
</article>
{% fastcomments_collab_chat target="#post-body" %}

{# Συνομιλία εικόνας. Στοχεύστε το σε ένα στοιχείο εικόνας με έναν CSS selector #}
<img id="hero" src="/hero.jpg" alt="Hero image">
{% fastcomments_image_chat target="#hero" %}

{# Περίληψη αξιολογήσεων #}
{% fastcomments_reviews_summary %}

{# Ροή δραστηριότητας χρήστη. Απαιτεί user id #}
{% fastcomments_user_activity_feed user_id="demo:demo-user" %}

{# Μαζικοί αριθμοί σχολίων για ένα ευρετήριο ιστολογίου #}
{% for post in site.posts %}
  <a href="\{{ post.url }}">\{{ post.title }}</a>
  <span class="fast-comments-count" data-fast-comments-url-id="\{{ post.url }}"></span>
{% endfor %}
{% fastcomments_comment_count_bulk %}{% endraw %}

Διαμόρφωση Internal Link

Η διαμόρφωση προέρχεται από τρία μέρη. Οι νεότερες πηγές υπερισχύουν:

  1. Παγκόσμιες προεπιλογές στο _config.yml κάτω από το κλειδί fastcomments:.
  2. Πλαίσιο σελίδας, που προκύπτει αυτόματα για widgets με εμβέλεια σελίδας (βλέπε παρακάτω).
  3. Χαρακτηριστικά tag γραμμένα στο ίδιο το tag.

Έτσι ένα url_id στο tag υπερισχύει της τιμής που προέρχεται από τη σελίδα, η οποία υπερισχύει οποιασδήποτε παγκόσμιας προεπιλογής.

Σύνταξη χαρακτηριστικών

Τα χαρακτηριστικά είναι ζεύγη key=value σε snake_case:

{% raw %}{% fastcomments url_id="my-stable-id" readonly=true count=20 %}{% endraw %}
  • Οι τιμές με εισαγωγικά ("..." ή '...') είναι λεκτικές συμβολοσειρές.
  • Χωρίς εισαγωγικά true/false γίνονται boolean, και αριθμοί γίνονται αριθμοί.
  • Χωρίς εισαγωγικά οτιδήποτε άλλο επιλύεται ως μεταβλητή Liquid από το πλαίσιο της σελίδας, π.χ. url_id=page.slug. (Liquid δεν επεκτείνει {% raw %}\{{ ... }}{% endraw %} μέσα στα attributes ενός tag, οπότε χρησιμοποιήστε τη γυμνή μορφή page.slug αντί για "{% raw %}\{{ page.slug }}{% endraw %}".)

Τα κλειδιά χαρακτηριστικών σε snake_case και τα κλειδιά ρύθμισης αντιστοιχίζονται αυτόματα στα camelCase κλειδιά που περιμένει το FastComments (tenant_idtenantId, url_idurlId, page_titlepageTitle, has_dark_backgroundhasDarkBackground, κ.λπ.). Οποιαδήποτε άλλη επιλογή από τη διαμόρφωση widget περνάει απευθείας με τον ίδιο τρόπο.

Τιμές προερχόμενες από τη σελίδα

Για τα widgets με εμβέλεια σελίδας (fastcomments, fastcomments_comment_count, fastcomments_live_chat, fastcomments_collab_chat, fastcomments_image_chat) αυτά συμπληρώνονται αυτόματα από την τρέχουσα σελίδα εκτός κι αν τα ορίσετε εσείς:

  • url_idpage.url (σταθερό αναγνωριστικό ανεξάρτητο από το domain που το επισκέπτεται)
  • urlsite.url + page.url (μόνο όταν έχει οριστεί url στο _config.yml)
  • page_titlepage.title

Τα site-wide widgets (πρόσφατα σχόλια/συζητήσεις, κορυφαίες σελίδες, περίληψη κριτικών, ροή δραστηριότητας χρηστών, μαζικός μετρητής) δεν συσχετίζονται με μια σελίδα και δεν προέρχονται από αυτές τις τιμές.

Φιλοξενία δεδομένων στην ΕΕ

Οι πελάτες στην ΕΕ προσθέτουν region: eu, είτε παγκοσμίως:

fastcomments:
  tenant_id: your-tenant-id
  region: eu

ή ανά tag: {% raw %}{% fastcomments region="eu" %}{% endraw %}. Τα widgets τότε φορτώνονται από το CDN της ΕΕ.

Κατάσταση Συντήρησης Internal Link

Αυτά τα components είναι wrappers γύρω από τα βασικά μας components του VanillaJS. Μπορούμε να ενημερώνουμε αυτόματα αυτά τα components (να διορθώνουμε σφάλματα, να προσθέτουμε δυνατότητες) χωρίς να δημοσιεύουμε αυτή τη βιβλιοθήκη, οπότε παρόλο που μπορεί να μην δημοσιευτεί για κάποιο διάστημα, αυτό δεν σημαίνει ότι το FastComments δεν βρίσκεται υπό ενεργή ανάπτυξη! Μη διστάσετε να δείτε το ιστολόγιό μας για ενημερώσεις. Σοβαρές αλλαγές στο API ή νέες λειτουργίες δεν θα αποσταλούν ποτέ στην υποκείμενη βασική βιβλιοθήκη χωρίς αύξηση έκδοσης σε αυτή τη βιβλιοθήκη.


Χρειάζεστε βοήθεια;

Εάν αντιμετωπίσετε οποιοδήποτε πρόβλημα ή έχετε ερωτήσεις σχετικά με τη Βιβλιοθήκη Jekyll, παρακαλούμε:

Συνεισφορές

Οι συνεισφορές είναι ευπρόσδεκτες! Παρακαλούμε επισκεφθείτε το αποθετήριο GitHub για οδηγίες συνεισφοράς.