
Perpustakaan untuk menganalisis file HTML untuk menunjukkan semua cacat SEO.
Untuk menggunakan CLI, Anda harus menginstal paket secara global.
npm install -g seo-analyzerseo-analyzer -h| Pilihan | Args | Keterangan |
|---|---|---|
| -H, --help | batal | Tunjukkan semua opsi. |
| -v, --version | batal | Versi Aplikasi Tampilan: Menampilkan versi aplikasi saat ini. |
| -iu, --ignoreurls | [Array] | Kecualikan URL spesifik dari analisis: tidak termasuk URL tertentu dari analisis untuk menghindari pemrosesan halaman web yang tidak diinginkan. |
| -Jika, --IgnorEfiles | [Array] | Kecualikan file spesifik dari analisis: memungkinkan mengecualikan file tertentu dari analisis, mencegah pemrosesan mereka. |
| -Ifl, --IgnorEfolders | [Array] | Kecualikan folder spesifik dari analisis: tidak termasuk folder yang ditentukan dari proses analisis, mengabaikan semua file dalam folder tersebut. |
| -u, --urls | [Array] | Lakukan analisis SEO pada URL yang ditentukan: Melakukan analisis SEO untuk URL tertentu, memeriksa kepatuhan mereka dengan kriteria SEO tertentu. |
| -f, -file | [Array] | Lakukan analisis SEO pada file yang ditentukan: Melakukan analisis SEO pada file yang ditentukan, memastikan kepatuhannya terhadap standar dan aturan optimasi. |
| -fl, --folder | [Array] | Lakukan analisis SEO pada folder yang ditentukan: menganalisis semua file dalam folder yang ditentukan untuk kepatuhan dengan aturan dan rekomendasi SEO. |
| -r, - -Rules | [Array] | Terapkan aturan SEO spesifik untuk analisis: Menerapkan aturan SEO spesifik selama analisis, memungkinkan pengguna untuk menyesuaikan proses inspeksi. Secara default jalankan semua aturan default. |
seo-analyzer -u https://maddevs.io https://maddevs.io/blogseo-analyzer -u https://maddevs.io -r titleLengthRule= ' { "min": "500" } 'Gunakan format JSON untuk meneruskan parameter ke aturan.
Untuk menggunakan SEO Analyzer sebagai Tindakan di GitHub, Anda dapat membuat file alur kerja di .github/workflows/analyzer.yml dengan konten berikut:
name : SEO analyzer
on : [push]
jobs :
seo-analyzer :
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v4
- name : Use Node.js
uses : actions/setup-node@v4
with :
node-version : ' 20.x '
- run : npm i -g seo-analyzer
- run : seo-analyzer -u https://maddevs.ioPada langkah terakhir, Anda dapat menentukan URL yang ingin Anda analisis.
Instal ke proyek.
npm install -D seo-analyzerMenyiapkan penganalisa SEO sesederhana mungkin. Ini akan terlihat seperti ini:
const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. inputFiles ( < array > )
.addRule( < function > )
.addRule( < function > )
.outputConsole()
.run();Selanjutnya saya akan menunjukkan beberapa contoh.
const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. inputUrls ( [ 'https://maddevs.io' , 'https://maddevs.io/blog' ] )
. addRule ( 'imgTagWithAltAttributeRule' )
. outputConsole ( )
. run ( ) ; const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. ignoreUrls ( [ '/404' , '/login' ] )
. inputSpaFolder ( '/dist' , 'sitemapindex.xml' , 3000 )
. addRule ( 'imgTagWithAltAttributeRule' )
. outputConsole ( )
. run ( ) ; const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. inputFiles ( [ 'index.html' , 'about.html' ] )
. addRule ( 'imgTagWithAltAttributeRule' )
. outputConsole ( ) ; const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. inputFolders ( [ 'dist' , 'src' ] )
. addRule ( 'imgTagWithAltAttributeRule' )
. outputConsole ( )
. run ( ) ; const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. inputFolders ( [ 'dist' , 'src' ] )
. addRule ( 'imgTagWithAltAttributeRule' )
. outputJson ( json => console . log ( json ) )
. run ( ) ; const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. ignoreFolders ( [ 'src/test' ] )
. ignoreFiles ( [ 'src/404.html' ] )
. inputFolders ( [ 'dist' , 'src' ] )
. addRule ( 'imgTagWithAltAttributeRule' )
. outputObject ( obj => console . log ( obj ) )
. run ( ) ; const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. inputHTMLString (
'<!DOCTYPE html><html><body><h1>title</h1><p>content</p></body></html>'
)
. addRule ( 'imgTagWithAltAttributeRule' )
. outputConsole ( )
. run ( ) ; | Metode | Params | Keterangan |
|---|---|---|
| ketidaktahuan | ['dist/sekitar.html'] | Metode ini mengharapkan array file untuk diabaikan sebelum analisis. |
| Para Pemegang Ignoref | ['Dist/Abaikan'] | Metode ini mengharapkan array folder untuk diabaikan sebelum analisis. |
| abaikan | ['/404'] | Metode ini mengharapkan array URL untuk diabaikan sebelum analisis. |
| Inputfiles | ['dist/index.html'] | Metode ini mengharapkan array file HTML. |
| Inputurls | ['https://maddevs.io'] | Metode ini mengharapkan array URL untuk dianalisis. |
| inputFolder | ['dist', 'src'] | Metode ini mengharapkan array folder dengan file HTML. |
| InputSpafolder | '/dist', 'sitemap.xml', 3000 | Metode ini mengharapkan string folder dengan file yang dibangun spa ke produksi & port untuk menjalankan server. |
| inputhtmlstring | ['contoh'] | Metode ini mengharapkan string yang berisi HTML. |
| addrule | function (dom) {} | Metode ini menambahkan aturan khusus untuk memeriksa file HTML yang masuk. |
| OutputObject | fungsi (obj) {} | Metode ini akan mengembalikan laporan sebagai objek JavaScript. |
| outputjson | function (json) {} | Metode ini akan mengembalikan laporan dalam format JSON. |
| OutputConsole | batal | Metode ini harus digunakan di ujung rantai, karena melengkapi proses di konsol. |
Di bawah ini adalah aturan yang dieksekusi untuk setiap file yang ditransfer ke SEO Analyzer. Mereka dinonaktifkan secara default dan harus ditambahkan.
Memeriksa panjang tag <title> . Dua parameter diterima:
. addRule ( 'titleLengthRule' , { min : 10 , max : 50 } ) Periksa apakah semua tag <img> memiliki atribut alt = "".
. addRule ( 'imgTagWithAltAttributeRule' )<a> Tag dengan aturan atribut rel Periksa apakah semua tag <a> memiliki atribut rel = "".
. addRule ( 'aTagWithRelAttributeRule' )Periksa apakah tag meta dasar yang ditentukan hadir di halaman. Menerima satu parameter:
. addRule ( 'metaBaseRule' , { list : [ 'description' , 'viewport' ] } )Periksa apakah tag meta sosial yang ditentukan ada di halaman. Menerima satu parameter:
. addRule ( 'metaSocialRule' , {
properties : [
'og:url' ,
'og:type' ,
'og:site_name' ,
'og:title' ,
'og:description' ,
'og:image' ,
'og:image:width' ,
'og:image:height' ,
'twitter:card' ,
'twitter:text:title' ,
'twitter:description' ,
'twitter:image:src' ,
'twitter:url'
] ,
} )Periksa apakah ada tautan kanonik di halaman.
. addRule ( 'canonicalLinkRule' )Aturan khusus adalah fungsi yang mengambil argumen pohon dom.
function customRule ( dom ) {
return new Promise ( async ( resolve , reject ) => {
const paragraph = dom . window . document . querySelector ( 'p' ) ;
if ( paragraph ) {
resolve ( '' ) ;
} else {
reject ( 'Not found <p> tags' ) ;
}
} ) ;
}
. . .
. addRule ( customRule )
. . . Lisensi MIT
Hak Cipta (C) 2024 Mad Devs
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
Pemberitahuan hak cipta di atas dan pemberitahuan izin ini harus dimasukkan dalam semua salinan atau bagian substansial dari perangkat lunak.
Perangkat lunak ini disediakan "sebagaimana adanya", tanpa jaminan apa pun, tersurat maupun tersirat, termasuk tetapi tidak terbatas pada jaminan dapat diperjualbelikan, kebugaran untuk tujuan tertentu dan nonpringement. Dalam hal apa pun penulis atau pemegang hak cipta tidak akan bertanggung jawab atas klaim, kerusakan atau tanggung jawab lainnya, baik dalam tindakan kontrak, gugatan atau sebaliknya, timbul dari, di luar atau sehubungan dengan perangkat lunak atau penggunaan atau transaksi lain dalam perangkat lunak.