Menunjukkan keharusan dalam Bahasa Inggris disebut dengan Showing Obligation. Hayoo, kamu sudah tahu, belum? Yuk, baca pembahasannya pada artikel Bahasa Inggris kelas 8 berikut!
—
Teman-teman, pernah nggak, kamu bercakap-cakap dengan temanmu, lalu kamu mengucapkan kalimat yang menunjukkan suatu keharusan. Misalnya, kamu bilang kepada temanmu bahwa kamu harus segera pergi atau kamu harus segera pulang ke rumah karena hari sudah mulai malam.
Wah, udah kayak lagu aja, tuh!
Matahari terbenam, hari mulai malam~
Terdengar burung hantu, suaranya merdu~
Kukuk, kukuk, kukukukukukuk~ (Sumber: giphy.com)
Heyyy, malah nyanyi! Sekarang waktunya belajar Bahasa Inggris, tau!
Nah, dalam Bahasa Inggris, menyatakan atau mengekspresikan suatu keharusan disebut dengan Showing Obligation.
Apa itu Showing Obligation?
Pengertian Showing Obligation
Showing Obligation merupakan sebuah ekspresi dalam Bahasa Inggris yang digunakan untuk menyatakan sebuah keharusan atau sesuatu yang harus kamu lakukan sebagai suatu kewajiban. Supaya kamu lebih paham maksudnya, coba perhatikan contoh percakapan di bawah ini!
Dalam percakapan antara Kylie dan Drake di atas, terdapat beberapa pernyataan yang menunjukkan keharusan untuk melakukan sesuatu. Drake menggunakan ungkapan untuk menunjukkan keharusan dengan mengatakan “I have to complete all this week’s tasks.” dan “I must leave soon.”
Baca Juga: Cari Tahu Yuk Contoh-Contoh Kalimat Modals of Ability!
Sekarang kita coba bahas pola Showing Obligation, yuk!
Pola Kalimat atau Rumus Showing Obligation
Dalam Showing Obligation, kamu bisa menggunakan kata must atau have to/has to. Bedanya apa, tuh? Yuk, kita bahas satu per satu!
a. Menggunakan Must
Kata must yang bermakna ‘harus’ pada kalimat Showing Obligation digunakan untuk menyampaikan keharusan/kewajiban yang berasal dari rasa tanggung jawab dalam diri sendiri.
Contohnya, “I must keep the house clean” yang artinya “aku harus menjaga rumah agar tetap bersih”. Nah, pada pernyataan tersebut, “aku” melakukan kegiatan menjaga kebersihan rumah berdasarkan rasa tanggung jawab dari diri sendiri, ya.
Nah, untuk pola kalimat Showing Obligation menggunakan must, bisa kamu lihat pada infografik berikut.
Contoh kalimat Showing Obligation dengan menggunakan must di antaranya:
-
Teddy must tidy up his bed. (Teddy harus membersihkan tempat tidurnya).
-
I must study hard! (Aku harus giat belajar).
-
I must wash the dishes after eat. (Aku harus mencuci piring setelah makan).
-
You must come on time to the school. It is your obligation. (Kamu harus datang tepat waktu ke sekolah. Itu adalah kewajibanmu).
-
You must throw your trash in the bin. (Kamu harus membuang sampahmu di tempat sampah).
-
I must go home on time. (Aku harus pulang tepat waktu).
-
I must study for the English exam. (Aku harus belajar untuk ujian Bahasa Inggris).
-
It rains outside, you must use the umbrella. (Di luar sedang hujan, kamu harus menggunakan payung).
-
I must eat three times in a day. (Aku harus makan tiga kali dalam sehari).
-
She must help her mother after school. (Dia harus membantu ibunya sepulang sekolah).
Baca Juga: Bagaimana Cara Mengungkapan Showing Preference untuk Menunjukkan Selera?
b. Menggunakan Have to atau Has to
Have to atau has to digunakan untuk menyampaikan keharusan/kewajiban yang disebabkan oleh aturan dari pihak luar (di luar diri sendiri). Misalnya dari sekolah atau hukum yang berlaku di negara kita.
Contohnya, “You have to wear a white-blue uniform to school.” (Kamu harus mengenakan seragam putih biru ke sekolah). Pada pernyataan tersebut, keharusan untuk memakai seragam putih biru di sekolah berasal dari peraturan sekolah itu sendiri ya, gais.
Next, berikut adalah pola kalimat Showing Obligation menggunakan have to/has to.
Psstt.. kamu harus ingat! Have to digunakan untuk subjek seperti I, You, They, We, serta bila subjeknya jamak (plural subject). Sedangkan has to digunakan untuk subjek seperti He, She, It, dan bila subjeknya tunggal (singular subject).
Contoh kalimat Showing Obligation menggunakan have to/has to:
-
We have to stay at home during the pandemic. (Kita harus tetap di rumah selama pandemi).
-
All students have to wear uniform at school. (Seluruh siswa harus memakai seragam di sekolah).
-
We have to obey traffic rules when driving. (Kita harus mematuhi rambu lalu lintas saat berkendara).
-
Visitors have to wear a face mask at the hospital. (Pengunjung harus memakai masker saat di rumah sakit).
-
The students have to listen to their teachers. (Para murid harus mendengarkan guru mereka).
-
All students have to participate in the study tour. (Seluruh siswa harus mengikuti studi wisata).
-
She has to clean her room before her parents go home. (Dia harus membersihkan kamarnya sebelum orang tuanya pulang ke rumah).
-
Dimas has to finish his homework tonight. (Dimas harus menyelesaikan PR nya malam ini).
-
If you have a pet, you have to feed it everyday. (Jika kamu punya hewan peliharaan, kamu harus memberi makannya setiap hari).
-
My dad has to go back to work because there was an emergency. (Ayahku harus kembali ke kantor karena ada keadaan darurat).
Perlu kamu ingat kembali bahwa dalam Showing Obligation, verb yang digunakan selalu Verb 1, ya!
Baca Juga: Perbedaan Can dan Could dalam Showing Ability
Bagaimana, teman-teman? Sudah paham mengenai materi Showing Obligation ini? Jadi, ada dua cara untuk mengungkapkan keharusan/kewajiban dalam bahasa Inggris (Showing Obligation), yaitu menggunakan must dan have to/has to.
Yuk, tetap semangat belajar supaya makin jago! Nah, biar nggak ketinggalan materi-materi penting, kamu bisa banget berlangganan ruangbelajar sekarang juga. Di situ, kamu bisa akses ke materi-materi seru yang bikin belajarmu jadi lebih asyik! Yuk, daftar sekarang!
Referensi:
Wachidah, S. dkk. (2015). Bahasa Inggris untuk SMP/MTs Kelas 9: Think Globally Act Locally. Jakarta: Pusat Kurikulum dan Perbukuan, Balitbang, Kemendikbud.
Sumber Gambar:
GIF ‘Owl’ [Daring]. Tautan: https://giphy.com/gifs/owl-bird-gRb1341rklANq (Diakses: 6 September 2021)
Artikel ini telah diperbarui pada 24 Agustus 2022.
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta author="viewport" content="Ruangguru Tech Team">
<title>Pahami Pengertian Showing Obligation, Pola & Contohnya | Bahasa Inggris Kelas 8</title>
<link rel="shortcut icon" href="https://cdn-web-2.ruangguru.com/homepage-web/public/assets/icons/favicon.id.ico" type="image/x-icon" />
<!-- <link rel="profile" href="https://gmpg.org/xfn/11"> -->
<link rel="pingback" href="https://www.ruangguru.com/blog/xmlrpc.php">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://www.ruangguru.com/blog/wp-content/themes/ruangguru/css/bootstrap.min.css">
<link rel="stylesheet" href="https://www.ruangguru.com/blog/wp-content/themes/ruangguru/css/style.css">
<script src="https://www.ruangguru.com/blog/wp-content/themes/ruangguru/js/jquery-3.6.3.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
<script src="https://www.ruangguru.com/blog/wp-content/themes/ruangguru/js/bootstrap.min.js"></script>
<script src="https://www.ruangguru.com/blog/wp-content/themes/ruangguru/js/main.js"></script>
<script src="https://www.ruangguru.com/blog/wp-content/themes/ruangguru/js/side-banner.js"></script>
<!-- Google Tag Manager -->
<meta name="google-site-verification" content="VJAn1g6wmtTZPpTXh-B4xoSFEkUi5jcV74xQSr6jnOM" />
<!-- <script>
document.querySelector('meta[name="author"]').setAttribute("content", "Ruangguru Tech Team");
</script> -->
<meta name="publisher" content="PT Ruang Raya Indonesia">
<!-- Google Tag Manager -->
<script>
(function(w, d, s, l, i) {
w[l] = w[l] || [];
w[l].push({
'gtm.start': new Date().getTime(),
event: 'gtm.js'
});
var f = d.getElementsByTagName(s)[0],
j = d.createElement(s),
dl = l != 'dataLayer' ? '&l=' + l : '';
j.async = true;
j.src =
'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
f.parentNode.insertBefore(j, f);
})(window, document, 'script', 'dataLayer', 'GTM-PVNLZFT');
</script>
<!-- End Google Tag Manager -->
<meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' />
<style>img:is([sizes="auto" i], [sizes^="auto," i]) { contain-intrinsic-size: 3000px 1500px }</style>
<!-- This site is optimized with the Yoast SEO plugin v25.9 - https://yoast.com/wordpress/plugins/seo/ -->
<meta name="description" content="Menunjukkan keharusan dalam Bahasa Inggris disebut dengan Showing Obligation. Hayoo, kamu sudah tahu, belum? Yuk, baca pembahasannya pada artikel Bahasa" />
<link rel="canonical" href="https://www.ruangguru.com/blog/showing-obligation" />
<meta property="og:locale" content="en_US" />
<meta property="og:type" content="article" />
<meta property="og:title" content="Pahami Pengertian Showing Obligation, Pola & Contohnya | Bahasa Inggris Kelas 8" />
<meta property="og:description" content="Menunjukkan keharusan dalam Bahasa Inggris disebut dengan Showing Obligation. Hayoo, kamu sudah tahu, belum? Yuk, baca pembahasannya pada artikel Bahasa" />
<meta property="og:url" content="https://www.ruangguru.com/blog/showing-obligation" />
<meta property="og:site_name" content="Belajar Gratis di Rumah Kapan Pun! | Blog Ruangguru" />
<meta property="article:publisher" content="https://www.facebook.com/ruanggurucom/" />
<meta property="article:published_time" content="2022-08-24T05:30:00+00:00" />
<meta property="article:modified_time" content="2023-10-06T16:05:09+00:00" />
<meta name="author" content="Kenya Swawikanti" />
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:creator" content="@ruangguru" />
<meta name="twitter:site" content="@ruangguru" />
<meta name="twitter:label1" content="Written by" />
<meta name="twitter:data1" content="Kenya Swawikanti" />
<meta name="twitter:label2" content="Est. reading time" />
<meta name="twitter:data2" content="5 minutes" />
<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://www.ruangguru.com/blog/showing-obligation","url":"https://www.ruangguru.com/blog/showing-obligation","name":"Pahami Pengertian Showing Obligation, Pola & Contohnya | Bahasa Inggris Kelas 8","isPartOf":{"@id":"https://www.ruangguru.com/blog/#website"},"primaryImageOfPage":{"@id":"https://www.ruangguru.com/blog/showing-obligation#primaryimage"},"image":{"@id":"https://www.ruangguru.com/blog/showing-obligation#primaryimage"},"thumbnailUrl":"https://cdn-web.ruangguru.com/landing-pages/assets/hs/Showing%20Obligation%20dan%20Contohnya.jpg","datePublished":"2022-08-24T05:30:00+00:00","dateModified":"2023-10-06T16:05:09+00:00","author":{"@id":"https://www.ruangguru.com/blog/#/schema/person/2961333999f86a82f666cdabdd06fc14"},"description":"Menunjukkan keharusan dalam Bahasa Inggris disebut dengan Showing Obligation. Hayoo, kamu sudah tahu, belum? Yuk, baca pembahasannya pada artikel Bahasa","breadcrumb":{"@id":"https://www.ruangguru.com/blog/showing-obligation#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https://www.ruangguru.com/blog/showing-obligation"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https://www.ruangguru.com/blog/showing-obligation#primaryimage","url":"https://cdn-web.ruangguru.com/landing-pages/assets/hs/Showing%20Obligation%20dan%20Contohnya.jpg","contentUrl":"https://cdn-web.ruangguru.com/landing-pages/assets/hs/Showing%20Obligation%20dan%20Contohnya.jpg"},{"@type":"BreadcrumbList","@id":"https://www.ruangguru.com/blog/showing-obligation#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://www.ruangguru.com/blog"},{"@type":"ListItem","position":2,"name":"Pahami Pengertian Showing Obligation, Pola & Contohnya | Bahasa Inggris Kelas 8"}]},{"@type":"WebSite","@id":"https://www.ruangguru.com/blog/#website","url":"https://www.ruangguru.com/blog/","name":"Ruangguru Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.ruangguru.com/blog/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https://www.ruangguru.com/blog/#/schema/person/2961333999f86a82f666cdabdd06fc14","name":"Kenya Swawikanti","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https://www.ruangguru.com/blog/#/schema/person/image/","url":"https://secure.gravatar.com/avatar/?s=96&d=mm&r=g","contentUrl":"https://secure.gravatar.com/avatar/?s=96&d=mm&r=g","caption":"Kenya Swawikanti"},"url":"https://www.ruangguru.com/blog/author/kenya-swawikanti"}]}</script>
<!-- / Yoast SEO plugin. -->
<link rel="alternate" type="application/rss+xml" title="Belajar Gratis di Rumah Kapan Pun! | Blog Ruangguru » Pahami Pengertian Showing Obligation, Pola & Contohnya | Bahasa Inggris Kelas 8 Comments Feed" href="https://www.ruangguru.com/blog/showing-obligation/feed" />
<script type="text/javascript">
/* <![CDATA[ */
window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.1.0\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.1.0\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/www.ruangguru.com\/blog\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.8.1"}};
/*! This file is auto-generated */
!function(i,n){var o,s,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===r[t]})}function u(e,t,n){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!n(e,"\ud83d\udc26\u200d\ud83d\udd25","\ud83d\udc26\u200b\ud83d\udd25")}return!1}function f(e,t,n){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement("canvas"),a=r.getContext("2d",{willReadFrequently:!0}),o=(a.textBaseline="top",a.font="600 32px Arial",{});return e.forEach(function(e){o[e]=t(a,e,n)}),o}function t(e){var t=i.createElement("script");t.src=e,t.defer=!0,i.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",s=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){i.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"}),a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=function(e){c(n=e.data),a.terminate(),t(n)})}catch(e){}c(n=f(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings);
/* ]]> */
</script>
<style id='wp-emoji-styles-inline-css' type='text/css'>
img.wp-smiley, img.emoji {
display: inline !important;
border: none !important;
box-shadow: none !important;
height: 1em !important;
width: 1em !important;
margin: 0 0.07em !important;
vertical-align: -0.1em !important;
background: none !important;
padding: 0 !important;
}
</style>
<link rel='stylesheet' id='wp-block-library-css' href='https://www.ruangguru.com/blog/wp-includes/css/dist/block-library/style.min.css?ver=6.8.1' type='text/css' media='all' />
<style id='classic-theme-styles-inline-css' type='text/css'>
/*! This file is auto-generated */
.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}
</style>
<style id='global-styles-inline-css' type='text/css'>
:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}
:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}
:root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;}
</style>
<link rel="https://api.w.org/" href="https://www.ruangguru.com/blog/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.ruangguru.com/blog/wp-json/wp/v2/posts/1936" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.ruangguru.com/blog/xmlrpc.php?rsd" />
<meta name="generator" content="WordPress 6.8.1" />
<link rel='shortlink' href='https://www.ruangguru.com/blog/?p=1936' />
<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.ruangguru.com/blog/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.ruangguru.com%2Fblog%2Fshowing-obligation" />
<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.ruangguru.com/blog/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.ruangguru.com%2Fblog%2Fshowing-obligation&format=xml" />
</head>
<body class="wp-singular post-template-default single single-post postid-1936 single-format-standard wp-theme-ruangguru">
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-M28L4XJ" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
<header class="header">
<div class="container">
<nav class="navbar navbar-expand-lg header-inner">
<div style="display:flex; gap:12px;">
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<img alt="menu" src="https://cdn-web-2.ruangguru.com/file-uploader/lp/beba4a70-3971-41be-9364-f9ee6857b192.svg" loading="lazy" width="30px" height="32px" />
</button>
<a href="https://ruangguru.com" class="header-logo">
<img loading="lazy" src="https://cdn-web-2.ruangguru.com/static/logo-ruangguru.png" alt="Logo">
</a>
</div>
<form class="form-inline my-2 my-lg-0" role="search" method="get" id="searchformmobile" class="searchform" action="https://www.ruangguru.com/blog/">
<div>
<label class="screen-reader-text" for="s">Search for:</label>
<div class="input-group input-group-sm">
<span class="input-group-text" id="search-2"><img width="20px" height="20px" loading="lazy" src="https://cdn-web-2.ruangguru.com/file-uploader/lp/baf38d7b-226b-4374-8b2b-e49766395871.png" alt="" /></span>
<input type="text" value="" name="s" class="form-control" placeholder="Cari artikel di sini!" aria-label="Cari artikel di sini!" aria-describedby="Cari artikel di sini!">
</div>
</div>
</form>
<div class="collapse navbar-collapse dropdown-hover-all" id="navbarSupportedContent">
<div class="d-lg-none navbar-head-collapse">
<a href="https://ruangguru.com" class="header-logo">
<img loading="lazy" src="https://cdn-web-2.ruangguru.com/static/logo-ruangguru.png" alt="Logo">
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
X
</button>
</div>
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
<li class="nav-item">
<a class="nav-link" href="https://www.ruangguru.com/blog/">Blog</a>
</li>
<li class="nav-item
dropdown dropdown-hover">
<p class="nav-link dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Konsep & Tips Pelajaran </p>
<div class="dropdown-menu" aria-labelledby="nav1">
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu0" href="https://www.ruangguru.com/blog/c/bahasa-indonesia" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Bahasa Indonesia</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu0">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-sd-kelas-4">Kelas 4</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-sd-kelas-5">Kelas 5</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-sd-kelas-6">Kelas 6</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu1" href="https://www.ruangguru.com/blog/c/bahasa-inggris" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Bahasa Inggris</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu1">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-sd-kelas-6">Kelas 6</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu2" href="https://www.ruangguru.com/blog/c/biologi" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Biologi</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu2">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/biologi/biologi-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/biologi/biologi-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/biologi/biologi-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/biologi/biologi-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/biologi/biologi-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/biologi/biologi-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu3" href="https://www.ruangguru.com/blog/c/ekonomi" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Ekonomi</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu3">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ekonomi/ekonomi-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ekonomi/ekonomi-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ekonomi/ekonomi-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ekonomi/ekonomi-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ekonomi/ekonomi-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ekonomi/ekonomi-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu4" href="https://www.ruangguru.com/blog/c/fisika" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Fisika</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu4">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/fisika/fisika-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/fisika/fisika-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/fisika/fisika-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/fisika/fisika-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/fisika/fisika-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/fisika/fisika-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu5" href="https://www.ruangguru.com/blog/c/geografi" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Geografi</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu5">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/geografi/geografi-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/geografi/geografi-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/geografi/geografi-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/geografi/geografi-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/geografi/geografi-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/geografi/geografi-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu6" href="https://www.ruangguru.com/blog/c/ipa-terpadu" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">IPA Terpadu</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu6">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ipa-terpadu/ipa-terpadu-sd-kelas-4">Kelas 4</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ipa-terpadu/ipa-terpadu-sd-kelas-5">Kelas 5</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ipa-terpadu/ipa-terpadu-sd-kelas-6">Kelas 6</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu7" href="https://www.ruangguru.com/blog/c/ips-terpadu" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">IPS Terpadu</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu7">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ips-terpadu/ips-terpadu-sd-kelas-4">Kelas 4</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ips-terpadu/ips-terpadu-sd-kelas-5">Kelas 5</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ips-terpadu/ips-terpadu-sd-kelas-6">Kelas 6</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu8" href="https://www.ruangguru.com/blog/c/kimia" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Kimia</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu8">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/kimia/kimia-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/kimia/kimia-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/kimia/kimia-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu9" href="https://www.ruangguru.com/blog/c/matematika" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Matematika</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu9">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-sd-kelas-4">Kelas 4</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-sd-kelas-5">Kelas 5</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-sd-kelas-6">Kelas 6</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu10" href="https://www.ruangguru.com/blog/c/sejarah" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Sejarah</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu10">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sejarah/sejarah-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sejarah/sejarah-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sejarah/sejarah-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sejarah/sejarah-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sejarah/sejarah-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sejarah/sejarah-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu11" href="https://www.ruangguru.com/blog/c/sosiologi" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Sosiologi</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu11">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sosiologi/sosiologi-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sosiologi/sosiologi-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sosiologi/sosiologi-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sosiologi/sosiologi-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sosiologi/sosiologi-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sosiologi/sosiologi-sma-kelas-12">Kelas 12</a>
</div>
</div>
</div>
</li>
<li class="nav-item
dropdown dropdown-hover">
<p class="nav-link dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Latihan Soal </p>
<div class="dropdown-menu" aria-labelledby="nav2">
<a class="dropdown-item" id="nav2-menu0" href="https://www.ruangguru.com/blog/c/latihan-soal/sd-kelas-4">Latihan Soal Kelas 4</a>
<a class="dropdown-item" id="nav2-menu1" href="https://www.ruangguru.com/blog/c/latihan-soal/sd-kelas-5">Latihan Soal Kelas 5</a>
<a class="dropdown-item" id="nav2-menu2" href="https://www.ruangguru.com/blog/c/latihan-soal/sd-kelas-6">Latihan Soal Kelas 6</a>
<a class="dropdown-item" id="nav2-menu3" href="https://www.ruangguru.com/blog/c/latihan-soal/smp-kelas-7">Latihan Soal Kelas 7</a>
<a class="dropdown-item" id="nav2-menu4" href="https://www.ruangguru.com/blog/c/latihan-soal/smp-kelas-8">Latihan Soal Kelas 8</a>
<a class="dropdown-item" id="nav2-menu5" href="https://www.ruangguru.com/blog/c/latihan-soal/smp-kelas-9">Latihan Soal Kelas 9</a>
<a class="dropdown-item" id="nav2-menu6" href="https://www.ruangguru.com/blog/c/latihan-soal/sma-kelas-10">Latihan Soal Kelas 10</a>
<a class="dropdown-item" id="nav2-menu7" href="https://www.ruangguru.com/blog/c/latihan-soal/sma-kelas-11">Latihan Soal Kelas 11</a>
<a class="dropdown-item" id="nav2-menu8" href="https://www.ruangguru.com/blog/c/latihan-soal/sma-kelas-12">Latihan Soal Kelas 12</a>
</div>
</li>
<li class="nav-item
dropdown dropdown-hover">
<p class="nav-link dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Pojok Kampus </p>
<div class="dropdown-menu" aria-labelledby="nav3">
<a class="dropdown-item" id="nav3-menu0" href="https://www.ruangguru.com/blog/c/info-beasiswa">Info Beasiswa</a>
<a class="dropdown-item" id="nav3-menu1" href="https://www.ruangguru.com/blog/c/kampus-dan-jurusan">Kampus dan Jurusan</a>
<a class="dropdown-item" id="nav3-menu2" href="https://www.ruangguru.com/blog/c/seleksi-masuk">Seleksi Masuk</a>
</div>
</li>
<li class="nav-item
">
<a class="nav-link
" href=" https://www.ruangguru.com/blog/c/fakta-seru" id="nav4"
>
Fakta Seru </a>
</li>
<li class="nav-item
dropdown dropdown-hover">
<p class="nav-link dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Dunia Kata </p>
<div class="dropdown-menu" aria-labelledby="nav5">
<a class="dropdown-item" id="nav5-menu0" href="https://www.ruangguru.com/blog/tag/cerpen">Cerpen</a>
<a class="dropdown-item" id="nav5-menu1" href="https://www.ruangguru.com/blog/tag/resensi-buku">Resensi Buku</a>
</div>
</li>
<li class="nav-item
">
<a class="nav-link
" href=" https://www.ruangguru.com/blog/tag/for-kids" id="nav6"
>
For Kids </a>
</li>
<li class="nav-item
dropdown dropdown-hover">
<p class="nav-link dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Seputar Ruangguru </p>
<div class="dropdown-menu" aria-labelledby="nav7">
<a class="dropdown-item" id="nav7-menu0" href="https://www.ruangguru.com/blog/tag/info-ruangguru">Info Ruangguru</a>
<a class="dropdown-item" id="nav7-menu1" href="https://www.ruangguru.com/blog/tag/siaran-pers">Siaran Pers</a>
<a class="dropdown-item" id="nav7-menu2" href="https://www.ruangguru.com/blog/tag/cerita-juara">Cerita Juara</a>
<a class="dropdown-item" id="nav7-menu3" href="https://www.ruangguru.com/blog/tag/seputar-guru">Seputar Guru</a>
<a class="dropdown-item" id="nav7-menu4" href="https://www.ruangguru.com/blog/tag/lifeatruangguru">Life at Ruangguru</a>
</div>
</li>
</ul>
<form class="form-inline my-2 my-lg-0" role="search" method="get" id="searchform" class="searchform" action="https://www.ruangguru.com/blog/">
<div>
<label class="screen-reader-text" for="s">Search for:</label>
<div class="input-group input-group-sm">
<span class="input-group-text" id="search-2"><img width="10" height="10" loading="lazy" src="https://cdn-web-2.ruangguru.com/file-uploader/lp/baf38d7b-226b-4374-8b2b-e49766395871.png" alt="" /></span>
<input type="text" value="" name="s" class="form-control" placeholder="Cari artikel di sini!" aria-label="Cari artikel di sini!" aria-describedby="Cari artikel di sini!">
</div>
</div>
</form>
</div>
</nav>
<script>
(function($bs) {
const CLASS_NAME = 'has-child-dropdown-show';
$bs.Dropdown.prototype.toggle = function(_orginal) {
return function() {
document.querySelectorAll('.' + CLASS_NAME).forEach(function(e) {
e.classList.remove(CLASS_NAME);
});
let dd = this._element.closest('.dropdown').parentNode.closest('.dropdown');
for (; dd && dd !== document; dd = dd.parentNode.closest('.dropdown')) {
dd.classList.add(CLASS_NAME);
}
return _orginal.call(this);
}
}($bs.Dropdown.prototype.toggle);
document.querySelectorAll('.dropdown').forEach(function(dd) {
dd.addEventListener('hide.bs.dropdown', function(e) {
if (this.classList.contains(CLASS_NAME)) {
this.classList.remove(CLASS_NAME);
e.preventDefault();
}
e.stopPropagation(); // do not need pop in multi level mode
});
});
// for hover
document.querySelectorAll('.dropdown-hover, .dropdown-hover-all .dropdown').forEach(function(dd) {
dd.addEventListener('mouseenter', function(e) {
let toggle = e.target.querySelector(':scope>[data-bs-toggle="dropdown"]');
if (!toggle.classList.contains('show')) {
$bs.Dropdown.getOrCreateInstance(toggle).toggle();
dd.classList.add(CLASS_NAME);
$bs.Dropdown.clearMenus(e);
}
});
dd.addEventListener('mouseleave', function(e) {
let toggle = e.target.querySelector(':scope>[data-bs-toggle="dropdown"]');
if (toggle.classList.contains('show')) {
$bs.Dropdown.getOrCreateInstance(toggle).toggle();
}
});
});
})(bootstrap);
$(document).ready(() => {
if ($(window).width() > 991) {
$("a[data-bs-toggle='dropdown']").click(function() {
window.location = $(this).attr('href');
});
}
})
</script>
</div>
</header>
<div class="main-content">
<div class="side-banner-mobile">
</div>
<div class="glider-navigation mobile">
<div role="tablist" class="dots" id="side-banner-mobile-dots"></div>
<div class="glider-button-navigation">
<button aria-label="Previous" class="glider-prev" id="side-banner-mobile-prev"><img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/412de767-9fab-4a4e-9a21-09b7ac9c5f96.png"></button>
<button aria-label="Next" class="glider-next" id="side-banner-mobile-next">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/754b0134-4f20-4cdd-af8c-d5918044d734.png">
</button>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-md-8 post">
<div class="content">
<nav aria-label="breadcrumb">
<ol class="breadcrumb">
<!-- Home Link -->
<li class="breadcrumb-item"><a href="https://www.ruangguru.com/blog">Home</a></li>
<!-- Categories -->
<li class="breadcrumb-item"><a href="https://www.ruangguru.com/blog/c/bahasa-inggris">Bahasa Inggris</a></li><li class="breadcrumb-item"><a href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-smp-kelas-8">Bahasa Inggris SMP Kelas 8</a></li> </ol>
</nav>
<h1 class="content-title">
Pahami Pengertian Showing Obligation, Pola & Contohnya | Bahasa Inggris Kelas 8 </h1>
<div class="content-meta">
<p class="content-author"><a href="https://www.ruangguru.com/blog/author/kenya-swawikanti" class="">Kenya Swawikanti</a> </p>
<p class="content-info"><span>August 24, 2022 • </span> <span>5 minutes read</span></p>
<br />
</div>
<div class="content-body">
<p><img decoding="async" src="https://cdn-web.ruangguru.com/landing-pages/assets/hs/Showing%20Obligation%20dan%20Contohnya.jpg" alt="Pengertian Showing Obligation dan Contohnya" width="820" loading="lazy" style="width: 820px; margin-left: auto; margin-right: auto; display: block;"></p>
<blockquote>
<p style="text-align: center; font-size: 16px;"><span style="color: #666666;"><em>Menunjukkan keharusan dalam Bahasa Inggris disebut dengan Showing Obligation. Hayoo, kamu sudah tahu, belum? Yuk, baca pembahasannya pada <a href="/blog/tag/bahasa-inggris-viii" rel="noopener" style="font-weight: bold;">artikel Bahasa Inggris kelas 8</a> berikut!</em></span></p>
<p style="text-align: center; font-size: 16px;"><span style="color: #000000;">—</span></p>
</blockquote>
<p style="text-align: justify;"><span style="color: #000000;"><span id="more-1936"></span></span></p>
<p style="text-align: justify;"><span style="color: #000000;">Teman-teman, pernah <em>nggak</em>, kamu bercakap-cakap dengan temanmu, lalu kamu mengucapkan kalimat yang menunjukkan suatu keharusan. Misalnya, kamu bilang kepada temanmu bahwa kamu harus segera pergi atau kamu harus segera pulang ke rumah karena hari sudah mulai malam. </span></p>
<p style="text-align: justify;"><span style="color: #000000;">Wah, udah kayak lagu aja, tuh! </span></p>
<p style="text-align: justify;"><em><span style="color: #000000;">Matahari terbenam, hari mulai malam~</span></em></p>
<p style="text-align: justify;"><em><span style="color: #000000;">Terdengar burung hantu, suaranya merdu~</span></em><span style="color: #000000;"></span></p>
<p style="text-align: justify;"> </p>
<div class="hs-embed-wrapper" data-service="giphy" data-responsive="true" style="position: relative; overflow: hidden; width: 100%; height: auto; padding: 0px; max-width: 600px; max-height: 322.5px; min-width: 256px; display: block; margin: auto;">
<div class="hs-embed-content-wrapper"><img decoding="async" src="https://media4.giphy.com/media/gRb1341rklANq/giphy.gif" style="width: 100%;"></div>
</div>
<p style="text-align: center;"><em>Kukuk, kukuk, kukukukukukuk~ (Sumber: giphy.com)</em></p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;"><span style="color: #000000;">Heyyy, malah nyanyi! Sekarang waktunya belajar Bahasa Inggris, tau!</span></p>
<p style="text-align: justify;"><span style="color: #000000;">Nah, dalam Bahasa Inggris, menyatakan atau mengekspresikan suatu keharusan disebut dengan <span style="font-weight: bold;"><em>Showing Obligation</em></span>.</span></p>
<p style="text-align: justify;"><span style="background-color: transparent; font-size: 1rem;">Apa itu <em>Showing Obligation</em>?</span><span style="background-color: transparent; font-size: 1rem;"></span></p>
<p style="text-align: justify;"> </p>
<h2 style="text-align: justify; font-weight: bold; font-size: 20px;"><span style="background-color: transparent; color: #000000;">Pengertian <em>Showing Obligation</em></span></h2>
<p style="text-align: justify; font-weight: bold;"><span style="font-weight: normal;"><em style="background-color: transparent; font-size: 1rem;">Showing Obligation </em>merupakan</span> <span style="font-weight: normal;">sebuah</span> ekspresi dalam Bahasa Inggris yang digunakan untuk menyatakan sebuah keharusan atau sesuatu yang harus kamu lakukan sebagai suatu kewajiban<span style="font-weight: normal;">. Supaya kamu lebih paham maksudnya, coba perhatikan contoh percakapan di bawah ini!</span><span style="background-color: transparent; font-size: 1rem;"> </span></p>
<p><img decoding="async" src="https://cdn-web.ruangguru.com/landing-pages/assets/hs/Contoh%20Showing%20Obligation.jpg" alt="Contoh Percakapan Showing Obligation" width="600" loading="lazy" style="width: 600px; margin-left: auto; margin-right: auto; display: block;"></p>
<p> </p>
<p>Dalam percakapan antara Kylie dan Drake di atas, terdapat beberapa pernyataan yang menunjukkan keharusan untuk melakukan sesuatu. Drake menggunakan ungkapan untuk menunjukkan keharusan dengan mengatakan <strong><em><span style="color: #000000;">“I have to</span> complete all this week’s tasks.”</em></strong> dan <em><strong><span style="color: #ff0000;"><span style="color: #000000;">“I must</span> <span style="color: #000000;">leave soon.” </span></span></strong></em></p>
<p style="text-align: justify; font-weight: bold;"><span style="color: #ff0000;"><span style="color: #000000;">Baca Juga: <a href="/blog/penggunaan-modals-of-ability" rel="noopener">Cari Tahu Yuk Contoh-Contoh Kalimat Modals of Ability!</a></span></span></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><span style="color: #000000;">Sekarang kita coba bahas pola <em>Showing Obligation</em>, yuk!</span></span></p>
<p style="text-align: justify;"> </p>
<h2 style="text-align: justify; font-weight: bold; font-size: 20px;"><span style="background-color: transparent; color: #000000;">Pola Kalimat atau Rumus <em>Showing Obligation</em></span></h2>
<p style="text-align: justify; font-size: 16px; font-weight: normal;"><span style="color: #000000;"><span style="background-color: transparent;">Dalam <em>Showing Obligation</em>, kamu bisa menggunakan kata <span style="font-weight: bold;"><em>must</em></span> atau <span style="font-weight: bold;"><em>have to/has to</em></span>. Bedanya apa, tuh? Yuk, kita bahas satu per satu!</span><span style="background-color: transparent;"></span></span></p>
<p style="text-align: justify; font-size: 16px; font-weight: normal;"> </p>
<h3 style="text-align: justify; font-size: 16px;"><span style="color: #000000;"><strong><span style="background-color: transparent;">a. Menggunakan <em>Must</em></span></strong></span></h3>
<p style="text-align: justify;"><span style="background-color: transparent;">Kata </span><em style="background-color: transparent;">must </em><span style="background-color: transparent;">yang bermakna ‘harus’ pada kalimat <em>Showing Obligation</em> digunakan untuk menyampaikan keharusan/kewajiban yang berasal dari <span style="font-weight: bold;">rasa tanggung jawab dalam diri sendiri</span>. </span></p>
<p style="text-align: justify;"><span style="background-color: transparent;">Contohnya, “<em>I <span style="font-weight: bold;">must</span> keep the house clean</em>” yang artinya “aku harus menjaga rumah agar tetap bersih”. Nah, pada pernyataan tersebut, “aku” melakukan kegiatan menjaga kebersihan rumah berdasarkan rasa tanggung jawab dari diri sendiri, ya.</span></p>
<p style="text-align: justify;"><span style="background-color: transparent;">Nah, untuk pola kalimat <em>Showing Obligation</em> menggunakan <em>must</em>, bisa kamu lihat pada infografik berikut.</span></p>
<p style="text-align: justify;"><span style="background-color: transparent;"><img decoding="async" src="https://cdn-web.ruangguru.com/landing-pages/assets/hs/Pola%20atau%20Rumus%20Showing%20Obligation%20dengan%20Must.jpg" alt="Pola atau Rumus Showing Obligation dengan Must" width="600" loading="lazy" style="width: 600px; margin-left: auto; margin-right: auto; display: block;"></span></p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;"><span style="background-color: transparent;"><span style="font-weight: bold;">Contoh kalimat</span> <span style="font-weight: normal;"><em>Showing Obligation </em>dengan menggunakan <em>must</em></span> di antaranya:</span><span style="background-color: transparent;"></span></p>
<ul>
<li style="text-align: justify;"><span style="background-color: transparent;"><em style="background-color: transparent;">Teddy <span style="color: #000000; font-weight: bold;">must </span></em><em>tidy up his bed.</em> (Teddy harus membersihkan tempat tidurnya).</span></li>
<li style="text-align: justify;"><span style="background-color: transparent;"><em>I <strong>must</strong> study hard!</em> (Aku harus giat belajar).</span></li>
<li style="text-align: justify;"><em>I <strong>must</strong> wash the dishes after eat</em>. (Aku harus mencuci piring setelah makan).</li>
<li style="text-align: justify;"><span style="background-color: transparent;"><em>You <strong>must</strong> come on time to the school. It is your obligation</em>. (Kamu harus datang tepat waktu ke sekolah. Itu adalah kewajibanmu).</span></li>
<li style="text-align: justify;"><span style="background-color: transparent;"><em>You <strong>must</strong> throw your trash in the bin</em>. (Kamu harus membuang sampahmu di tempat sampah).</span></li>
<li style="text-align: justify;"><span style="background-color: transparent;"><em>I <strong>must</strong> go home on time.</em> (Aku harus pulang tepat waktu). </span></li>
<li style="text-align: justify;"><span style="background-color: transparent;"><em>I <strong>must</strong> study for the English exam</em>. (Aku harus belajar untuk ujian Bahasa Inggris).</span></li>
<li style="text-align: justify;"><span style="background-color: transparent;"><em>It rains outside, you <strong>must</strong> use the umbrella.</em> (Di luar sedang hujan, kamu harus menggunakan payung).</span></li>
<li style="text-align: justify;"><span style="background-color: transparent;"><em>I <strong>must</strong> eat three times in a day</em>. (Aku harus makan tiga kali dalam sehari). </span></li>
<li style="text-align: justify;"><span style="background-color: transparent;"><em>She <strong>must</strong> help her mother after school.</em> (Dia harus membantu ibunya sepulang sekolah).</span></li>
</ul>
<p style="text-align: justify; font-weight: bold;"><span style="background-color: transparent;">Baca Juga: <a href="/blog/showing-preference" rel="noopener">Bagaimana Cara Mengungkapan Showing Preference untuk Menunjukkan Selera?</a></span></p>
<p style="text-align: justify;"> </p>
<h3 style="text-align: justify; font-size: 16px;"><span style="color: #000000;"><strong><span style="background-color: transparent;">b. Menggunakan <em>Have to</em> atau <em>Has to</em></span></strong></span></h3>
<p style="text-align: justify;"><span style="background-color: transparent;"><em>Have to</em> atau </span><em style="background-color: transparent;">has to</em><span style="background-color: transparent;"> digunakan untuk menyampaikan keharusan/kewajiban yang disebabkan oleh aturan dari <span style="font-weight: bold;">pihak luar (di luar diri sendiri)</span>. Misalnya dari sekolah atau hukum yang berlaku di negara kita. </span></p>
<p style="text-align: justify;"><span style="background-color: transparent;">Contohnya, <em>“</em></span><em style="background-color: transparent;">You <span style="color: #000000; font-weight: bold;">have to</span> wear a </em><span style="background-color: transparent;"><em>white-blue uniform to school.”</em> (Kamu harus mengenakan seragam putih biru ke sekolah). Pada pernyataan tersebut, keharusan untuk memakai seragam putih biru di sekolah berasal dari peraturan sekolah itu sendiri ya, gais.</span></p>
<p style="text-align: justify;"><span style="background-color: transparent;"><em>Next</em>, berikut adalah pola kalimat <em>Showing Obligation</em> menggunakan <em>have to/has to</em>.</span></p>
<p style="text-align: justify;"><span style="background-color: transparent;"><img decoding="async" src="https://cdn-web.ruangguru.com/landing-pages/assets/hs/Pola%20atau%20Rumus%20Showing%20Obligation%20dengan%20Have%20to%20atau%20Has%20to.jpg" alt="Pola atau Rumus Showing Obligation dengan Have to atau Has to" width="600" loading="lazy" style="width: 600px; margin-left: auto; margin-right: auto; display: block;"></span></p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;"><span style="background-color: transparent;"><em>Psstt..</em> kamu harus ingat! <span style="font-weight: bold;"><em>Have to </em>digunakan</span> untuk subjek seperti <span style="font-weight: bold;"><em>I, You, They,</em> <em>We</em></span>, serta bila subjeknya <span style="font-weight: bold;">jamak (<em>plural subject</em>)</span>. Sedangkan <span style="font-weight: bold;"><em>has to </em>digunakan</span> untuk subjek seperti <span style="font-weight: bold;"><em>He, She,</em> <em>It</em></span>, dan bila subjeknya <span style="font-weight: bold;">tunggal (<em>singular subject</em>)</span>.</span><span style="background-color: transparent;"></span></p>
<p style="text-align: justify;"><span style="background-color: transparent;"><span style="font-weight: bold;">Contoh kalimat</span> <em>Showing Obligation</em> menggunakan <em>have to/has to</em>:</span></p>
<ul>
<li><span style="background-color: transparent;"><em>We <strong>have to</strong> stay at home during the pandemic</em>. (Kita harus tetap di rumah selama pandemi).</span></li>
<li style="text-align: justify;"><span style="background-color: transparent;"><em>All students <strong>have to</strong> wear uniform at school</em>. (Seluruh siswa harus memakai seragam di sekolah).</span></li>
<li style="text-align: justify;"><span style="background-color: transparent;"><em>We <strong>have to</strong> obey traffic rules when driving.</em> (Kita harus mematuhi rambu lalu lintas saat berkendara).</span></li>
<li><em><span style="background-color: transparent;">Visitors <strong>have to</strong> wear a face mask at the hospital</span></em><span style="background-color: transparent;">. (Pengunjung harus memakai masker saat di rumah sakit).</span></li>
<li><span style="background-color: transparent;"><em>The students <strong>have to</strong> listen to their teachers.</em> (Para murid harus mendengarkan guru mereka).</span></li>
<li><span style="background-color: transparent;"><em>All students <strong>have to</strong> participate in the study tour</em>. (Seluruh siswa harus mengikuti studi wisata).</span></li>
<li><span style="background-color: transparent;"><em>She <strong>has to</strong> clean her room before her parents go home</em>. (Dia harus membersihkan kamarnya sebelum orang tuanya pulang ke rumah).</span></li>
<li><span style="background-color: transparent;"><em>Dimas <strong>has to</strong> finish his homework tonight</em>. (Dimas harus menyelesaikan PR nya malam ini).</span></li>
<li><span style="background-color: transparent;"><em>If you have a pet, you <strong>have to</strong> feed it everyday</em>. (Jika kamu punya hewan peliharaan, kamu harus memberi makannya setiap hari).</span></li>
<li><span style="background-color: transparent;"><em>My dad <strong>has to</strong> go back to work because there was an emergency.</em> (Ayahku harus kembali ke kantor karena ada keadaan darurat). </span><br /><span style="background-color: transparent;"></span></li>
</ul>
<p style="text-align: justify;"><span style="background-color: transparent;">Perlu kamu ingat kembali bahwa dalam <em>Showing Obligation</em>, <span style="font-weight: bold;"><em>verb</em> yang digunakan selalu <em>Verb 1</em></span>, ya!</span></p>
<p style="text-align: justify; font-weight: bold;"><span style="background-color: transparent;"><span style="color: #000000;">Baca Juga: <a href="/blog/apa-perbedaan-dari-can-dan-could-dalam-showing-ability" rel="noopener">Perbedaan Can dan Could dalam Showing Ability</a></span></span></p>
<p style="text-align: justify;"><span style="background-color: transparent;">Bagaimana, teman-teman? Sudah paham mengenai materi Showing Obligation ini? Jadi, ada dua cara untuk mengungkapkan keharusan/kewajiban dalam bahasa Inggris (<em>Showing Obligation</em>), yaitu menggunakan <em>must</em> dan <em>have to/has to</em>.</span></p>
<p style="text-align: justify;"><span style="background-color: transparent;">Yuk, tetap semangat belajar supaya makin jago! Nah, biar nggak ketinggalan materi-materi penting, kamu bisa banget berlangganan <a href="/ruangbelajar" rel="noopener" target="_blank" style="font-style: italic; font-weight: bold;">ruangbelajar</a> sekarang juga. Di situ, kamu bisa akses ke materi-materi seru yang bikin belajarmu jadi lebih asyik! Yuk, daftar sekarang! </span></p>
<p style="text-align: center;"><a href="https://www.ruangguru.com/download-for-desktop" target="_blank" style="text-align: center;" class="rg-cta" rel="noopener"><img fetchpriority="high" decoding="async" src="https://cdn-web.ruangguru.com/landing-pages/assets/cta/f51e0d89-905d-477d-b7f8-546567f121d9.jpeg" width="800" height="195" alt="IDN CTA Blog ruangbelajar for desktop Ruangguru" /></a></p>
<p style="text-align: left;"><strong><span style="background-color: transparent;">Referensi:</span></strong></p>
<p style="text-align: left;"><span style="background-color: transparent;">Wachidah, S. dkk. (2015). <em>Bahasa Inggris untuk SMP/MTs Kelas 9: Think Globally Act Locally</em>. Jakarta: Pusat Kurikulum dan Perbukuan, Balitbang, Kemendikbud.</span></p>
<p style="text-align: left; font-weight: bold;"><span style="background-color: transparent;">Sumber Gambar:</span></p>
<p style="text-align: left; font-weight: normal;"><span style="background-color: transparent;">GIF ‘Owl’ [Daring]. Tautan: https://giphy.com/gifs/owl-bird-gRb1341rklANq (Diakses: 6 September 2021)</span></p>
<p style="text-align: left; font-weight: bold;"><em><span style="background-color: transparent;">Artikel ini telah diperbarui pada 24 Agustus 2022.</span></em></p>
</div>
<div class="content-meta-tags">
<a href="https://www.ruangguru.com/blog/tag/bahasa-inggris-viii" rel="tag">Bahasa Inggris VIII</a> <a href="https://www.ruangguru.com/blog/tag/kelas-8" rel="tag">Kelas 8</a> <a href="https://www.ruangguru.com/blog/tag/konsep-pelajaran" rel="tag">Konsep Pelajaran</a> <a href="https://www.ruangguru.com/blog/tag/smp" rel="tag">SMP</a> </div>
</div>
<div class="author-post">
<img loading="lazy" class="author-avatar" width="64px" height="64px" src="https://cdn-web-2.ruangguru.com/file-uploader/lp/5196bc4b-168b-4b6f-8c46-cb076ca8b451.png">
<div>
<h5 class="author-title">Kenya Swawikanti</h5>
<p class="author-description"></p>
</div>
</div> <div class="share-post">
<p>Bagikan artikel ini:</p>
<ul class="socmed">
<li>
<a target="_blank" href="https://api.whatsapp.com/send?phone=&text=Pahami Pengertian Showing Obligation, Pola & Contohnya | Bahasa Inggris Kelas 8%0D%0A%0D%0Ahttps://www.ruangguru.com/blog/showing-obligation"><img src="https://cdn-web-2.ruangguru.com/static/whatsapp.png" loading="lazy" alt="Logo Whatsapp " /></a>
</li>
<li>
<a target="_blank" href="https://www.facebook.com/share.php?u=https://www.ruangguru.com/blog/showing-obligation&quote=Pahami Pengertian Showing Obligation, Pola & Contohnya | Bahasa Inggris Kelas 8"> <img src="https://cdn-web-2.ruangguru.com/static/facebook.png" loading="lazy" alt="Logo Facebook " /> </a>
</li>
<li>
<a target="_blank" href="https://twitter.com/intent/tweet?text=Pahami Pengertian Showing Obligation, Pola & Contohnya | Bahasa Inggris Kelas 8&url=https://www.ruangguru.com/blog/showing-obligation"> <img src="https://cdn-web-2.ruangguru.com/static/twitter.png" loading="lazy" alt="Logo Twitter " /> </a>
</li>
<li>
<a target="_blank" href="https://www.linkedin.com/shareArticle?mini=true&url=https://www.ruangguru.com/blog/showing-obligation&title=Pahami Pengertian Showing Obligation, Pola & Contohnya | Bahasa Inggris Kelas 8"><img src="https://cdn-web-2.ruangguru.com/static/linkedin.png" loading="lazy" alt="Logo LinkedIn " /></a>
</li>
</ul>
</div>
</div>
<div class="col-md-4 sticky">
<aside id="sidebar">
<div class="side-banner-desktop">
</div>
<div class="glider-navigation desktop">
<div role="tablist" class="dots" id="side-banner-dots"></div>
<div class="glider-button-navigation">
<button aria-label="Previous" class="glider-prev" id="side-banner-prev"><img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/412de767-9fab-4a4e-9a21-09b7ac9c5f96.png"></button>
<button aria-label="Next" class="glider-next" id="side-banner-next">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/754b0134-4f20-4cdd-af8c-d5918044d734.png">
</button>
</div>
</div>
<h2 style="font-size: 24px; font-weight: bold; margin-bottom: 16px;margin-top: 16px;">Artikel Terbaru</h2>
<ul>
<li>
<a href="https://www.ruangguru.com/blog/pergerakan-nasional-indonesia">
<img loading="lazy" src="https://cdn-web-2.ruangguru.com//landing-pages/assets/dd9f819a-e3e7-4992-b8c7-3ce436bb27f8.png" alt="Pergerakan Nasional" class="external-img wp-post-image " /> <span>Pergerakan Nasional Indonesia: Pengertian, Tujuan & Penyebabnya | Sejarah Kelas 11</span>
</a>
</li>
<li>
<a href="https://www.ruangguru.com/blog/runtuhnya-uni-soviet">
<img loading="lazy" src="https://cdn-web-2.ruangguru.com//landing-pages/assets/b9f1448f-d581-42c3-bf06-6300fdbcd7c8.png" alt="Runtuhnya Uni Soviet" class="external-img wp-post-image " /> <span>Sejarah Runtuhnya Uni Soviet, Penyebab, dan Dampaknya | Sejarah Kelas 12</span>
</a>
</li>
<li>
<a href="https://www.ruangguru.com/blog/konflik-palestina-israel">
<img loading="lazy" src="https://cdn-web-2.ruangguru.com//landing-pages/assets/724ad604-4b78-4c7c-9d4b-627165954c4a.png" class="external-img wp-post-image " /> <span>Latar Belakang Terjadinya Konflik Palestina dengan Israel | Sejarah Kelas 12</span>
</a>
</li>
<li>
<a href="https://www.ruangguru.com/blog/9-lembaga-dan-pelaku-pasar-modal-di-indonesia">
<img loading="lazy" src="https://cdn-web-2.ruangguru.com//landing-pages/assets/279825ac-672b-43f9-b66e-a1c7ec87f784.png" alt="Pelaku Pasar Modal di Indonesia" class="external-img wp-post-image " /> <span>9 Lembaga dan Pelaku Pasar Modal di Indonesia | Ekonomi Kelas 10</span>
</a>
</li>
<li>
<a href="https://www.ruangguru.com/blog/peristiwa-kontemporer-dunia-perpecahan-cekoslovakia">
<img loading="lazy" src="https://cdn-web-2.ruangguru.com//landing-pages/assets/2a1a35c0-f1f5-45d4-8869-ff5083bd90e5.png" alt="Perpecahan Cekoslowakia" class="external-img wp-post-image " /> <span>Latar Belakang Perpecahan Cekoslowakia dan Penyebabnya | Sejarah Kelas 12</span>
</a>
</li>
</ul>
</aside>
</div>
</div>
<div class="row">
<div class="col-12">
<section class="related-posts">
<h2 class="page-title">
Artikel Lainnya
</h2>
<div class="content-grid">
<div class="content">
<a href="https://www.ruangguru.com/blog/pergerakan-nasional-indonesia">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com//landing-pages/assets/dd9f819a-e3e7-4992-b8c7-3ce436bb27f8.png?height=320&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com//landing-pages/assets/dd9f819a-e3e7-4992-b8c7-3ce436bb27f8.png?height=320" type="image/png">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/dd9f819a-e3e7-4992-b8c7-3ce436bb27f8.png" loading="lazy" alt="" />
</picture>
<div>
<h2 class="content-title">
Pergerakan Nasional Indonesia: Pengertian, Tujuan & Penyebabnya | Sejarah Kelas 11 </h2>
<div class="content-meta">
<span>March 6, 2026</span> <span>• 8 minutes read</span>
</div>
</div>
</a>
</div>
<div class="content">
<a href="https://www.ruangguru.com/blog/runtuhnya-uni-soviet">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com//landing-pages/assets/b9f1448f-d581-42c3-bf06-6300fdbcd7c8.png?height=320&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com//landing-pages/assets/b9f1448f-d581-42c3-bf06-6300fdbcd7c8.png?height=320" type="image/png">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/b9f1448f-d581-42c3-bf06-6300fdbcd7c8.png" loading="lazy" alt="" />
</picture>
<div>
<h2 class="content-title">
Sejarah Runtuhnya Uni Soviet, Penyebab, dan Dampaknya | Sejarah Kelas 12 </h2>
<div class="content-meta">
<span></span> <span>• 11 minutes read</span>
</div>
</div>
</a>
</div>
<div class="content">
<a href="https://www.ruangguru.com/blog/konflik-palestina-israel">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com//landing-pages/assets/724ad604-4b78-4c7c-9d4b-627165954c4a.png?height=320&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com//landing-pages/assets/724ad604-4b78-4c7c-9d4b-627165954c4a.png?height=320" type="image/png">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/724ad604-4b78-4c7c-9d4b-627165954c4a.png" loading="lazy" alt="" />
</picture>
<div>
<h2 class="content-title">
Latar Belakang Terjadinya Konflik Palestina dengan Israel | Sejarah Kelas 12 </h2>
<div class="content-meta">
<span>March 5, 2026</span> <span>• 5 minutes read</span>
</div>
</div>
</a>
</div>
</div>
</section> </div>
</div>
<div class="banner-product-wrapper">
<a href="https://cta.ruangguru.com/7c02db90-610d-11ee-80fe-4201ac180089" target="_blank" class="alert alert-dismissible fade show banner-product" role="alert">
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
<!-- <p>Yuk pilih kelas dan materi belajar kamu di sini</p>
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/0e292531-9ee1-4eed-92f5-b5c053eea4c2.svg" width="42px" height="42px" class="arrow-right"> -->
<img class="image-floating-bottom" src="https://cdn-web-2.ruangguru.com/landing-pages/assets/d19eb9b6-999d-4b92-87c6-c4fb32000d73.png?convert=web" />
</a>
</div>
</div>
</div>
<script>
function sleep(ms) {
return new Promise((resolve) => setTimeout(resolve, ms));
}
async function replaceCtaMarkupAsync() {
await sleep(2000);
alert("replace")
const contentBody = document.querySelector('.content-body');
const paragraphs = contentBody.querySelectorAll('p');
const regexPattern = /{{cta\(['"](.+?)['"]\)}}/g;
paragraphs.forEach((paragraph) => {
const originalHTML = paragraph.innerHTML;
let modifiedHTML = '';
let lastIndex = 0;
for (const match of originalHTML.matchAll(regexPattern)) {
const ctaId = match[1];
modifiedHTML += originalHTML.slice(lastIndex, match.index) + `<b>${ctaId}</b>`;
lastIndex = match.index + match[0].length;
}
modifiedHTML += originalHTML.slice(lastIndex);
paragraph.innerHTML = modifiedHTML;
});
document.addEventListener("DOMContentLoaded", () => {
replaceCtaMarkupAsync();
});
}
</script>
<div class="modal fade" id="popupPromo" tabindex="-1" aria-labelledby="popupPromoLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered" data-bs-backdrop="static" data-bs-keyboard="false">
<div class="modal-content">
<div class="button-wrapper">
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="glider-contain">
<div class="glider">
<a class="" target="_blank" href="https://cta.ruangguru.com/ab-web-pop-up-banner-blog-rg">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/4680961a-4e01-4169-8ff4-da0823d0da6c.png" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/ab-web-pop-up-banner-blog-rg-1">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/e0ebb0c9-e368-4524-9241-dbaf73cafccd.png" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/rasionalisasi-popup-blog-rg">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/0ec15e92-707a-4660-8134-11f1c1e539a8.png" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/to-snbt-reg-2026-popup-blog-rg">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/b95e02b2-28a4-4c24-a6db-930ecddef2fa.jpg" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/pop-blog-to-snbt-prem">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/1b8558a2-ad51-4144-b30c-01a3231a22da.jpg" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/to-prem-tka-sd-smp-popup-blog-rg">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/e6888a56-1d95-4d8a-b87a-b19b8a185651.png" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/rgp-popup-blog-rg">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/851003e6-07b5-40d1-9068-f9b0bcb1625a.png" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/25f78174-4fc2-11ef-9a39-4201ac180089">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/cbe7b869-fbe2-4497-8a1e-42344df5b137.jpg" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/kitab-tka-smp-popup-blog">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/eb41ad00-e4dc-46f5-b9f6-721266fc371e.jpg" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/pop-rg-kitab-utbk-snbt-lite">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/f7908ac1-3b0b-492c-bf87-dcea2b20b87c.png" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/pop-rg-kitablitetkasmp">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/50097055-1862-46a8-bbe0-fa5b077f88bb.png" />
</a>
</div>
<div class="glider-navigation">
<div role="tablist" class="dots" id="popup-promo-dots"></div>
<div class="glider-button-navigation">
<button aria-label="Previous" class="glider-prev" id="popup-promo-prev"><img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/412de767-9fab-4a4e-9a21-09b7ac9c5f96.png"></button>
<button aria-label="Next" class="glider-next" id="popup-promo-next">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/754b0134-4f20-4cdd-af8c-d5918044d734.png">
</button>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
var jsonString = '[{"CreatedAt":"2025-07-25 01:01:27+00:00","Id":696,"UpdatedAt":"2026-02-25 02:12:12+00:00","campaign":null,"cta":[{"Id":31467,"ctaId":"ab-web-pop-up-banner-blog-rg","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/ab-web-pop-up-banner-blog-rg)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/b9b5f501-be14-4e3f-9ad8-a87e17ec16e9.png","name":"[AB] Web Pop Up Banner - Blog RG","targetUrl":"https:\/\/bayar.ruangguru.com\/?utm-source=ab-web-pop-up-banner-blog-rg"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/\/landing-pages\/assets\/4680961a-4e01-4169-8ff4-da0823d0da6c.png","name":"[RG] Popup Banner Blog - Promo SNBT Ramadan","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":1,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2025-07-25 01:01:27+00:00","Id":705,"UpdatedAt":"2026-02-23 10:52:46+00:00","campaign":null,"cta":[{"Id":33341,"ctaId":"ab-web-pop-up-banner-blog-rg-1","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/ab-web-pop-up-banner-blog-rg-1)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/f30c4943-4456-4a96-858b-fe065c9073ae.png","name":"[AB] Web Pop Up Banner - Blog RG 1","targetUrl":"https:\/\/bayar.ruangguru.com\/?utm-source=ab-web-pop-up-banner-blog-rg"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/e0ebb0c9-e368-4524-9241-dbaf73cafccd.png","name":"[RG] Popup Banner Blog - Promo TKA Ramadan","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":2,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2023-08-16 13:35:02+00:00","Id":657,"UpdatedAt":"2026-02-06 03:52:10+00:00","campaign":null,"cta":[{"Id":33189,"ctaId":"rasionalisasi-popup-blog-rg","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/rasionalisasi-popup-blog-rg)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/0ec15e92-707a-4660-8134-11f1c1e539a8.png","name":"[RG] Pop Up Blog - Rasionalisasi","targetUrl":"https:\/\/www.ruangguru.com\/rasionalisasi"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/0ec15e92-707a-4660-8134-11f1c1e539a8.png","name":"[RG] Pop Up Blog RG - Rasionalisasi","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":3,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2023-12-07 09:26:39+00:00","Id":677,"UpdatedAt":"2026-02-12 02:22:12+00:00","campaign":null,"cta":[{"Id":33305,"ctaId":"to-snbt-reg-2026-popup-blog-rg","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/to-snbt-reg-2026-popup-blog-rg)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/b95e02b2-28a4-4c24-a6db-930ecddef2fa.jpg","name":"[IDN] CTA Popup Blog RG - Tryout SNBT Regular 2026","targetUrl":"https:\/\/link.ruangguru.com\/blPk\/TOUTBKREG7"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/b95e02b2-28a4-4c24-a6db-930ecddef2fa.jpg","name":"[RG] Popup Blog RG - Tryout Regular 2026","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":4,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2026-02-05 10:16:52+00:00","Id":689,"UpdatedAt":"2026-03-05 02:41:12+00:00","campaign":null,"cta":[{"Id":33338,"ctaId":"pop-blog-to-snbt-prem","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/pop-blog-to-snbt-prem)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/\/landing-pages\/assets\/1b8558a2-ad51-4144-b30c-01a3231a22da.jpg","name":"[RG] Popup Blog - TO SNBT Prem","targetUrl":"https:\/\/link.ruangguru.com\/blPk\/TOUTBKPREM"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/\/landing-pages\/assets\/1b8558a2-ad51-4144-b30c-01a3231a22da.jpg","name":"[RG] Pop blog - TO SNBT Prem","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":5,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2023-12-07 09:26:39+00:00","Id":679,"UpdatedAt":"2026-03-04 03:44:16+00:00","campaign":null,"cta":[{"Id":33304,"ctaId":"to-prem-tka-sd-smp-popup-blog-rg","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/to-prem-tka-sd-smp-popup-blog-rg)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/1bf472e1-62f4-4aa9-ab8c-4fa72a82dd7b.png","name":"[RG] Pop Up Blog RG - TO Premium TKA SD SMP","targetUrl":"https:\/\/s.id\/TOTKAPREMSDSMP"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/\/landing-pages\/assets\/e6888a56-1d95-4d8a-b87a-b19b8a185651.png","name":"[RG] Popup Blog RG - TO TKA Premium SD SMP","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":6,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2025-08-25 04:25:04+00:00","Id":672,"UpdatedAt":"2026-02-06 03:52:17+00:00","campaign":null,"cta":[{"Id":33285,"ctaId":"rgp-popup-blog-rg","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/rgp-popup-blog-rg)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/851003e6-07b5-40d1-9068-f9b0bcb1625a.png","name":"[RG] Pop Up Blog - RGP","targetUrl":"https:\/\/www.ruangguru.com\/privat"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/851003e6-07b5-40d1-9068-f9b0bcb1625a.png","name":"[RG] Pop Up Blog - RGP","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":7,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2023-08-16 13:35:02+00:00","Id":379,"UpdatedAt":"2026-03-06 01:54:52+00:00","campaign":null,"cta":[{"Id":31356,"ctaId":"25f78174-4fc2-11ef-9a39-4201ac180089","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/25f78174-4fc2-11ef-9a39-4201ac180089)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/f60bc49c-c00f-4a5e-80a2-2552fa18ae21.jpg","name":"CTA Blog RG - Kitab UTBK SNBT","targetUrl":"https:\/\/bit.ly\/orderkitabrg"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/\/landing-pages\/assets\/cbe7b869-fbe2-4497-8a1e-42344df5b137.jpg","name":"[RG] Pop Up Blog RG - Kitab UTBK SNBT","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":8,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2023-08-16 13:35:02+00:00","Id":587,"UpdatedAt":"2026-03-06 01:55:00+00:00","campaign":null,"cta":[{"Id":33020,"ctaId":"kitab-tka-smp-popup-blog","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/kitab-tka-smp-popup-blog)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/9ea9eca7-9ef7-433c-baad-14bc1019f890.jpg","name":"[RG] Pop up blog - Kitab TKA SMP","targetUrl":"https:\/\/bit.ly\/kitabtkasmprg"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/\/landing-pages\/assets\/eb41ad00-e4dc-46f5-b9f6-721266fc371e.jpg","name":"[RG] Pop Up Blog RG - Kitab TKA SMP","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":9,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2025-11-12 10:28:45+00:00","Id":636,"UpdatedAt":"2026-02-06 03:52:20+00:00","campaign":null,"cta":[{"Id":33149,"ctaId":"pop-rg-kitab-utbk-snbt-lite","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/pop-rg-kitab-utbk-snbt-lite)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/8d6f8639-cfff-4d64-89ea-f68bfe7a868c.png","name":"[RG] Pop blog - Kitab utbk snbt lite","targetUrl":"https:\/\/s.id\/litesnbt26"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/f7908ac1-3b0b-492c-bf87-dcea2b20b87c.png","name":"[RG] Pop blog - Kitab utbk snbt lite","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":10,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2025-11-14 08:09:42+00:00","Id":647,"UpdatedAt":"2026-02-06 03:52:21+00:00","campaign":null,"cta":[{"Id":33160,"ctaId":"pop-rg-kitablitetkasmp","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/pop-rg-kitablitetkasmp)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/20edba9b-ef84-4938-b698-4a82783478a5.png","name":"[RG] Pop blog - kitab lite tka smp","targetUrl":"https:\/\/s.id\/litetkasmp26"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/50097055-1862-46a8-bbe0-fa5b077f88bb.png","name":"[RG] Pop blog - kitab lite tka smp","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":11,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"}]';
var jsArray = JSON.parse(jsonString);
console.log(jsArray);
</script>
<script>
let windowHeight = window.innerHeight;
let promosLength = 11;
document.addEventListener('DOMContentLoaded', function() {
// Initialize Bootstrap Modal
let popupPromo = new bootstrap.Modal(document.getElementById('popupPromo'), {});
// Initialize Glider.js inside the Bootstrap Modal
function initGliderInModal() {
new Glider(document.querySelector('#popupPromo .glider'), {
slidesToScroll: 1,
slidesToShow: 1,
draggable: true,
dots: '#popup-promo-dots',
arrows: {
prev: '#popup-promo-prev',
next: '#popup-promo-next'
}
});
}
// Show Bootstrap Modal and initialize Glider.js after a specified scroll amount
const scrollThreshold = 2 / 3 * windowHeight; // The scroll amount in pixels to trigger the Modal
let gliderInitialized = false;
window.addEventListener('scroll', function() {
if (window.scrollY >= scrollThreshold && !gliderInitialized && promosLength > 0) {
popupPromo.show();
// Listen for the 'shown' event to initialize Glider.js after the Modal has been fully displayed
$('#popupPromo').on('shown.bs.modal', function() {
initGliderInModal();
gliderInitialized = true;
// Optionally, remove the 'shown' event listener after initializing the Glider to avoid re-initializing
$('#popupPromo').off('shown.bs.modal');
});
// Remove the scroll event listener after the Modal is shown to avoid re-initializing the Glider
this.removeEventListener('scroll', arguments.callee);
}
});
});
</script>
<script src="https://unpkg.com/analytics@0.8.1/dist/analytics.min.js"></script>
<script type="text/javascript" src="https://unpkg.com/analytics-plugin-trackable-min@0.4.5/dist/analytics-plugin-trackable.min.js"></script>
<script type="text/javascript" defer>
/* Initialize analytics */
var Analytics = window._analytics.init({
app: "ruangguruLanding",
debug: false,
plugins: [analyticsTrackable()],
});
/* Additional context tracker pageView */
const post_id = 1936;
const tags_id = [217,25,10,16];
const category_id = 487;
const sub_category_id = 493;
const customData = {
tags_id: tags_id,
category_id: category_id,
sub_category_id: sub_category_id,
post_id: post_id,
};
Analytics.plugins.trackable.context(JSON.stringify(customData));
Analytics.ready(function () {
Analytics.page();
});
$(document).on('click', '[data-tracking-event-type]', function (event) {
const eventType = $(this).data('tracking-event-type');
const context = $(this).data('tracking-context');
Analytics.track(eventType, context);
});
</script>
<footer class="footer">
<div class="container">
<div class="row">
<div class="col-lg-3">
<div class="office">
<a href="https://www.ruangguru.com/">
<img src="https://cdn-web-2.ruangguru.com/static/RG_LOGO_WHITE.png?convert=auto" alt="Logo Ruangguru" loading="lazy" />
</a>
<address>
<p class="hq">RUANGGURU HQ</p>
<p>
Gedung Sinarmas MSIG Tower Lt. 33. Jl. Jenderal Sudirman Kav. 21, Karet Kuningan, Setiabudi, Jakarta Selatan, Jakarta 12920
</p>
</address>
</div>
<nav class="footer-menu call-us">
<p class="title">Hubungi Kami</p>
<address>
<a href="mailto:info@ruangguru.com">
<img class="icon-call-us" src="https://cdn-web-2.ruangguru.com/file-uploader/lp/4739a139-8f09-42ea-b517-d842c5d1c28d.png" loading="lazy" alt="Logo Email Footer" />
info@ruangguru.com</a>
<a href="tel:02130930000">
<img class="icon-call-us" src="https://cdn-web-2.ruangguru.com/file-uploader/lp/6f4bb6c8-52c9-4acb-859b-47a10a7eec75.png" loading="lazy" alt="Logo Phone Footer" />(021) 3093 0000</a>
<a href="https://wa.me/6281574410000">
<img class="icon-call-us" src="https://cdn-web-2.ruangguru.com/file-uploader/lp/4b58468a-b2f9-40e4-867f-d3242a065dcf.png" loading="lazy" alt="Logo Whatsapp Footer" />0815 7441 0000</a>
</address>
</nav>
<nav class="footer-menu social d-none d-lg-block">
<p class="title">Ikuti Kami</p>
<a target="_blank" href="https://www.instagram.com/ruangguru/">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/instagram.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/instagram.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/instagram.png" loading="lazy" alt="Logo Instagram Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.facebook.com/ruanggurucom/">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/facebook.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/facebook.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/facebook.png" loading="lazy" alt="Logo Facebook Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://twitter.com/ruangguru/">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/twitter.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/twitter.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/twitter.png" loading=" lazy" alt="Logo Twitter Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.youtube.com/ruangguru">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/youtube.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/youtube.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/youtube.png" loading=" lazy" alt="Logo Youtube Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.linkedin.com/company/ruangguru-com">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/linkedin.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/linkedin.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/linkedin.png" loading=" lazy" alt="Logo LinkedIn Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.tiktok.com/@ruangguru">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/tiktok.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/tiktok.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/tiktok.png" loading=" lazy" alt="Logo TikTok Footer" width="32px" height="32px" />
</picture>
</a>
</nav>
</div>
<div class="col-lg-9">
<div class="row">
<div class="col-6 col-md-3">
<nav class="footer-menu">
<p class="title">Produk Ruangguru</p>
<ul type="none">
<li><a href="https://roboguru.ruangguru.com" target="_blank">Roboguru</a></li>
<li><a href="https://www.ruangguru.com/roboguruplus">Roboguru Plus</a></li>
<li><a href="https://www.ruangguru.com/dafa-lulu">Dafa dan Lulu</a></li>
<li><a href="https://www.ruangguru.com/for-kids/kursus">Kursus for Kids</a></li>
<li><a href="https://www.ruangguru.com/for-kids">Ruangguru for Kids</a></li>
<li><a href="https://www.ruangguru.com/bisnis">Ruangguru for Business</a></li>
<li><a href="https://www.ruangguru.com/ruanguji">Ruanguji</a></li>
<li><a href="https://www.ruangguru.com/blog">Ruangbaca</a></li>
<li><a href="https://www.ruangguru.com/ruangkelas">Ruangkelas</a></li>
<li><a href="https://www.ruangguru.com/ruangbelajar">Ruangbelajar</a></li>
<li><a href="https://pengajar.ruangguru.com/">Ruangpengajar</a></li>
<li><a href="https://www.ruangguru.com/privat">Ruangguru Privat</a></li>
<li><a href="https://www.ruangpeduli.org/" target="_blank">Ruangpeduli</a></li>
</ul>
</nav>
</div>
<div class="col-6 col-md-3">
<nav class="footer-menu">
<p class="title">Bantuan & Panduan</p>
<ul type="none">
<li><a href="https://www.ruangguru.com/company-credentials">Company Credentials</a></li>
<li><a href="https://www.ruangguru.com/beasiswa">Beasiswa Ruangguru</a></li>
<li><a href="https://www.ruangguru.com/cicilan">Cicilan Ruangguru</a></li>
<li><a href="https://www.ruangguru.com/promo">Promo Ruangguru</a></li>
<li><a href="https://ticketing.ruangguru.com/help?request_type_id=459" target="_blank">Vulnerability Report</a></li>
<li><a href="https://www.ruangguru.com/bantuan#layanan">Layanan Pengaduan</a></li>
<li><a href="https://www.ruangguru.com/terms-conditions">Syarat & Ketentuan</a></li>
<li><a href="https://www.ruangguru.com/privacy-policy">Kebijakan Privasi</a></li>
<li><a href="https://www.ruangguru.com/about-us">Tentang Kami</a></li>
<li><a href="https://www.ruangguru.com/contact-us">Kontak Kami</a></li>
<li><a href="https://www.ruangguru.com/press">Press Kit</a></li>
<li><a href="https://www.ruangguru.com/bantuan">Bantuan</a></li>
<li><a href="https://career.ruangguru.com/">Karier</a></li>
</ul>
</nav>
</div>
<div class="col-6 col-md-3">
<nav class="footer-menu">
<p class="title">Produk Lainnya</p>
<ul type="none">
<li><a href="https://www.brainacademy.id/" target="_blank">Brain Academy</a></li>
<li><a href="https://www.english-academy.id/" target="_blank">English Academy</a></li>
<li><a href="https://skillacademy.com/" target="_blank">Skill Academy</a></li>
<li><a href="https://www.ruangkerja.id/" target="_blank">Ruangkerja</a></li>
<li><a href="https://www.schoters.com/id/" target="_blank">Schoters</a></li>
<li><a href="https://www.kalananti.id/" target="_blank">Kalananti</a></li>
</ul>
</nav>
</div>
<div class="col-6 col-md-3">
<nav class="footer-menu">
<p class="title"> Coba GRATIS Aplikasi Ruangguru</p>
<div class="download-list">
<ul>
<li>
<a target="_blank" rel="nofollow" href="https://apps.apple.com/id/app/ruangguru-solusi-belajar/id1099742206?l=id">
<img src="https://cdn-web-2.ruangguru.com/static/appstore.png" loading="lazy" alt="Button App Store Footer " />
</a>
</li>
<li>
<a target="_blank" rel="nofollow" href="https://play.google.com/store/apps/details?id=com.ruangguru.livestudents&hl=in">
<img src="https://cdn-web-2.ruangguru.com/static/googleplay.png" loading="lazy" alt="Button Google Play Footer " />
</a>
</li>
<li>
<a target="_blank" rel="nofollow" href="https://appgallery.huawei.com/#/app/C102352375">
<img src="https://cdn-web-2.ruangguru.com/static/huawei.png" loading="lazy" alt="Button AppGallery Footer " />
</a>
</li>
</ul>
</div>
</nav>
</div>
</div>
</div>
</div>
<div class="d-lg-none text-center">
<nav class="footer-menu social">
<p class="title">Ikuti Kami</p>
<a target="_blank" href="https://www.instagram.com/ruangguru/">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/instagram.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/instagram.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/instagram.png" loading="lazy" alt="Logo Instagram Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.facebook.com/ruanggurucom/">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/facebook.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/facebook.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/facebook.png" loading="lazy" alt="Logo Facebook Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://twitter.com/ruangguru/">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/twitter.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/twitter.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/twitter.png" loading=" lazy" alt="Logo Twitter Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.youtube.com/ruangguru">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/youtube.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/youtube.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/youtube.png" loading=" lazy" alt="Logo Youtube Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.linkedin.com/company/ruangguru-com">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/linkedin.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/linkedin.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/linkedin.png" loading=" lazy" alt="Logo LinkedIn Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.tiktok.com/@ruangguru">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/tiktok.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/tiktok.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/tiktok.png" loading=" lazy" alt="Logo TikTok Footer" width="32px" height="32px" />
</picture>
</a>
</nav>
</div>
<p class="footer-copyright">
© 2026 All Rights Reserved PT. Ruang Raya Indonesia
</p>
</div>
<style>
.bantuan-container {
position: relative;
}
.bantuan-element {
position: fixed;
z-index: 999;
display: flex;
align-items: flex-end;
justify-content: flex-end;
cursor: pointer;
transition: all 0.6s ease;
}
.bantuan-top {
bottom: 11rem;
right: 2rem;
}
.bantuan-bottom {
bottom: 2rem;
right: 2rem;
}
.bantuan-top-2 {
bottom: 15rem;
right: 2rem;
}
.bantuan-top-3 {
bottom: 19rem;
right: 2rem;
}
.bantuan-bottom-2 {
bottom: 5rem;
right: 2rem;
}
.bantuan-bottom-3 {
bottom: 8rem;
right: 2rem;
}
@media (min-width: 768px) {
.bantuan-element img {
width: auto;
transition: all 0.4s ease;
}
.bantuan-top img {
width: 140px;
}
.bantuan-bottom img {
width: 140px;
}
.bantuan-top-2 img,
.bantuan-top-3 img {
width: 140px;
}
.bantuan-bottom-2 img,
.bantuan-bottom-3 img {
width: 140px;
}
.bantuan-element.clicked {
bottom: 9rem;
right: 2.5rem;
}
.bantuan-element.clicked img {
width: auto;
height: 64px;
}
}
@media (max-width: 767px) {
.bantuan-top {
bottom: 8rem;
right: 1rem;
align-items: center;
}
.bantuan-bottom {
bottom: 2rem;
right: 1.25rem;
align-items: center;
}
.bantuan-top-2 {
bottom: 12rem;
right: 1rem;
align-items: center;
}
.bantuan-top-3 {
bottom: 16rem;
right: 1rem;
align-items: center;
}
.bantuan-bottom-2 {
bottom: 5rem;
right: 1.25rem;
align-items: center;
}
.bantuan-bottom-3 {
bottom: 8rem;
right: 1.25rem;
align-items: center;
}
.bantuan-element img {
width: auto;
}
.bantuan-top img,
.bantuan-top-2 img,
.bantuan-top-3 img {
width: 96px;
}
.bantuan-bottom img,
.bantuan-bottom-2 img,
.bantuan-bottom-3 img {
width: 96px;
}
}
.bantuan-element:hover {
transform: scale(1.05);
}
.bantuan-element img {
max-width: 100%;
height: auto;
}
</style>
<div id="bantuan-divs-container" style="position: relative" data-product="ruangguru" data-table="rg_floating_icon"></div>
<script>
class FloatingDivsComponent {
constructor(product = 'ruangguru', table = 'rg_floating_icon') {
this.container = document.getElementById('bantuan-divs-container');
this.floatingElements = [];
this.product = product;
this.table = table;
// Configuration
this.config = {
baseApiUrl: 'https://gw.ruangguru.com/api/v3/rdb/p_ddgy8hjx5dxsqx/rg_banner/views/',
apiKey: 'vLyK3dJrDBRmOwueX2OJXibMkgsUbBk0WS4ua2p1',
maxElements: 2,
zIndexBase: 100,
};
// Build dynamic API URL based on table parameter
this.config.apiUrl = this.buildApiUrl();
this.init();
}
buildApiUrl() {
const baseUrl = this.config.baseApiUrl;
const tableName = this.table || 'rg_floating_icon';
const queryParams =
'offset=0&limit=99999&sort=rankPosition&where=(type,eq,floating)~and(showIn,anyof,blog)~and(hide,is,false)~and(product,eq,' +
this.product +
')&nested%5Bcta%5D%5Bfields%5D=Id,name,ctaId,imageUrl,ctaLink,targetUrl';
return `${baseUrl}${tableName}?${queryParams}`;
}
async init() {
try {
await this.fetchFloatingElements();
this.renderFloatingElements();
} catch (error) {
console.error('Failed to initialize floating divs component:', error);
}
}
async fetchFloatingElements() {
try {
const options = {
method: 'GET',
headers: {
'xc-token': this.config.apiKey || 'vLyK3dJrDBRmOwueX2OJXibMkgsUbBk0WS4ua2p1',
},
};
const urlNoco = this.config.apiUrl;
const response = await fetch(urlNoco, options);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
this.floatingElements = this.processApiResponse(data);
} catch (error) {
console.error('Error fetching floating elements:', error);
throw error;
}
}
processApiResponse(data) {
if (!data || !data.list || !Array.isArray(data.list)) {
return [];
}
console.log(data.list);
// Ensure we only get maximum 2 elements
const limitedElements = data.list.slice(0, this.config.maxElements);
return limitedElements;
}
renderFloatingElements() {
if (!this.container || this.floatingElements.length === 0) {
return;
}
// Additional safeguard: ensure we never render more than maxElements
const elementsToRender = this.floatingElements.slice(0, this.config.maxElements);
// Clean up existing elements and their event listeners
this.cleanupExistingElements();
// Clear existing content
this.container.innerHTML = '';
elementsToRender.forEach((element, index) => {
const floatingDiv = this.createFloatingDiv(element, index);
this.container.appendChild(floatingDiv);
});
}
cleanupExistingElements() {
// Clear existing elements (no need for event listener cleanup with CSS approach)
const existingElements = this.container.querySelectorAll('[data-floating-element]');
existingElements.forEach(element => {
element.remove();
});
}
createFloatingDiv(element, index) {
const div = document.createElement('div');
const cta = element.cta[0]; // Use the first CTA
// Add data attribute for cleanup tracking
div.setAttribute('data-floating-element', 'true');
// Apply CSS classes based on rankPosition
const positionClass = this.getPositionClass(element.rankPosition, index);
div.className = `bantuan-element ${positionClass}`;
div.style.zIndex = this.config.zIndexBase + index;
// Create the link and image
const link = document.createElement('a');
link.href = 'https://cta.ruangguru.com/' + cta.ctaId || '#';
link.target = '_blank';
// Add tracking attributes
link.setAttribute('data-tracking-event-type', 'landing_page__core__item_click');
link.setAttribute(
'data-tracking-context',
JSON.stringify({
product_name: this.product,
cta_action: 'redirection',
cta_action_detail: link.href,
item_type: 'floating',
item_name: element.name || 'Floating element',
item_category: 'payment',
item_position: index,
item_serial: null,
section_type: 'floating_item',
section_position: 'body',
section_name: 'floating_item',
})
);
const img = document.createElement('img');
img.src = element.imageUrl + '?h=200&convert=webp';
img.alt = element.name || 'Floating element';
img.loading = 'lazy';
// Add click tracking
link.addEventListener('click', () => {
this.trackClick(element, cta);
});
link.appendChild(img);
div.appendChild(link);
return div;
}
getPositionClass(rankPosition, index) {
// Define positioning classes based on rankPosition
if (rankPosition === 1) {
return 'bantuan-top'; // Top position
} else if (rankPosition === 2) {
return 'bantuan-bottom'; // Bottom position
} else {
// For additional elements, distribute them evenly
return `bantuan-${index % 2 === 0 ? 'top' : 'bottom'}-${Math.floor(index / 2) + 1}`;
}
}
trackClick(element, cta) {
// Implement click tracking logic here
console.log('Floating element clicked:', {
elementId: element.Id,
elementName: cta.name,
ctaId: cta.ctaId,
targetUrl: cta.targetUrl,
});
}
// Public method to manually refresh
async refresh() {
try {
await this.fetchFloatingElements();
this.renderFloatingElements();
} catch (error) {
console.error('Failed to refresh floating elements:', error);
throw error;
}
}
// Public method to get current floating elements
getFloatingElements() {
return [...this.floatingElements];
}
}
// Initialize the component when DOM is ready
document.addEventListener('DOMContentLoaded', () => {
// Get product and table parameters from data attributes
const container = document.getElementById('bantuan-divs-container');
const product = container.getAttribute('data-product') || 'ruangguru';
const table = container.getAttribute('data-table') || 'rg_floating_icon';
new FloatingDivsComponent(product, table);
});
// Export for use in other modules if needed
if (typeof module !== 'undefined' && module.exports) {
module.exports = FloatingDivsComponent;
}
</script> <div id="wp-install-nudge" style="
position: fixed;
bottom: 0rem;
right: 0;
z-index: 999;
cursor: pointer;
"></div>
<script>
(function (w, d, s, o, f, js, fjs) {
w['Sales-Nudge-Widget'] = o; w[o] = w[o] || function () { (w[o].q = w[o].q || []).push(arguments) };
js = d.createElement(s), fjs = d.getElementsByTagName(s)[0];
js.id = o; js.src = f; js.async = 1; fjs.parentNode.insertBefore(js, fjs);
}(window, document, 'script', 'wpInstallNudge', 'https://cdn-web-2.ruangguru.com/sales-nudge/6198a95130/dist/widget.js'));
wpInstallNudge('init', { targetElementId: 'wp-install-nudge', clientTarget: 'ruangguru_blog' });
</script>
<script>
// note: disabled due to auto reload page
// var lastScrollTop = 0;
// $(window).scroll(function(event){
// var st = $(this).scrollTop();
// if (st > lastScrollTop){
// $('#wp-install-nudge').slideDown( "slow", function() {});
// } else {
// $('#wp-install-nudge').slideUp( "slow", function() {});
// }
// lastScrollTop = st;
// });
// $(document).ready(function () {
// $("#wp-install-nudge").hide();
// });
$('#wp-install-nudge').click(function(){
Analytics.track("promotion__install_nudge__click",
{
user_email: "ruangguru@blog.com",
cta_link: widgetData.dataConfig.target_link
}).catch((err) => {
console.log("tracker error", err);
});
});
</script>
</footer>
<div id="__next"></div>
<script type="speculationrules">
{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"\/blog\/*"},{"not":{"href_matches":["\/blog\/wp-*.php","\/blog\/wp-admin\/*","\/blog\/wp-content\/uploads\/*","\/blog\/wp-content\/*","\/blog\/wp-content\/plugins\/*","\/blog\/wp-content\/themes\/ruangguru\/*","\/blog\/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
</script>
<script>
async function getCtaDetails(ctaIds) {
const endpoint =
" https://gw.ruangguru.com/api/v3/rdb/p_ddgy8hjx5dxsqx/CTA/views/CTA?offset=0&limit=10&where=(ctaId,in," + ctaIds.toString() + ")";
try {
const response = await fetch(endpoint, {
headers: {
"xc-token": "-hG2nBDJzSj0agSgNtcJx97M4F02y54nUMoY6plJ",
},
});
const data = await response.json();
const ctaList = data?.list || [];
const ctaMap = new Map();
for (const ctaData of ctaList) {
ctaMap.set(ctaData.ctaId, ctaData);
}
return ctaMap;
} catch (error) {
console.error("Error fetching CTA details:", error);
return new Map();
}
}
async function replaceCTA() {
const regex = /{{cta\((‘(.*?)’|“(.*?)”)\)}}/g;
const bodyHTML = document.body.innerHTML;
const matches = Array.from(bodyHTML.matchAll(regex));
const ctaIds = matches.map((match) => {
let ctaId = match[2] ?? match[3];
return ctaId;
});
const ctaMap = await getCtaDetails(ctaIds);
const replacedHTML = bodyHTML.replace(regex, (match, _inner, ctaId1, ctaId2) => {
const ctaId = ctaId1 ?? ctaId2;
const ctaData = ctaMap.get(ctaId);
if (ctaData) {
return `<a href="https://cta.ruangguru.com/${ctaData.ctaId}" target="_${ctaData.targetType}" style="position:relative;display:inline-block;">
<img src="${ctaData.imageUrl}" loading="lazy" alt="${ctaData.altText}" />
</a>`;
} else {
return match;
}
});
document.body.innerHTML = replacedHTML;
}
</script>
<meta name="author" content="Ruangguru Tech Team">
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-PVNLZFT" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- Tracker -->
<script type="text/javascript" src="https://cdn-web-2.ruangguru.com/landing-page-web/public/staticpages/global-assets/js/cta.js"></script>
<script src="https://unpkg.com/@dotlottie/player-component@latest/dist/dotlottie-player.mjs" type="module"></script>
</body>
</html>