
Γλώσσα 🇬🇷 Ελληνικά
Τεκμηρίωση
Ξεκινώντας
Αναφορά API
Add Comments to Your Laravel App
Αυτό είναι το επίσημο πακέτο Laravel για το FastComments.
Προσθέστε σχολιασμό σε πραγματικό χρόνο, συνομιλία και άλλα στην εφαρμογή Laravel σας.
Αποθετήριο
Εγκατάσταση 
composer require fastcomments/laravel
Δημοσιεύστε το αρχείο ρυθμίσεων:
php artisan vendor:publish --tag=fastcomments-config
Προσθέστε τα διαπιστευτήριά σας στο .env:
FASTCOMMENTS_TENANT_ID=your-tenant-id
FASTCOMMENTS_API_KEY=your-api-key
Για την περιοχή ΕΕ:
FASTCOMMENTS_REGION=eu
Συστατικά Blade 
Widget Σχολίων
<x-fastcomments />
{{-- With options --}}
<x-fastcomments
url-id="my-page-id"
url="https://example.com/my-page"
locale="en_us"
:has-dark-background="true"
default-sort-direction="MR"
/>
Ζωντανή Συνομιλία
<x-fastcomments-live-chat url-id="chat-room-1" />
Αριθμός Σχολίων
<x-fastcomments-comment-count url-id="my-page-id" />
<x-fastcomments-comment-count url-id="my-page-id" :number-only="true" />
SSO (Ενιαία Σύνδεση) 
Ενεργοποιήστε το SSO στο αρχείο .env:
FASTCOMMENTS_API_KEY=your-api-key
FASTCOMMENTS_SSO_ENABLED=true
FASTCOMMENTS_SSO_MODE=secure
Το API key απαιτείται για το ασφαλές SSO — χρησιμοποιείται για την υπογραφή του payload του SSO.
Χαρτογράφηση με βάση το config
Στο config/fastcomments.php, αντιστοιχίστε τα πεδία του FastComments με τα attributes του μοντέλου User σας:
'sso' => [
'enabled' => true,
'mode' => 'secure',
'user_map' => [
'id' => 'id',
'email' => 'email',
'username' => 'name',
'avatar' => 'profile.avatar_url', // υποστηρίζεται σημειογραφία με τελείες (dot notation)
],
'is_admin' => fn ($user) => $user->hasRole('admin'),
'is_moderator' => fn ($user) => $user->hasRole('moderator'),
],
Χαρτογράφηση βάσει Interface
Για περισσότερο έλεγχο, υλοποιήστε το interface MapsToFastCommentsUser στο μοντέλο User σας:
use FastComments\Laravel\SSO\Contracts\MapsToFastCommentsUser;
class User extends Authenticatable implements MapsToFastCommentsUser
{
public function toFastCommentsUserData(): array
{
return [
'id' => (string) $this->id,
'email' => $this->email,
'username' => $this->display_name,
'avatar' => $this->avatar_url,
'is_admin' => $this->hasRole('admin'),
];
}
}
Όταν υλοποιείται το interface, έχει προτεραιότητα έναντι της χαρτογράφησης βάσει config.
SSO στο Blade
Όταν το SSO είναι ενεργοποιημένο, το component <x-fastcomments /> εισάγει αυτόματα δεδομένα SSO για τον πιστοποιημένο χρήστη.
Πρόσβαση API 
Μέσω Facade
use FastComments\Laravel\Facades\FastComments;
// Admin API (απαιτεί κλειδί API)
$comments = FastComments::admin()->getComments('tenant-id');
// Public API
$comments = FastComments::publicApi()->getCommentsPublic('tenant-id', 'url-id');
// SSO
$ssoPayload = FastComments::sso()->forWidget();
$token = FastComments::sso()->tokenFor($user);
Μέσω Dependency Injection
use FastComments\Laravel\FastCommentsManager;
class CommentController extends Controller
{
public function index(FastCommentsManager $fc)
{
$comments = $fc->admin()->getComments($fc->tenantId());
// ...
}
}
Άμεση Πρόσβαση στο SDK
use FastComments\Client\Api\DefaultApi;
class CommentController extends Controller
{
public function index(DefaultApi $api)
{
$comments = $api->getComments('tenant-id');
// ...
}
}
Αναφορά Διαμόρφωσης 
| Κλειδί | Μεταβλητή περιβάλλοντος | Προεπιλογή | Περιγραφή |
|---|---|---|---|
tenant_id |
FASTCOMMENTS_TENANT_ID |
'' |
Το tenant ID του FastComments σας |
api_key |
FASTCOMMENTS_API_KEY |
'' |
Κλειδί API για κλήσεις στην πλευρά του διακομιστή |
region |
FASTCOMMENTS_REGION |
null |
null (ΗΠΑ) ή 'eu' |
sso.enabled |
FASTCOMMENTS_SSO_ENABLED |
false |
Ενεργοποίηση SSO |
sso.mode |
FASTCOMMENTS_SSO_MODE |
'secure' |
'secure' ή 'simple' |
sso.login_url |
FASTCOMMENTS_SSO_LOGIN_URL |
null |
URL σύνδεσης (εάν δεν δοθεί, χρησιμοποιεί τη διαδρομή Laravel) |
sso.logout_url |
FASTCOMMENTS_SSO_LOGOUT_URL |
null |
URL αποσύνδεσης (εάν δεν δοθεί, χρησιμοποιεί τη διαδρομή Laravel) |
widget_defaults |
— | [] |
Προεπιλεγμένες επιλογές διαμόρφωσης του widget |
| --- |
Χρειάζεστε βοήθεια;
Εάν αντιμετωπίσετε οποιοδήποτε πρόβλημα ή έχετε ερωτήσεις σχετικά με το πακέτο Laravel, παρακαλούμε:
Συνεισφορές
Οι συνεισφορές είναι ευπρόσδεκτες! Παρακαλούμε επισκεφθείτε το αποθετήριο GitHub για οδηγίες συνεισφοράς.