Τι είναι το Rankbeam;
Το Rankbeam είναι υποδομή SEO open-core για Laravel: δωρεάν core MIT για μεταδεδομένα, κανονικές διευθύνσεις URL, κοινωνικές κάρτες, συνδεδεμένο JSON-LD, χάρτες ιστοτόπου και ελέγχους ανιχνευτών, μαζί με προαιρετική εμπορική παρακολούθηση και ροές εργασίας Pro. Δεν είναι βοηθός ετικετών χρόνου εκτέλεσης προσαρτημένος στο πλάι μιας εφαρμογής. Επιλύει το SEO από τα δικά σας μοντέλα και τις ρυθμίσεις, αποδίδει τα ίδια τυποποιημένα δεδομένα ως Blade, head Inertia ή JSON API και — με το Pro — συνεχίζει να τα παρακολουθεί μετά τη διάθεση.
Η οικογένεια πακέτων
Το Rankbeam αποτελείται από τρία πακέτα με κοινό πίνακα υποστήριξης:
| Πακέτο | Άδεια | Τι είναι |
|---|---|---|
rankbeam/laravel-seo | MIT, δωρεάν | το core — επίλυση μεταδεδομένων, συνδεδεμένος γράφος schema JSON-LD, χάρτες XML, έλεγχοι ανιχνευτών, δωρεάν seo:audit και εργαλεία εισαγωγής |
rankbeam/laravel-seo-filament | MIT, δωρεάν | πεδία φόρμας Filament 4/5 και ζωντανές προεπισκοπήσεις που γράφουν στο seo_meta του core |
rankbeam/laravel-seo-pro | εμπορική | η μηχανή λειτουργιών — σαρώσεις σε ουρά με βαθμολογία 0–100, διαχείριση ανακατευθύνσεων, παρακολούθηση 404 χωρίς IP, ανιχνευτής μη λειτουργικών συνδέσμων, αναλύσεις Search Console και βοήθεια AI με δικό σας κλειδί |
Το όριο είναι συνειδητό. Όλα όσα εξάγει η αποδομένη σελίδα έχουν άδεια MIT και παραμένουν δωρεάν για πάντα· αυτό που πληρώνετε είναι το επίπεδο ελέγχου και παρακολούθησης παραγωγής. Το εμπορικό Pro είναι δικό του πακέτο — δεν περιλαμβάνεται ποτέ στο δωρεάν core.
Σε ποιους απευθύνεται
Το Rankbeam αξίζει όταν το SEO αποθηκεύεται, συνδέεται με μοντέλα, είναι πολύγλωσσο, headless και ελέγχεται — σε εφαρμογή Laravel παραγωγής με δυναμικό περιεχόμενο ή περιεχόμενο βασισμένο σε μοντέλα. Για λίγες στατικές σελίδες που χρειάζονται έναν τίτλο και μία περιγραφή, ένας μικρός βοηθός μεταδεδομένων χρόνου εκτέλεσης ταιριάζει καλύτερα· η παρακάτω σημείωση για το πότε το συνδυασμένο stack εξακολουθεί να αρκεί το λέει καθαρά.
Υποστηριζόμενες εκδόσεις
Ένας πίνακας για όλη την οικογένεια:
- PHP 8.2–8.4 (Laravel 11)· 8.2–8.5 (Laravel 12)· 8.3–8.5 (Laravel 13)
- Laravel 11 / 12 / 13 (το Laravel 13 απαιτεί PHP 8.3+)
- Filament 4 / 5 (προαιρετικά)
Τι δεν αντικαθιστά το Rankbeam
Το Rankbeam συντονίζει την έξοδο SEO της ίδιας της εφαρμογής Laravel. Δεν είναι φιλοξενούμενο εργαλείο παρακολούθησης κατάταξης, σουίτα έρευνας λέξεων-κλειδιών ή προϊόν analytics και δεν υπόσχεται τίποτε για κατατάξεις, ευρετηρίαση ή παραπομπές AI. Για την παραγωγή χαρτών XML χρησιμοποιεί το spatie/laravel-sitemap αντί να το επανεφευρίσκει, και αφήνει το περιεχόμενο, τις διαδρομές και τα analytics σας εκεί που βρίσκονται.
Ξεκινάτε τώρα; Εγκαταστήστε το δωρεάν core ή συνεχίστε για τα στοιχεία από μια πραγματική αντικατάσταση σε παραγωγή. Το Pro και η προσφορά πρώτων πελατών διατίθενται στο rankbeam.dev.
Γιατί όχι τρία πακέτα και κώδικας σύνδεσης
Οι περισσότερες εφαρμογές Laravel δεν έχουν «πακέτο SEO». Έχουν stack SEO: ένα πακέτο που αποθηκεύει μεταδεδομένα ανά μοντέλο, δεύτερο που προσθέτει τα πεδία στο Filament, τρίτο που σαρώνει σελίδες και έπειτα ένα επίπεδο ειδικού κώδικα εφαρμογής που κάνει τα τρία να συμφωνούν μεταξύ τους. Κάθε κομμάτι είναι εντάξει μόνο του. Το κόστος βρίσκεται στις συνδέσεις τους — και αυτόν τον κώδικα τον συντηρείτε εσείς για πάντα.
Αυτή η σελίδα παρουσιάζει τα στοιχεία μιας πραγματικής αντικατάστασης σε παραγωγή, όπου ακριβώς αυτό το συνδυασμένο stack αφαιρέθηκε και αντικαταστάθηκε από την οικογένεια Rankbeam. Οι αριθμοί παρακάτω είναι μετρημένοι, όχι διαφημιστικοί.
Η εφαρμογή αναφοράς
Πραγματικός ιστότοπος περιεχομένου Laravel σε παραγωγή (ανωνυμοποιημένος εδώ):
- Νοσοκομειακός / θεσμικός ιστότοπος περιεχομένου, περίπου 3 μήνες σε παραγωγή.
- Μεταφέρθηκε από WordPress, περίπου 900 σελίδες σύμφωνα με τον χάρτη ιστοτόπου.
- Περίπου 20.000 επισκέψεις/ημέρα.
- Laravel 12, διαχείριση Filament 4, frontend Blade, MySQL.
Το stack SEO πριν από την αντικατάσταση:
| Επίπεδο | Πακέτο |
|---|---|
Αποθήκευση μεταδεδομένων (πίνακας seo ανά μοντέλο) | ralphjsmit/laravel-seo |
| Πεδία SEO Filament | ralphjsmit/laravel-filament-seo |
| Σαρωτής σελίδων | backstage/laravel-seo-scanner |
| Όλα τα ενδιάμεσα | περίπου 30 ειδικές κλάσεις εφαρμογής |
Αφαιρέσαμε τα τρία πακέτα, εγκαταστήσαμε Rankbeam core + Pro + Filament, εκτελέσαμε τη σουίτα δοκιμών SEO και η εφαρμογή ξεκίνησε με μηδενικές παλινδρομήσεις SEO. Ακολουθεί το πραγματικό κόστος του κώδικα σύνδεσης — και όσα εξαφανίστηκαν.
Τι διέγραψε η αντικατάσταση
Η αντικατάσταση του stack σαρωτή με Rankbeam διέγραψε 12 ειδικές κλάσεις εξ ολοκλήρου — δουλειά που δεν ανήκει πλέον στην εφαρμογή, επειδή την αντίστοιχη παρέχει η οικογένεια πακέτων:
| Διαγραμμένη κλάση εφαρμογής | Τι ήταν | Παρέχεται πλέον από |
|---|---|---|
Services/SeoService.php | το περίβλημα εισόδου SEO της εφαρμογής | resolver core και facade SEO |
Services/SeoWarningEvaluator.php | όρια μήκους τίτλου/περιγραφής και μεγέθους εικόνας | SEOWarningEvaluator του core (κοινό σε έλεγχο, προεπισκόπηση, σάρωση) |
Services/Seo/SeoAssetInspector.php | εξέταση διαστάσεων τοπικών εικόνων | LocalImageInspector του core |
Jobs/ScanAllPagesSeo.php | ανάθεση σάρωσης όλου του ιστοτόπου σε ουρά | διαδικασία σάρωσης Pro σε ουρά |
Jobs/ScanPageSeo.php | σάρωση ανά σελίδα | PageScanner του Pro |
Jobs/ScanPublicPageSeo.php | σάρωση ανά δημόσια σελίδα | διαδικασία σάρωσης Pro |
Models/SeoScanBatch.php | καταγραφή εκτελέσεων σάρωσης | seo_scan_runs του Pro |
Filament/Pages/SeoDashboard.php | ο πίνακας διαχείρισης SEO | πρόσθετο SeoDashboard του Pro |
Filament/Widgets/SeoScanProgressWidget.php | widget προόδου σάρωσης | widgets σάρωσης Pro |
Filament/Widgets/SeoTrendChartWidget.php | widget τάσης σαρώσεων | widgets σάρωσης Pro |
Facades/Seo.php | facade εφαρμογής πάνω από το πακέτο αποθήκευσης | facade SEO του core |
Console/Commands/RecoverLegacySeoMetadata.php | εφάπαξ ανάκτηση μεταδεδομένων | εργαλεία εισαγωγής core (seo:import-from) |
Ειλικρινής απολογισμός των υπολοίπων
Η αντικατάσταση σκόπιμα κράτησε τον χειροποίητο ανιχνευτή μη λειτουργικών συνδέσμων της εφαρμογής (περίπου 17 κλάσεις: εργασία σάρωσης, ελεγκτής, κατασκευαστής αρχικών διευθύνσεων, resolver πηγής, δύο μοντέλα, δύο enums, δύο συμβάντα, πόρος Filament και τρία widgets, δύο εντολές) και λίγους βοηθούς μεταδεδομένων/schema (CustomSEO, EntitySeoSection, DynamicSeoDataResolver, SitewideSchema, SeoKeywords) — περίπου 22 επιπλέον κλάσεις. Δεν διαγράφηκαν την πρώτη ημέρα επειδή οι αντικαταστάσεις του Rankbeam ήρθαν αργότερα: ο ανιχνευτής μη λειτουργικών συνδέσμων Pro για τον ειδικό ανιχνευτή, ο στόχος σχετικού μοντέλου και η προεπισκόπηση SERP/κοινωνικής κάρτας του Filament για τα CustomSEO/EntitySeoSection, και ο γράφος schema του core για το SitewideSchema. Υιοθετήστε ολόκληρη την οικογένεια και αυτός ο ειδικός κώδικας — περίπου τρεις δωδεκάδες κλάσεις συνολικά — γίνεται δουλειά του πακέτου, όχι δική σας.
Το ζήτημα δεν είναι ότι κάποιο από αυτά τα πακέτα είναι κακό. Είναι ότι η ενσωμάτωση — οι πάνω από δώδεκα κλάσεις που τα συνδέουν ώστε μια αλλαγή μεταδεδομένων να εμφανίζεται στον σαρωτή, στον πίνακα ελέγχου και στο αποδομένο head — είναι ειδικός κώδικας χωρίς upstream, χωρίς άλλες δοκιμές από τις δικές σας και χωρίς αναφορές σφαλμάτων άλλων.
Παράλληλη σύγκριση
| Δυνατότητα | Συνδυασμένο stack (3 πακέτα και κώδικας σύνδεσης) | Οικογένεια Rankbeam |
|---|---|---|
| Αποθήκευση μεταδεδομένων ανά μοντέλο | πακέτο μεταδεδομένων | core (seo_meta, MIT) |
| Αποθήκευση με επίγνωση γλώσσας | συνήθως ευθύνη του κώδικα σύνδεσης | core — το seo_meta οριοθετείται ανά γλώσσα με στήλη |
| Πεδία SEO Filament | πακέτο Filament-SEO | laravel-seo-filament (MIT) |
| Επεξεργασία SEO σχετικού μοντέλου | τυλίγετε μόνοι σας το στοιχείο πεδίου | εγγενής resolver target: |
| Ζωντανή προεπισκόπηση SERP και κοινωνικής κάρτας | χειροποίητο Blade/Alpine | ενσωματωμένη συντακτική προεπισκόπηση με καρτέλες |
| Headless απόδοση (Inertia / Livewire / JSON) | η εφαρμογή αναφοράς χρησιμοποιούσε Blade· άλλα stack χρειάζονται ενσωμάτωση | ένας resolver → Blade, Inertia, Livewire, JSON (δοκιμές συμβολαίου) |
| Σαρωτής σελίδων και ταξινομημένα προβλήματα | πακέτο σαρωτή | Pro διαδικασία σάρωσης και IssueRegistry |
| Βαθμολογία 0–100 | κώδικας σύνδεσης / καμία | Pro διαφανή κριτήρια με εκδόσεις |
| Ανακατευθύνσεις και ανάκτηση από 404 | άλλο πακέτο / ειδικός κώδικας | Pro διαχείριση ανακατευθύνσεων και παρακολούθηση 404 χωρίς IP |
| Ανιχνευτής μη λειτουργικών συνδέσμων | ειδικός (η εφαρμογή έφτιαξε δικό της) | Pro ανιχνευτής με όρια και δυνατότητα συνέχισης |
| Γράφος schema JSON-LD | builder και δική σας σύνδεση @id | core αλληλοσυνδεδεμένος γράφος Organization/WebSite/WebPage |
| Χάρτες XML | πακέτο χαρτών ιστοτόπου | core μητρώο χαρτών ιστοτόπου (χρησιμοποιεί το spatie/laravel-sitemap) |
| Εισαγωγή WordPress / Yoast / Rank Math | εφάπαξ script | core seo:import-from και εγχειρίδιο διαδικασίας |
| Ποιος συντηρεί τις συνδέσεις | εσείς | η οικογένεια πακέτων, μία γραμμή εκδόσεων |
Τα τρία πράγματα που δεν κάνει καλά ο κώδικας σύνδεσης
1 — Μία συνεκτική οικογένεια, μία γραμμή εκδόσεων. Τρία πακέτα έχουν τρεις συντηρητές, τρία changelog και τρεις ρυθμούς αναβάθμισης· ο κώδικας σύνδεσης υπάρχει για να απορροφά τις αποκλίσεις τους. Τα Rankbeam core, Pro και Filament εκδίδονται συντονισμένα, με κοινό πίνακα υποστήριξης και τεκμηριωμένα όρια αναβάθμισης — μια αλλαγή συμπεριφοράς ανακοινώνεται σε ένα σημείο, δεν ανακαλύπτεται όταν δύο πακέτα διαφωνούν.
2 — Αποθήκευση με επίγνωση γλώσσας ως στήλη, όχι σύμβαση. Το seo_meta είναι πολυμορφικό και οριοθετημένο ανά γλώσσα στο επίπεδο αποθήκευσης. Το πολύγλωσσο SEO είναι μία γραμμή ανά (model, locale), όχι σειριοποιημένο blob ή πίνακας σύνδεσης που θυμηθήκατε να προσθέσετε. Η προτεραιότητα resolver διαβάζει εγγενώς την ενεργή γλώσσα.
3 — Headless απόδοση από έναν resolver. Το Rankbeam επιλύει τυποποιημένο SEOData και αποδίδει τα ίδια δεδομένα ως HTML, payload Head Inertia ή πίνακα JSON — επαληθευμένα έναντι κοινού συμβολαίου απόδοσης για Blade, Inertia (Vue/React/Svelte) και Livewire. Δεν απαιτείται πίνακας διαχείρισης: κάθε δυνατότητα Pro επίσης λειτουργεί headless από το artisan.
Τι ειλικρινά δεν περιλαμβάνει το δωρεάν core
Το Rankbeam είναι open-core και το όριο είναι συνειδητό — ώστε να ξέρετε ακριβώς τι παίρνετε πριν εκτελέσετε composer require:
| Πακέτο | Άδεια | Τι περιλαμβάνει |
|---|---|---|
rankbeam/laravel-seo | MIT, δωρεάν | επίλυση μεταδεδομένων, γράφος schema JSON-LD, χάρτες ιστοτόπου, δωρεάν seo:audit, εργαλεία εισαγωγής |
rankbeam/laravel-seo-filament | MIT, δωρεάν | πεδία/ενότητες φόρμας Filament που γράφουν στο seo_meta |
rankbeam/laravel-seo-pro | εμπορική | σαρώσεις σε ουρά, ταξινομημένα προβλήματα και βαθμολογία 0–100, ανακατευθύνσεις, παρακολούθηση 404, ανιχνευτής μη λειτουργικών συνδέσμων, Search Console, βοήθεια AI, πίνακας ελέγχου Filament |
Άρα πληρώνετε για τον έλεγχο τεχνικού SEO και τη σουίτα παρακολούθησης ιστοτόπου — σαρώσεις, βαθμολογία, ανακατευθύνσεις, ανάκτηση από 404 και ανιχνευτή. Η μηχανή μεταδεδομένων, ο γράφος schema, οι χάρτες ιστοτόπου και ο δωρεάν έλεγχος εντός διεργασίας έχουν άδεια MIT και παραμένουν δωρεάν.
Δύο ιδιότητες που αντέχουν στον έλεγχο:
- Χωρίς έλεγχο άδειας κατά την εκτέλεση. Το Pro αδειοδοτείται ανά έργο κατά την εγκατάσταση· τίποτε δεν επικοινωνεί με εμάς και κανένας διακόπτης απενεργοποίησης δεν μπορεί να σταματήσει την εφαρμογή σας. (Το Pro εκπέμπει τοπική λειτουργική τηλεμετρία για τα δικά σας αρχεία καταγραφής — με δυνατότητα απενεργοποίησης, ποτέ προς εμάς.)
- AI με δικό σας κλειδί. Η προαιρετική βοήθεια AI χρησιμοποιεί το δικό σας κλειδί Anthropic, OpenAI, Google ή τοπικού μοντέλου. Δεν μεσολαβεί διακομιστής μας, ούτε μέτρηση χρεώσιμης χρήσης ή μεταπώληση, και είναι ανενεργή από προεπιλογή.
Πότε το συνδυασμένο stack εξακολουθεί να αρκεί
Αν χρειάζεστε ένα <title> και μία περιγραφή σε λίγες στατικές σελίδες, ένας builder ετικετών χρόνου εκτέλεσης αρκεί. Το Rankbeam αξίζει όταν το SEO αποθηκεύεται, είναι πολύγλωσσο, συνδεδεμένο με μοντέλα, headless και ελέγχεται — τη στιγμή που η σύνδεση μεταξύ πακέτων γίνεται πραγματικός κώδικας που συντηρείτε.
Η μετάβαση με τον χαμηλότερο κίνδυνο: από WordPress
Η εφαρμογή αναφοράς ήταν μεταφορά περίπου 900 σελίδων από WordPress, δηλαδή κοινό με τα περισσότερα να χάσει — χρόνια βελτιστοποίησης Yoast/Rank Math. Το Rankbeam την αντιμετωπίζει ως την ασφαλή διαδρομή, όχι τη δύσκολη:
- Συνύπαρξη. Στήστε το Rankbeam δίπλα στον ζωντανό ιστότοπο· δεν αφαιρείται ακόμη τίποτε.
- Εισαγωγή (πρώτα dry-run). Τα
seo:import-from yoast/rank-math/wordpress-csvδιαβάζουν τίτλους, περιγραφές, κανονικές URL, robots, λέξεις-κλειδιά εστίασης και κοινωνικές παρακάμψεις. Τα εργαλεία εισαγωγής είναι ιδιοδύναμα και συμπληρώνουν μόνο κενά από προεπιλογή — χωρίς--overwriteδιατηρούν μεταδεδομένα που ήδη ορίσατε, και το--dry-runδεν γράφει τίποτε. - Μεταφορά ανακατευθύνσεων. Το core παράγει CSV ανακατευθύνσεων με έκδοση· το
seo-pro:redirects-importτου Pro επικυρώνει κάθε γραμμή (απορρίπτοντας βρόχους, μη ασφαλείς προορισμούς και διπλότυπα) πριν γράψει. - Επαλήθευση πριν διαγράψετε οτιδήποτε. Το
seo:audit --strictείναι έλεγχος αποδοχής CI/μετάβασης που τερματίζει με μη μηδενικό κωδικό για οποιοδήποτε πρόβλημα. Η παλιά βάση WordPress παραμένει ανέπαφη μέχρι να επιλέξετε να τη διαγράψετε.
Η πλήρης διαδικασία είναι στο εγχειρίδιο μεταφοράς WordPress· η αντιστοίχιση ανά πεδίο και ο χειρισμός token βρίσκονται στη μεταφορά από WordPress. Μεταβαίνετε από πακέτο SEO Laravel (ralphjsmit, artesaos, Spatie); Δείτε τον οδηγό μεταφοράς από πακέτα.
Αντέχει σε κλίμακα;
Οι δύο δυσκολότεροι περιορισμοί της εφαρμογής αναφοράς — resolver σε καθένα από τα περίπου 20 χιλ. ημερήσια αιτήματα και ανίχνευση συνδέσμων περίπου 900 σελίδων — έχουν ο καθένας benchmark στη σουίτα δοκιμών. Ελέγχουν ντετερμινιστικά οφέλη (πλήθος ερωτημάτων και όρια εργασιών), όχι χειροκίνητα βελτιστοποιημένους χρόνους ρολογιού:
Cache resolver — επιτυχία σε ζεστή cache δεν αγγίζει τη βάση. Με ενεργή την προαιρετική cache επίλυσης, μια αποθηκευμένη επίλυση παρακάμπτει ολόκληρη την αλυσίδα προτεραιότητας. Το benchmark εκτελεί 25 επιλύσεις του ίδιου μοντέλου:
| Ερωτήματα DB | |
|---|---|
Χωρίς cache (κάθε επίλυση ξαναδιαβάζει seo_meta) | ≥ 25 |
| Επιτυχία σε ζεστή cache | 0 |
Η cache είναι ανενεργή από προεπιλογή και τεκμηριώνεται ως μέσο κλιμάκωσης· η ακύρωση αφαιρεί τις σωστές εγγραφές όταν αλλάζει το seo_meta, πεδίο περιεχομένου ή οι προεπιλογές σας. Δείτε Ρυθμίσεις → cache.
Ανιχνευτής μη λειτουργικών συνδέσμων — με όρια στις 900 σελίδες. Το benchmark ανιχνευτή περνά παραγόμενο σώμα περίπου 900 σελίδων από την πραγματική εργασία:
- Ολοκληρώνεται σε ≥ 18 εργασίες με όρια (όριο 50 σελίδες/εργασία).
- Καμία εργασία δεν επισκέπτεται περισσότερες από το όριο 50 σελίδων της.
- 1.800 σύνδεσμοι ελέγχονται· κάθε μη λειτουργικός προορισμός γίνεται μόνιμο, επιβεβαιωμένο εύρημα μη λειτουργικού συνδέσμου.
Περιορίζεται από πεπερασμένα όρια ανά εκτέλεση και αυστηρό χρονικό προϋπολογισμό ανά εργασία, με επικύρωση SSRF στην ανάκτηση αρχικών διευθύνσεων και σε κάθε βήμα ανακατεύθυνσης, και μίσθωση DB ώστε μόνο μία εκτέλεση ανά πεδίο να είναι ενεργή. Οι λειτουργίες καλύπτονται στον οδηγό ρύθμισης παραγωγής.
Δοκιμασμένο εκεί που λειτουργεί
Ένας πίνακας υποστήριξης για όλη την οικογένεια, όχι τρεις:
- PHP 8.2–8.4 (Laravel 11)· 8.2–8.5 (Laravel 12)· 8.3–8.5 (Laravel 13)
- Laravel 11 / 12 / 13
- Filament 4 / 5
Γιατί λοιπόν να συνδέετε τρία πακέτα;
Όταν το συνδυασμένο stack σάς κοστίζει πάνω από δώδεκα ειδικές κλάσεις για ενσωμάτωση, ρυθμό εκδόσεων που δεν ελέγχετε, ενσωμάτωση απόδοσης ανά stack και χειρισμό γλωσσών που προσθέτετε με το χέρι — και μια συνεκτική, headless οικογένεια με εγγενή υποστήριξη γλωσσών αφαιρεί αυτόν τον κώδικα και έχει αποδειχθεί σε πραγματική εφαρμογή παραγωγής 900 σελίδων / 20 χιλ. επισκέψεων την ημέρα — το συνδυασμένο stack παύει να είναι η ασφαλής προεπιλογή.
Ξεκινήστε με τη Γρήγορη εκκίνηση: από composer require σε πλήρως αποδομένο <head> σε πέντε λεπτά.