{"id":2984,"date":"2026-05-06T12:18:48","date_gmt":"2026-05-06T05:18:48","guid":{"rendered":"https:\/\/nlguitar.com\/?page_id=2984"},"modified":"2026-05-09T20:52:46","modified_gmt":"2026-05-09T13:52:46","slug":"rhythm","status":"publish","type":"page","link":"https:\/\/nlguitar.com\/en\/rhythm\/","title":{"rendered":"Rhythm"},"content":{"rendered":"\n    <script src='https:\/\/surikov.github.io\/webaudiofont\/npm\/dist\/WebAudioFontPlayer.js'><\/script>\n    <script src='https:\/\/surikov.github.io\/webaudiofontdata\/sound\/12835_17_JCLive_sf2_file.js'><\/script> \n    <script src='https:\/\/surikov.github.io\/webaudiofontdata\/sound\/12840_1_JCLive_sf2_file.js'><\/script>\n    <script src='https:\/\/surikov.github.io\/webaudiofontdata\/sound\/12842_1_JCLive_sf2_file.js'><\/script>\n    <script src='https:\/\/surikov.github.io\/webaudiofontdata\/sound\/12846_1_JCLive_sf2_file.js'><\/script>\n    <script src='https:\/\/surikov.github.io\/webaudiofontdata\/sound\/12851_1_JCLive_sf2_file.js'><\/script>\n    <script src='https:\/\/surikov.github.io\/webaudiofontdata\/sound\/12856_1_JCLive_sf2_file.js'><\/script>\n    <script src='https:\/\/surikov.github.io\/webaudiofontdata\/sound\/12863_1_JCLive_sf2_file.js'><\/script>\n    <script src='https:\/\/surikov.github.io\/webaudiofontdata\/sound\/12864_1_JCLive_sf2_file.js'><\/script>\n    <script src='https:\/\/surikov.github.io\/webaudiofontdata\/sound\/12875_1_JCLive_sf2_file.js'><\/script>\n    <script src='https:\/\/surikov.github.io\/webaudiofontdata\/sound\/12870_1_JCLive_sf2_file.js'><\/script>\n    <script src='https:\/\/surikov.github.io\/webaudiofontdata\/sound\/12876_1_JCLive_sf2_file.js'><\/script>\n\n    <div class=\"nlg-rhythm-pro\">\n        \n        <div class=\"nlg-section-top\" id=\"style-trigger\">\n            <strong id=\"nlg-style-name\">Pop Rock 1<\/strong>\n            <span class=\"nlg-dropdown-icon\">\u25bc<\/span>\n        <\/div>\n\n        <div class=\"nlg-section-middle\">\n            <div id=\"nlg-beat-container\" class=\"nlg-beat-indicators\">\n                <div class=\"nlg-dot\"><\/div><div class=\"nlg-dot\"><\/div><div class=\"nlg-dot\"><\/div><div class=\"nlg-dot\"><\/div>\n            <\/div>\n            \n            <div class=\"nlg-tempo-controls\">\n                <button class=\"nlg-btn-circle\" id=\"nlg-tempo-minus\">\u2212<\/button>\n                <div class=\"nlg-bpm-display\"><span id=\"nlg-bpm-val\">105<\/span> <small>BPM<\/small><\/div>\n                <button class=\"nlg-btn-circle\" id=\"nlg-tempo-plus\">+<\/button>\n            <\/div>\n        <\/div>\n\n        <div class=\"nlg-section-bottom\">\n            <button id=\"nlg-play-btn\" class=\"nlg-main-play-btn\">\u25b6<\/button>\n            <div class=\"nlg-switches-area\">\n                <div class=\"nlg-switch-group\"><span>Count-In<\/span><label class=\"nlg-switch\"><input type=\"checkbox\" id=\"nlg-check-countin\"><span class=\"nlg-slider\"><\/span><\/label><\/div>\n                <div class=\"nlg-switch-group\"><span>Metronome<\/span><label class=\"nlg-switch\"><input type=\"checkbox\" id=\"nlg-check-metronome\"><span class=\"nlg-slider\"><\/span><\/label><\/div>\n            <\/div>\n        <\/div>\n\n        <div id=\"nlg-style-dropdown\" class=\"nlg-modal-style\">\n            <div class=\"nlg-modal-nav\">\n                <span class=\"nlg-cancel-btn\">Cancel<\/span>\n                <span class=\"nlg-modal-title\">Select Style<\/span>\n                <span style=\"width: 50px;\"><\/span>\n            <\/div>\n            <div class=\"nlg-modal-content\">\n                                    <div class=\"nlg-cat-header\">\u2014 1. POP & ROCK<\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Pop Rock 1\" data-bpm=\"110\" data-dots=\"4\" data-pattern='[[35,42],[],[42],[],[40,42],[],[42],[],[35,42],[],[42],[],[40,42],[],[42],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Pop Rock 1<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Pop Rock 2\" data-bpm=\"110\" data-dots=\"4\" data-pattern='[[35,42],[],[42],[],[40,42],[],[35,42],[],[35,42],[],[42],[],[40,42],[],[42],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Pop Rock 2<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Pop Rock 3\" data-bpm=\"110\" data-dots=\"4\" data-pattern='[[35,42],[],[42],[],[40,42],[],[35,42],[],[42],[],[35,42],[],[40,42],[],[42],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Pop Rock 3<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Hard Rock 1\" data-bpm=\"125\" data-dots=\"4\" data-pattern='[[35,51],[],[51],[],[40,51],[],[51],[],[35,51],[],[35,51],[],[40,51],[],[51],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Hard Rock 1<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Hard Rock 2\" data-bpm=\"125\" data-dots=\"4\" data-pattern='[[35,51],[],[35,51],[],[40,51],[],[51],[],[35,51],[],[35,51],[],[40,51],[],[51],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Hard Rock 2<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Hard Rock 3\" data-bpm=\"125\" data-dots=\"4\" data-pattern='[[51],[],[35,51],[],[40,51],[],[51],[],[35,51],[],[51],[],[40,51],[],[35,51],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Hard Rock 3<\/span>\n                            <\/div>\n                        <\/div>\n                                                        <div class=\"nlg-cat-header\">\u2014 2. METAL<\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Heavy Metal 1\" data-bpm=\"140\" data-dots=\"4\" data-pattern='[[35,51],[],[],[],[40,51],[],[35],[],[51],[],[35],[],[51],[],[],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Heavy Metal 1<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Heavy Metal 2\" data-bpm=\"130\" data-dots=\"4\" data-pattern='[[35,51],[],[35,51],[],[40,51],[35],[51],[],[35,51],[],[35,51],[],[40,51],[],[51],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Heavy Metal 2<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Heavy Metal 3\" data-bpm=\"130\" data-dots=\"4\" data-pattern='[[35,51],[],[35,51],[35],[40,51],[35],[51],[],[35,51],[35],[51],[35],[40,51],[],[51],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Heavy Metal 3<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Heavy Metal 4\" data-bpm=\"135\" data-dots=\"4\" data-pattern='[[35,51],[],[35,51],[35],[40,51],[35],[51],[],[35,51],[],[35,51],[],[40,51],[],[51],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Heavy Metal 4<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Thrash Metal\" data-bpm=\"180\" data-dots=\"4\" data-pattern='[[35,51],[35],[40,51],[35],[35,51],[35],[40,51],[35],[35,51],[35],[40,51],[35],[35,51],[35],[40,51],[35]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Thrash Metal<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Double Kick Metal\" data-bpm=\"130\" data-dots=\"4\" data-pattern='[[35,51],[35],[35,51],[35],[40,51],[35],[35,51],[35],[35,51],[35],[35,51],[35],[40,51],[35],[51],[35]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Double Kick Metal<\/span>\n                            <\/div>\n                        <\/div>\n                                                        <div class=\"nlg-cat-header\">\u2014 3. FUNK & R&B<\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Funk 70s\" data-bpm=\"100\" data-dots=\"4\" data-pattern='[[35,42],[],[42],[35],[40,42],[],[35,42],[],[35,42],[],[42],[],[40,42],[],[40],[42]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Funk 70s<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"James Brown\" data-bpm=\"105\" data-dots=\"4\" data-pattern='[[35,42],[],[35,42],[],[40,42],[],[35,42],[],[42],[],[42],[],[40,42],[],[42],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">James Brown<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Ghost Funk\" data-bpm=\"95\" data-dots=\"4\" data-pattern='[[35,42],[42],[42],[35,42],[40,42],[42],[35,42],[42],[42],[42],[35,42],[42],[40,42],[42],[40],[42]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Ghost Funk<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Motown\" data-bpm=\"115\" data-dots=\"4\" data-pattern='[[35,42],[],[42],[],[40,42],[],[42],[],[35,42],[],[42],[],[40,42],[],[35,42],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Motown<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"12\/8 R&B\" data-bpm=\"65\" data-dots=\"12\" data-pattern='[[35,42],[42],[42],[40,42],[42],[42],[35,42],[42],[35,42],[40,42],[42],[42]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">12\/8 R&B<\/span>\n                            <\/div>\n                        <\/div>\n                                                        <div class=\"nlg-cat-header\">\u2014 4. DANCE<\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Disco\" data-bpm=\"120\" data-dots=\"4\" data-pattern='[[35,42],[],[46],[],[35,40,42],[],[46],[],[35,42],[],[46],[],[35,40,42],[],[46],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Disco<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"House\" data-bpm=\"125\" data-dots=\"4\" data-pattern='[[35,42],[],[46],[],[35,40,42],[],[46],[],[35,42],[],[35,46],[],[35,40,42],[],[35,46],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">House<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Hip Hop\" data-bpm=\"90\" data-dots=\"4\" data-pattern='[[35,42],[],[42],[],[40,42],[],[42],[35],[35,42],[42],[42],[],[40,42],[],[42],[42]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Hip Hop<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Acid Jazz\" data-bpm=\"110\" data-dots=\"4\" data-pattern='[[35,42],[],[42],[],[40,42],[],[35,42],[],[40,42],[],[35,42],[],[40,42],[],[42],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Acid Jazz<\/span>\n                            <\/div>\n                        <\/div>\n                                                        <div class=\"nlg-cat-header\">\u2014 5. LATIN<\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Bossa Nova\" data-bpm=\"135\" data-dots=\"4\" data-pattern='[[35,40,42],[],[42],[],[42],[],[40,42],[35],[35,42],[],[40,42],[],[42],[],[42],[35,40]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Bossa Nova<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Samba\" data-bpm=\"115\" data-dots=\"2\" data-pattern='[[35,42],[],[42],[35],[40,42],[],[42],[35]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Samba<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Cha-Cha-Cha\" data-bpm=\"128\" data-dots=\"4\" data-pattern='[[35,56],[],[56],[],[40,56],[],[40,56],[],[56],[],[35,56],[],[40,56],[],[56],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Cha-Cha-Cha<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Rumba\" data-bpm=\"105\" data-dots=\"4\" data-pattern='[[35,70],[],[63],[],[64],[],[40,70],[],[35,63],[],[64],[],[40,70],[],[42],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Rumba<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Songo\" data-bpm=\"100\" data-dots=\"4\" data-pattern='[[35,56],[],[40],[],[35],[],[56],[],[35,56],[],[40],[],[35],[],[56],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Songo<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Afrocuban 6\/8\" data-bpm=\"120\" data-dots=\"6\" data-pattern='[[35,56],[40],[56],[35,56],[40],[56]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Afrocuban 6\/8<\/span>\n                            <\/div>\n                        <\/div>\n                                                        <div class=\"nlg-cat-header\">\u2014 6. JAZZ<\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Jazz Swing\" data-bpm=\"150\" data-dots=\"4\" data-pattern='[[35,51],[],[51],[40,51],[],[51],[35,51],[],[51],[40,51],[],[51]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Jazz Swing<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Bebop\" data-bpm=\"200\" data-dots=\"4\" data-pattern='[[35,51],[],[40],[51],[],[35,51],[40],[],[51],[35,51],[],[40]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Bebop<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Dixieland\" data-bpm=\"110\" data-dots=\"2\" data-pattern='[[35,42],[],[40,42],[],[35,42],[],[40,42],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Dixieland<\/span>\n                            <\/div>\n                        <\/div>\n                                                        <div class=\"nlg-cat-header\">\u2014 7. BLUES<\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Shuffle Blues\" data-bpm=\"90\" data-dots=\"4\" data-pattern='[[35,51],[],[51],[40,51],[],[51],[35,51],[],[51],[40,51],[],[51]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Shuffle Blues<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"12\/8 Slow Blues\" data-bpm=\"60\" data-dots=\"12\" data-pattern='[[35,51],[51],[51],[40,51],[51],[51],[35,51],[51],[51],[40,51],[51],[51]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">12\/8 Slow Blues<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Boogie Woogie\" data-bpm=\"160\" data-dots=\"4\" data-pattern='[[35,51],[],[51],[],[40,51],[],[51],[],[35,51],[],[51],[],[40,51],[],[51],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Boogie Woogie<\/span>\n                            <\/div>\n                        <\/div>\n                                                        <div class=\"nlg-cat-header\">\u2014 8. WORLD<\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Reggae\" data-bpm=\"75\" data-dots=\"4\" data-pattern='[[],[],[42],[],[35,40,42],[],[42],[],[],[],[42],[],[35,40,42],[],[42],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Reggae<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Valzer (Waltz)\" data-bpm=\"110\" data-dots=\"3\" data-pattern='[[35,42],[],[42],[],[40,42],[],[42],[],[40,42],[],[42],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Valzer (Waltz)<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Tango\" data-bpm=\"120\" data-dots=\"2\" data-pattern='[[35,40],[],[40],[],[40],[],[40],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Tango<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Polka\" data-bpm=\"120\" data-dots=\"2\" data-pattern='[[35,42],[],[40,42],[],[35,42],[],[40,42],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Polka<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Tarantella\" data-bpm=\"140\" data-dots=\"6\" data-pattern='[[35,42],[42],[40,42],[35,42],[42],[40,42]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Tarantella<\/span>\n                            <\/div>\n                        <\/div>\n                                            <div class=\"nlg-style-row\" data-name=\"Foxtrot\" data-bpm=\"135\" data-dots=\"4\" data-pattern='[[35,42],[],[40,42],[],[35,42],[],[40,42],[],[35,42],[],[40,42],[],[35,42],[],[40,42],[]]' onclick=\"handleRowClick(this)\">\n                            <div class=\"nlg-style-left\">\n                                <span class=\"nlg-check-icon\">\u2713<\/span>\n                                <span class=\"nlg-style-label\">Foxtrot<\/span>\n                            <\/div>\n                        <\/div>\n                                                <\/div>\n            <div class=\"nlg-modal-footer\">\n                <button id=\"nlg-modal-select-btn\" class=\"nlg-modal-select-btn\">SELECT<\/button>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <style>\n        .nlg-rhythm-pro { max-width: 400px; margin: 20px auto; background: #fff; border-radius: 20px; position: relative; font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif; box-shadow: 0 15px 40px rgba(0,0,0,0.1); overflow: hidden; border: 1px solid #eee; }\n        \n        .nlg-section-top { \n            padding: 22px 20px; \n            border-bottom: 1px solid #f0f0f0; \n            display: flex; \n            justify-content: center;\n            align-items: center; \n            gap: 10px; \n            cursor: pointer; \n            background: #fafafa; \n            transition: 0.1s;\n        }\n        .nlg-section-top:active { background: #f0f0f0; }\n        #nlg-style-name { font-size: 18px; font-weight: 800; color: #1a202c; }\n        .nlg-dropdown-icon { font-size: 14px; color: #e74c3c; font-weight: 800;}\n\n        .nlg-section-middle { padding: 50px 20px 50px 20px; text-align: center; background: #fff; }\n        \n        .nlg-beat-indicators { \n            display: flex; justify-content: center; flex-wrap: wrap; gap: 15px; \n            margin: 0 auto 50px auto; max-width: 260px; \n        }\n        .nlg-dot { \n            width: 26px; height: 26px; \n            background: #33333322; border-radius: 50%; transition: background 0.1s; \n        }\n        .nlg-dot.active-first { background: #e74c3c !important; box-shadow: 0 0 15px #e74c3c; } \n        .nlg-dot.active-other { background: #000 !important; box-shadow: 0 0 12px #000; } \n        .nlg-dot.counting { background: #3498db; }\n\n        .nlg-tempo-controls { display: flex; justify-content: center; align-items: center; gap: 20px; }\n        .nlg-bpm-display { font-size: 46px; font-weight: 900; min-width: 140px; color: #000; line-height: 1; }\n        .nlg-bpm-display small { font-size: 14px; color: #999; text-transform: uppercase; font-weight: 700;}\n        \n        .nlg-btn-circle { \n            width: 45px; height: 45px; \n            border-radius: 50%; border: 1px solid #ddd; background: #fff; \n            font-size: 24px; cursor: pointer; color: #000; transition: 0.1s; \n            user-select: none; box-shadow: 0 2px 5px rgba(0,0,0,0.05);\n        }\n        .nlg-btn-circle:active { background: #f0f0f0; transform: scale(0.9); }\n\n        .nlg-section-bottom { padding: 30px 20px; background: #fafafa; border-top: 1px solid #f0f0f0; text-align: center; }\n        .nlg-main-play-btn { width: 75px; height: 75px; border-radius: 50%; border: none; background: #1a202c; color: #fff; font-size: 32px; cursor: pointer; margin-bottom: 30px; box-shadow: 0 8px 20px rgba(0,0,0,0.1); transition: 0.1s;}\n        .nlg-main-play-btn:active { transform: scale(0.95); }\n        .nlg-main-play-btn.playing { background: #e74c3c; }\n        \n        .nlg-switches-area { display: flex; flex-direction: column; gap: 15px; }\n        .nlg-switch-group { display: flex; justify-content: space-between; align-items: center; font-size: 15px; font-weight: 700; color: #444; }\n        .nlg-switch { position: relative; width: 48px; height: 26px; }\n        .nlg-switch input { opacity: 0; width: 0; height: 0; }\n        .nlg-slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; transition: .4s; border-radius: 26px; }\n        .nlg-slider:before { position: absolute; content: \"\"; height: 20px; width: 20px; left: 3px; bottom: 3px; background-color: white; transition: .4s; border-radius: 50%; }\n        input:checked + .nlg-slider { background-color: #e74c3c; }\n        input:checked + .nlg-slider:before { transform: translateX(22px); }\n\n        .nlg-modal-style { display: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fff; z-index: 1000; flex-direction: column; }\n        .nlg-modal-nav { display: flex; justify-content: space-between; padding: 18px 20px; border-bottom: 1px solid #eee; align-items: center; background: #fff;}\n        .nlg-modal-title { font-weight: 800; font-size: 16px; color: #000; }\n        .nlg-cancel-btn { color: #e74c3c; cursor: pointer; font-size: 15px; width: 50px; font-weight: 600;}\n        .nlg-modal-content { flex: 1; overflow-y: auto; background: #fff; }\n        .nlg-cat-header { padding: 12px 20px; font-weight: 900; font-size: 13px; background: #fafafa; color: #000; text-transform: uppercase; letter-spacing: 0.5px; }\n        .nlg-style-row { display: flex; justify-content: space-between; align-items: center; padding: 15px 20px; border-bottom: 1px solid #f9f9f9; cursor: pointer; transition: 0.1s;}\n        .nlg-style-left { display: flex; align-items: center; }\n        .nlg-check-icon { color: #e74c3c; visibility: hidden; margin-right: 12px; font-weight: 900; font-size: 16px;}\n        .nlg-style-label { color: #555; font-size: 16px; }\n        .nlg-style-row.active .nlg-check-icon { visibility: visible; }\n        .nlg-style-row.active .nlg-style-label { color: #000; font-weight: 700; }\n        .nlg-modal-footer { padding: 20px; background: #fff; border-top: 1px solid #f0f0f0; }\n        .nlg-modal-select-btn { width: 100%; background: #e74c3c; color: #fff; padding: 16px; border-radius: 30px; font-size: 18px; font-weight: 800; border: none; cursor: pointer; }\n    <\/style>\n\n    <script>\n        var audioCtx = null, player = new WebAudioFontPlayer();\n        var timerID = null;\n        var playState = 'stopped'; \n        var stepIndex = 0;\n        \n        var currentBPM = 105, currentDots = 4;\n        var currentPattern = [[35, 42], [], [42], [], [40, 42], [], [42], [], [35, 42], [], [42], [], [40, 42], [], [42], []];\n        var tempBPM = 105, tempDots = 4, tempPattern = [];\n        var tempRowElement = null;\n\n        var drumMap = { 35:'_drum_35_17_JCLive_sf2_file', 40:'_drum_40_1_JCLive_sf2_file', 42:'_drum_42_1_JCLive_sf2_file', 46:'_drum_46_1_JCLive_sf2_file', 51:'_drum_51_1_JCLive_sf2_file', 56:'_drum_56_1_JCLive_sf2_file', 63:'_drum_63_1_JCLive_sf2_file', 64:'_drum_64_1_JCLive_sf2_file', 75:'_drum_75_1_JCLive_sf2_file', 70:'_drum_70_1_JCLive_sf2_file', 76:'_drum_76_1_JCLive_sf2_file' };\n\n        function playDigitalClick(isFirstBeat) {\n            if (!audioCtx) return;\n            let osc = audioCtx.createOscillator();\n            let gain = audioCtx.createGain();\n            osc.connect(gain);\n            gain.connect(audioCtx.destination);\n            osc.type = 'sine';\n            osc.frequency.setValueAtTime(isFirstBeat ? 1500 : 1000, audioCtx.currentTime);\n            gain.gain.setValueAtTime(1.0, audioCtx.currentTime); \/\/ Volume Metronome = 1.0\n            gain.gain.exponentialRampToValueAtTime(0.001, audioCtx.currentTime + 0.1);\n            osc.start(audioCtx.currentTime);\n            osc.stop(audioCtx.currentTime + 0.1);\n        }\n\n        var pressTimer;\n        function setupTempoBtn(btnId, delta) {\n            let btn = document.getElementById(btnId);\n            const performChange = (val) => {\n                currentBPM = Math.max(40, Math.min(250, parseInt(currentBPM) + val));\n                document.getElementById('nlg-bpm-val').innerText = currentBPM;\n            };\n            const startPress = (e) => {\n                e.preventDefault();\n                let isLong = false;\n                pressTimer = setTimeout(() => {\n                    isLong = true;\n                    performChange(delta * 10);\n                    pressTimer = setInterval(() => performChange(delta * 10), 200);\n                }, 500);\n                const endPress = () => {\n                    clearTimeout(pressTimer); clearInterval(pressTimer);\n                    if (!isLong) performChange(delta);\n                    window.removeEventListener('mouseup', endPress); window.removeEventListener('touchend', endPress);\n                };\n                window.addEventListener('mouseup', endPress); window.addEventListener('touchend', endPress);\n            };\n            btn.addEventListener('mousedown', startPress); btn.addEventListener('touchstart', startPress);\n        }\n        setupTempoBtn('nlg-tempo-plus', 1);\n        setupTempoBtn('nlg-tempo-minus', -1);\n\n        document.getElementById('style-trigger').onclick = function() { \n            document.getElementById('nlg-style-dropdown').style.display = 'flex'; \n            let currentName = document.getElementById('nlg-style-name').innerText;\n            document.querySelectorAll('.nlg-style-row').forEach(r => {\n                if(r.dataset.name === currentName) {\n                    \/\/ CH\u1ec8 SET VISUAL ACTIVE, KH\u00d4NG G\u1eccI handleRowClick \u0110\u1ec2 TR\u00c1NH T\u1ef0 PH\u00c1T NH\u1ea0C\n                    document.querySelectorAll('.nlg-style-row').forEach(x => x.classList.remove('active'));\n                    r.classList.add('active');\n                    tempRowElement = r;\n                    tempBPM = parseInt(r.dataset.bpm);\n                    tempDots = parseInt(r.dataset.dots);\n                    tempPattern = JSON.parse(r.dataset.pattern);\n                    r.scrollIntoView({block: 'center'});\n                }\n            });\n        };\n\n        document.querySelector('.nlg-cancel-btn').onclick = function(e) { \n            e.stopPropagation(); \n            document.getElementById('nlg-style-dropdown').style.display = 'none'; \n            if(playState === 'preview') stopPlayback(); \n        };\n\n        \/\/ KHI CLICK V\u00c0O 1 D\u00d2NG TRONG MODAL\n        function handleRowClick(rowEl) {\n            let isSameRow = (tempRowElement === rowEl);\n            let wasPreviewing = (playState === 'preview');\n\n            document.querySelectorAll('.nlg-style-row').forEach(r => r.classList.remove('active'));\n            rowEl.classList.add('active');\n            \n            tempRowElement = rowEl;\n            tempBPM = parseInt(rowEl.dataset.bpm);\n            tempDots = parseInt(rowEl.dataset.dots);\n            tempPattern = JSON.parse(rowEl.dataset.pattern);\n\n            \/\/ LOGIC ON\/OFF NH\u1ea0C DEMO NGAY KHI CH\u1ea0M\n            if (isSameRow && wasPreviewing) {\n                stopPlayback(); \/\/ Ch\u1ea1m l\u1ea1i d\u00f2ng \u0111ang ph\u00e1t -> D\u1eebng\n            } else {\n                startPreview(); \/\/ Ch\u1ea1m d\u00f2ng m\u1edbi -> \u0110\u1ed5i nh\u1ea1c v\u00e0 Ph\u00e1t lu\u00f4n\n            }\n        }\n\n        document.getElementById('nlg-modal-select-btn').onclick = function(e) {\n            e.stopPropagation(); \n            if (!tempRowElement) return;\n            \n            document.getElementById('nlg-style-name').innerText = tempRowElement.dataset.name;\n            document.getElementById('nlg-bpm-val').innerText = tempBPM;\n            currentBPM = tempBPM;\n            currentDots = tempDots;\n            currentPattern = tempPattern;\n\n            let container = document.getElementById('nlg-beat-container');\n            container.innerHTML = '';\n            for(let i=0; i<currentDots; i++) container.innerHTML += '<div class=\"nlg-dot\"><\/div>';\n\n            document.getElementById('nlg-style-dropdown').style.display = 'none';\n\n            \/\/ N\u1ebfu \u0111ang nghe th\u1eed m\u00e0 b\u1ea5m ch\u1ed1t \u0111\u01a1n -> Ph\u00e1t ti\u1ebfp \u1edf m\u00e0n h\u00ecnh ch\u00ednh m\u01b0\u1ee3t m\u00e0\n            if (playState === 'preview') {\n                playState = 'main';\n                let mainBtn = document.getElementById('nlg-play-btn');\n                mainBtn.innerHTML = '\u25a0';\n                mainBtn.classList.add('playing');\n            }\n        };\n\n        function startPreview() {\n            if (!audioCtx) initAudio();\n            stopPlayback(); playState = 'preview'; stepIndex = 0; playLoop();\n        }\n\n        function initAudio() {\n            audioCtx = new (window.AudioContext || window.webkitAudioContext)();\n            Object.values(drumMap).forEach(v => { if(window[v]) player.loader.decodeAfterLoading(audioCtx, v); });\n            if (audioCtx.state === 'suspended') audioCtx.resume();\n        }\n\n        function stopPlayback() {\n            clearTimeout(timerID);\n            playState = 'stopped';\n            let mainBtn = document.getElementById('nlg-play-btn');\n            mainBtn.innerHTML = '\u25b6'; mainBtn.classList.remove('playing');\n            document.querySelectorAll('.nlg-dot').forEach(d => d.classList.remove('active-first', 'active-other', 'counting'));\n        }\n\n        document.getElementById('nlg-play-btn').onclick = function() {\n            if (!audioCtx) initAudio();\n            \n            if (playState === 'main') {\n                stopPlayback();\n            } else {\n                stopPlayback(); \n                playState = 'main'; stepIndex = 0;\n                this.innerHTML = '\u25a0'; this.classList.add('playing');\n\n                if (document.getElementById('nlg-check-countin').checked) {\n                    countInRemaining = parseInt(currentDots);\n                    playCountIn();\n                } else { playLoop(); }\n            }\n        };\n\n        var countInRemaining = 0;\n        function playCountIn() {\n            if (playState !== 'main') return;\n            let dots = document.querySelectorAll('.nlg-dot');\n            dots.forEach(d => d.classList.remove('active-first', 'active-other'));\n            let currentDot = dots[dots.length - countInRemaining];\n            if(currentDot) currentDot.classList.add('counting');\n            \n            playDigitalClick(countInRemaining === currentDots);\n            countInRemaining--;\n            let beatDuration = (60000 \/ currentBPM);\n\n            if (countInRemaining > 0) { \n                timerID = setTimeout(playCountIn, beatDuration); \n            } else { \n                timerID = setTimeout(function() { \n                    document.querySelectorAll('.nlg-dot').forEach(d => d.classList.remove('counting')); playLoop(); \n                }, beatDuration); \n            }\n        }\n\n        function playLoop() {\n            if (playState === 'stopped') return;\n            \n            let actPattern = (playState === 'preview') ? tempPattern : currentPattern;\n            let actBPM = (playState === 'preview') ? tempBPM : currentBPM;\n            let actDots = (playState === 'preview') ? tempDots : currentDots;\n            let currentStep = stepIndex % actPattern.length;\n            \n            let stepsPerBeat = actPattern.length \/ parseInt(actDots);\n            \n            if (playState === 'main' && currentStep % stepsPerBeat === 0) {\n                let dots = document.querySelectorAll('.nlg-dot');\n                dots.forEach(d => d.classList.remove('active-first', 'active-other'));\n                let dotIdx = Math.floor(currentStep \/ stepsPerBeat);\n                if (dots[dotIdx]) {\n                    if (dotIdx === 0) dots[dotIdx].classList.add('active-first'); \n                    else dots[dotIdx].classList.add('active-other'); \n                }\n                \n                if (document.getElementById('nlg-check-metronome').checked) {\n                    playDigitalClick(dotIdx === 0);\n                }\n            }\n\n            let notes = actPattern[currentStep];\n            notes.forEach(n => { if (window[drumMap[n]]) player.queueWaveTable(audioCtx, audioCtx.destination, window[drumMap[n]], 0, n, 3); });\n            \n            stepIndex++;\n            let stepDuration = (60000 \/ actBPM) \/ stepsPerBeat;\n            timerID = setTimeout(playLoop, stepDuration);\n        }\n    <\/script>\n    \n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2984","page","type-page","status-publish","hentry"],"blocksy_meta":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.5 (Yoast SEO v27.5) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Rhythm - NL Guitar<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/nlguitar.com\/en\/rhythm\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Rhythm\" \/>\n<meta property=\"og:url\" content=\"https:\/\/nlguitar.com\/en\/rhythm\/\" \/>\n<meta property=\"og:site_name\" content=\"NL Guitar\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/nlguitarclass\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-09T13:52:46+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/nlguitar.com\\\/rhythm\\\/\",\"url\":\"https:\\\/\\\/nlguitar.com\\\/rhythm\\\/\",\"name\":\"Rhythm - NL Guitar\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/nlguitar.com\\\/#website\"},\"datePublished\":\"2026-05-06T05:18:48+00:00\",\"dateModified\":\"2026-05-09T13:52:46+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/nlguitar.com\\\/rhythm\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/nlguitar.com\\\/rhythm\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/nlguitar.com\\\/rhythm\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/nlguitar.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Rhythm\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/nlguitar.com\\\/#website\",\"url\":\"https:\\\/\\\/nlguitar.com\\\/\",\"name\":\"NL Guitar\",\"description\":\"Kh\u00f3a h\u1ecdc Guitar Online, Tabs &amp; S\u00e1ch Guitar Chuy\u00ean s\u00e2u\",\"publisher\":{\"@id\":\"https:\\\/\\\/nlguitar.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/nlguitar.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Organization\",\"Place\"],\"@id\":\"https:\\\/\\\/nlguitar.com\\\/#organization\",\"name\":\"NL Guitar\",\"alternateName\":\"NL Guitar Class\",\"url\":\"https:\\\/\\\/nlguitar.com\\\/\",\"logo\":{\"@id\":\"https:\\\/\\\/nlguitar.com\\\/rhythm\\\/#local-main-organization-logo\"},\"image\":{\"@id\":\"https:\\\/\\\/nlguitar.com\\\/rhythm\\\/#local-main-organization-logo\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/nlguitarclass\\\/\"],\"description\":\"Chuy\u00ean cung c\u1ea5p c\u00e1c kho\u00e1 h\u1ecdc Guitar chuy\u00ean nghi\u1ec7p, Guitar Tabs, S\u00e1ch v\u00e0 Gi\u00e1o Tr\u00ecnh\",\"telephone\":[],\"openingHoursSpecification\":[{\"@type\":\"OpeningHoursSpecification\",\"dayOfWeek\":[\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\",\"Sunday\"],\"opens\":\"09:00\",\"closes\":\"17:00\"}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/nlguitar.com\\\/rhythm\\\/#local-main-organization-logo\",\"url\":\"https:\\\/\\\/nlguitar.com\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/cropped-Logo-26-2.png\",\"contentUrl\":\"https:\\\/\\\/nlguitar.com\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/cropped-Logo-26-2.png\",\"width\":512,\"height\":512,\"caption\":\"NL Guitar\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Rhythm - NL Guitar","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/nlguitar.com\/en\/rhythm\/","og_locale":"en_US","og_type":"article","og_title":"Rhythm","og_url":"https:\/\/nlguitar.com\/en\/rhythm\/","og_site_name":"NL Guitar","article_publisher":"https:\/\/www.facebook.com\/nlguitarclass\/","article_modified_time":"2026-05-09T13:52:46+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/nlguitar.com\/rhythm\/","url":"https:\/\/nlguitar.com\/rhythm\/","name":"Rhythm - NL Guitar","isPartOf":{"@id":"https:\/\/nlguitar.com\/#website"},"datePublished":"2026-05-06T05:18:48+00:00","dateModified":"2026-05-09T13:52:46+00:00","breadcrumb":{"@id":"https:\/\/nlguitar.com\/rhythm\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/nlguitar.com\/rhythm\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/nlguitar.com\/rhythm\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/nlguitar.com\/"},{"@type":"ListItem","position":2,"name":"Rhythm"}]},{"@type":"WebSite","@id":"https:\/\/nlguitar.com\/#website","url":"https:\/\/nlguitar.com\/","name":"NL Guitar","description":"Kh\u00f3a h\u1ecdc Guitar Online, Tabs &amp; S\u00e1ch Guitar Chuy\u00ean s\u00e2u","publisher":{"@id":"https:\/\/nlguitar.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/nlguitar.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Organization","Place"],"@id":"https:\/\/nlguitar.com\/#organization","name":"NL Guitar","alternateName":"NL Guitar Class","url":"https:\/\/nlguitar.com\/","logo":{"@id":"https:\/\/nlguitar.com\/rhythm\/#local-main-organization-logo"},"image":{"@id":"https:\/\/nlguitar.com\/rhythm\/#local-main-organization-logo"},"sameAs":["https:\/\/www.facebook.com\/nlguitarclass\/"],"description":"Chuy\u00ean cung c\u1ea5p c\u00e1c kho\u00e1 h\u1ecdc Guitar chuy\u00ean nghi\u1ec7p, Guitar Tabs, S\u00e1ch v\u00e0 Gi\u00e1o Tr\u00ecnh","telephone":[],"openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],"opens":"09:00","closes":"17:00"}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/nlguitar.com\/rhythm\/#local-main-organization-logo","url":"https:\/\/nlguitar.com\/wp-content\/uploads\/2026\/04\/cropped-Logo-26-2.png","contentUrl":"https:\/\/nlguitar.com\/wp-content\/uploads\/2026\/04\/cropped-Logo-26-2.png","width":512,"height":512,"caption":"NL Guitar"}]}},"_hostinger_reach_plugin_has_subscription_block":false,"_hostinger_reach_plugin_is_elementor":false,"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/nlguitar.com\/en\/wp-json\/wp\/v2\/pages\/2984","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nlguitar.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/nlguitar.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/nlguitar.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/nlguitar.com\/en\/wp-json\/wp\/v2\/comments?post=2984"}],"version-history":[{"count":6,"href":"https:\/\/nlguitar.com\/en\/wp-json\/wp\/v2\/pages\/2984\/revisions"}],"predecessor-version":[{"id":3002,"href":"https:\/\/nlguitar.com\/en\/wp-json\/wp\/v2\/pages\/2984\/revisions\/3002"}],"wp:attachment":[{"href":"https:\/\/nlguitar.com\/en\/wp-json\/wp\/v2\/media?parent=2984"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}