Tidak suka iklan? Pergi Bebas Iklan Hari ini

Generator Umpan RSS / Atom

DataPengembangTeks
IKLAN · HAPUS?
MEMASUKKAN

Metadatanya Feed

URL resmi situs web yang diwakili oleh feed ini.
URL resmi opsional dari feed itu sendiri (digunakan dalam atom:link rel=self).
Kode bahasa ISO (misalnya en, en-us, fr).
Identifikasi unik dan permanen untuk feed. Defaultnya adalah URL Situs.

Item

Satu item per blok. Gunakan baris 'kunci: nilai'. Pisahkan item dengan baris yang hanya berisi '---'. Kunci yang diakui: judul, tautan, deskripsi, konten, pubDate, guid, penulis, kategori.
IKLAN · HAPUS?

Memandu

Buat feed XML yang sesuai dengan spesifikasi secara ketat untuk RSS 2.0 atau Atom 1.0 dalam beberapa detik. Isi metadata saluran Anda, tempel blok item, dan salin atau unduh feed

Generator Umpan RSS / Atom

Buat feed XML yang sesuai dengan spesifikasi secara ketat untuk RSS 2.0 atau Atom 1.0 dalam beberapa detik. Isi metadata saluran Anda, tempel blok item, dan salin atau unduh feed yang lolos pengecekan W3C Feed Validator pada pertama kali — escaping XML, tanggal RFC 822 / RFC 3339, konten yang dilindungi CDATA, ruang nama, dan tautan diri semua diatur secara otomatis untuk Anda.

Cara Penggunaan

  1. Pilih tipe feed: RSS 2.0 (dukungan paling luas untuk pembaca) atau Atom 1.0 (spesifikasi lebih ketat, dengan ruang nama).
  2. Isi metadata feed — judul, URL situs, deskripsi, dan field opsional seperti bahasa, hak cipta, atau penulis.
  3. Opsional berikan URL Diri sehingga pembaca dapat menemukan kembali feed (ditambahkan sebagai atom:link rel="self").
  4. Tempel item Anda ke bidang Item. Setiap item adalah blok dari key: value baris; pisahkan item dengan baris yang hanya berisi ---.
  5. Feed XML yang dihasilkan muncul di kanan saat Anda mengetik. Salin atau klik Unduh untuk menyimpan feed.xml / atom.xml.

Fitur

  • RSS 2.0 dan Atom 1.0 — Beralih antara dua spesifikasi; field metadata yang sesuai muncul secara otomatis.
  • Pengelolaan escaping XML ketat&, <, >, "dan ' dilindungi di mana mereka harus.
  • Format tanggal RFC 822 & RFC 3339 — Masukkan tanggal apa pun yang masuk akal (ISO 8601, YYYY-MM-DD HH:MM:SS, atau tanggal biasa); alat ini menghasilkan format yang tepat untuk tipe feed yang dipilih.
  • Konten yang dilindungi CDATA untuk kebanyakan halaman. Gunakan content: untuk konten penuh artikel HTML; alat ini melindungi secara aman dan membagi urutan ]]> sekuen.
  • Kategori & tag — Nilai yang dipisahkan koma category dikonversi menjadi elemen terpisah <category> dalam RSS atau <category term=""/> entri dalam Atom.
  • Validasi langsung — Peringatan langsung menandai field yang hilang, tanggal yang tidak dapat diproses, dan URL yang tidak valid sehingga feed dapat lolos parser ketat seperti Feedparser.
  • Tautan diri & tag generator — Opsional untuk kedua format, ditambah tautan otomatis atom:link rel="self" Nol perjalanan balik <generator> elemen.
  • — Semua proses berjalan di browser; data feed Anda tidak pernah meninggalkan halaman. Apa perbedaan antara RSS 2.0 dan Atom 1.0?

Tanya Jawab Umum

  1. Keduanya adalah format XML untuk mempublikasikan konten yang sering diperbarui, tetapi dirancang secara berbeda. RSS 2.0 lebih tua, lebih sederhana, dan lebih longgar mengenai field yang diperlukan — item dapat memiliki hanya judul atau hanya deskripsi. Atom 1.0 muncul kemudian (2005) sebagai standar IETF, dengan aturan yang lebih ketat: setiap entri perlu memiliki , dan

    Mengapa format tanggal sangat penting dalam feed? , dan sebuah timestamp. Atom juga menggunakan ruang nama XML secara tepat dan mendukung both ringkasan dan konten penuh sebagai elemen yang terpisah, sementara RSS membebani elemen tersebut untuk keduanya.</p> </div> </li> <li id="faq-question-1780452523995" class="rank-math-list-item"> <h4 class="rank-math-question">Pembaca feed memarsing tanggal untuk mengurutkan entri, mendeteksi item baru, dan menampilkan waktu "dipublikasikan 2 jam yang lalu". Format dua sistem ini menggunakan konvensi tanggal yang berbeda: RSS 2.0 menuntut format RFC 822 (misalnya "Wed, 15 Jan 2025 10:30:00 +0000"), sementara Atom 1.0 menuntut format RFC 3339 / ISO 8601 (misalnya "2025-01-15T10:30:00Z"). Feed dengan tanggal yang tidak valid mungkin ditolak secara diam-diam oleh parser ketat seperti feedparser, atau item mungkin muncul dalam urutan yang salah di klien seperti Feedly atau NetNewsWire.</h4> <div class="rank-math-answer"> <p>Apa arti CDATA dalam elemen konten feed?</p> </div> </li> <li id="faq-question-1780452523996" class="rank-math-list-item"> <h4 class="rank-math-question">CDATA berarti "Character Data" dan memberi tahu parser XML untuk menganggap semua isi sebagai teks murni, menghindari aturan parsing normal. Ini dilindungi sebagai . Feed menggunakan CDATA di dalam (RSS) atau (Atom) sehingga penulis dapat mengintegrasikan markup HTML penuh — tag anchor, gambar, teks terformat — tanpa harus mengesapkan setiap dan & karakter. Kasus yang rumit adalah bahwa urutan ]]> tidak boleh muncul di dalam bagian CDATA, sehingga generator membaginya ke dua blok CDATA.</h4> <div class="rank-math-answer"> <p>Apa peran elemen atau ?</p> </div> </li> <li id="faq-question-1780452523997" class="rank-math-list-item"> <h4 class="rank-math-question">Ini adalah identifikasi unik permanen yang digunakan pembaca feed untuk mengenali item yang sama saat diperbarui. Tanpa ID yang stabil, pembaca menganggap setiap pembaruan sebagai jika semua item baru, yang menyebabkan spam inbox. Di RSS elemen ini adalah dan dapat mencakup atribut isPermaLink; di Atom elemen ini adalah dan harus merupakan URI. Praktik terbaik adalah menggunakan URL resmi posting dan tidak mengubahnya, bahkan jika judul atau URL slug posting diperbarui nanti.</h4> <div class="rank-math-answer"> <p>Mengapa banyak validator feed menolak feed yang dihasilkan oleh AI?</p> </div> </li> <li id="faq-question-1780452523998" class="rank-math-list-item"> <h4 class="rank-math-question">Validator seperti Layanan Validasi Feed W3C memeriksa tiga hal: XML yang benar (tag yang sesuai, entitas yang diescape, ruang nama yang dideklarasikan), kepatuhan terhadap spesifikasi (elemen yang diperlukan hadir, dalam struktur yang tepat), dan keakuratan format tanggal. Generator teks AI sering menghasilkan "XML yang mendekati" yang tampak benar pada pandangan pertama tetapi gagal pada detail-detail — kehilangan deklarasi ruang nama, ampersand murni di URL, tanggal ISO di dokumen RSS, atau item yang kehilangan elemen guid/id. Generator yang dirancang secara khusus mengenai aturan ini secara deterministik, bukan secara statistik.</h4> <div class="rank-math-answer"> <p>Blog Saya Yang Hebat</p> </div> </li> </ol> </div> </div> </div> </div><!-- .col --> <div class="col aw--col-300 side-content"> <a href="https://iotools.cloud/id/pricing/" class="info-box mb-3" style="background-color: var(--io-color-blue, #464aff);letter-spacing:0;min-height:70px;padding-top:5px;"> <div class="info-box-content"> <span class="info-box-text text-sm white">Ingin bebas iklan?</span> <span class="info-box-number white" style="font-weight: 500;"> <span class="white"><u>Bebas Iklan Hari Ini</u></span> </span> </div> <span class="info-box-icon white" style="width:50px"> <i class="ti" data-no-translation=""></i> </span> </a> <div class="card card-body pb-0"> <h2 class="h5 blue mb-1"> <i class="ti" data-no-translation=""></i> Instal Ekstensi Kami </h2> <p class="mb-2"> Tambahkan alat IO ke browser favorit Anda untuk akses instan dan pencarian lebih cepat </p> <div class="text-center pt-1 pb-3"> <div id="io-browser-extension-d41d8cd9" class="d-none d-lg-block"> <div class="io-browser-extension-container d-flex justify-content-center"> <a href="https://chromewebstore.google.com/detail/io-tools-quick-access/ngfigjoligkblljadlbojinhoiofkdld" target="_blank" rel="noopener" class="io-browser-extension-btn" data-toggle="tooltip" data-placement="top" title="Tambahkan ke Chrome" style="cursor: pointer;"> Ke <img src="https://iotools.cloud/wp-content/themes/iotools/assets/images/browsers/chrome.svg" width="18" height="18" alt="Ekstensi Chrome" class="img-fluid"> </a> <a href="https://microsoftedge.microsoft.com/addons/detail/io-tools-quick-access/daapkanhnnjodjpobfmkopolagbkcccb" target="_blank" rel="noopener" class="io-browser-extension-btn" data-toggle="tooltip" data-placement="top" title="Tambahkan ke Edge" style="cursor: pointer;"> Ke <img src="https://iotools.cloud/wp-content/themes/iotools/assets/images/browsers/edge.svg" width="18" height="18" alt="Ekstensi Tepi" class="img-fluid"> </a> <a href="https://addons.mozilla.org/en-US/firefox/addon/iotools-quick-access/" target="_blank" rel="noopener" class="io-browser-extension-btn" data-toggle="tooltip" data-placement="top" title="Tambahkan ke Firefox" style="cursor: pointer;"> Ke <img src="https://iotools.cloud/wp-content/themes/iotools/assets/images/browsers/firefox.svg" width="18" height="18" alt="Ekstensi Firefox" class="img-fluid"> </a> <a href="https://addons.opera.com/en/extensions/details/io-tools-quick-access/" target="_blank" rel="noopener" class="io-browser-extension-btn" data-toggle="tooltip" data-placement="top" title="Tambahkan ke Opera" style="cursor: pointer;"> Ke <img src="https://iotools.cloud/wp-content/themes/iotools/assets/images/browsers/opera.svg" width="18" height="18" alt="Ekstensi Opera" class="img-fluid"> </a> <style> #io-browser-extension-d41d8cd9 .io-browser-extension-container { gap: 10px; margin-left: -1px; } #io-browser-extension-d41d8cd9 .io-browser-extension-btn { display: flex; padding: 3px 5px 1px 6px;; background-color: white; border: 1px solid #dee2e6; border-radius: 12px; text-decoration: none; transition: all 0.2s ease; font-size: 12px;; color: #000!important; align-items: center; justify-content: center; gap: 2px; flex-grow: 1;; } #io-browser-extension-d41d8cd9 .io-browser-extension-btn img { transform: translateY(-1px); } #io-browser-extension-d41d8cd9 .io-browser-extension-btn:hover { background-color: #f8f9fa; border-color: #ced4da; color: #333; text-decoration: none; } </style> </div> </div> </div> </div> <div class="card card-body pb-0"> <h2 class="h5 blue mb-1"> <i class="ti" data-no-translation="">恵</i><a href="https://scoreboard.iotools.cloud/" target="_blank" rel="noopener"> Papan Skor Telah Tiba!</a> </h2> <p class="mb-2"> <a href="https://scoreboard.iotools.cloud/" target="_blank" rel="noopener">Papan Skor</a> adalah cara yang menyenangkan untuk melacak permainan Anda, semua data disimpan di browser Anda. Lebih banyak fitur akan segera hadir! </p> </div> <div class="aw aw-side_content_1_desktop text-center mb-4"><div style="text-align: center;color: #9f9f9f;font-size: 9px;letter-spacing: 1px;line-height: 25px;height: 25px;width: 100%;">IKLAN · <a tabindex="-1" target="_blank" href="https://iotools.cloud/id/pricing/" title="Bebas Iklan" style="text-decoration: underline;color: #9f9f9f;">HAPUS?</a></div> <!-- Iotools_S2S_SideContent1_Desktop_ROS --> <style> @media only screen and (min-width: 0px) and (min-height: 0px) { div[id^="bsa-zone_1741342473519-9_123456"] { min-width: 0px; min-height: 0px; } } @media only screen and (min-width: 1370px) and (min-height: 0px) { div[id^="bsa-zone_1741342473519-9_123456"] { min-width: 200px; min-height: 250px; } } </style> <div id="bsa-zone_1741342473519-9_123456"></div> </div> <div class="card card-body pb-0"> <div class="d-flex justify-content-between align-items-center mb-3"> <h2 class="h5 blue mb-0"><i class="ti" data-no-translation=""></i> Alat Wajib Coba</h2> <a class="text-muted small blue" href="https://iotools.cloud/id/tags/must-try/"><u>Lihat semua</u></a> </div> <div class="card card--tool card--tool-compact card--tool-compact--mini elevation-0 border card--tool-has-icon"> <a href="https://iotools.cloud/id/tool/imagekit/background-remover/" class="card-image card-image--icon" aria-label="Penghapus Latar Belakang"> <i class="ti blue" style="--icon-hex:'\f360'" data-no-translation=""></i> </a> <span class="card-image card-image--icon" data-toggle="tooltip" title="Perangkat: ImageKit" ><i class="ti blue" style="--icon-hex:'\f360'" data-no-translation=""></i></span> <a class="card-body flex-row align-items-center h6 mb-0 black" href="https://iotools.cloud/id/tool/imagekit/background-remover/"> Penghapus Latar Belakang </a> </div> <div class="card card--tool card--tool-compact card--tool-compact--mini elevation-0 border card--tool-has-icon"> <a href="https://iotools.cloud/id/tool/ai-image-editor/" class="card-image card-image--icon" aria-label="Editor Gambar AI"> <i class="ti blue" style="--icon-hex:'\fa32'" data-no-translation=""></i> </a> <a class="card-body flex-row align-items-center h6 mb-0 black" href="https://iotools.cloud/id/tool/ai-image-editor/"> Editor Gambar AI<span class="io-badge io-badge--toolset" style="background-color: #92ff9580;color:#10a581" data-toggle="tooltip" title="Perangkat" data-content="Toolset"></span> </a> </div> <div class="card card--tool card--tool-compact card--tool-compact--mini elevation-0 border card--tool-has-icon"> <a href="https://iotools.cloud/id/tool/ai-image-generator/" class="card-image card-image--icon" aria-label="Generator Gambar AI"> <i class="ti blue" style="--icon-hex:'\ffb0'" data-no-translation=""></i> </a> <a class="card-body flex-row align-items-center h6 mb-0 black" href="https://iotools.cloud/id/tool/ai-image-generator/"> Generator Gambar AI </a> </div> <div class="card card--tool card--tool-compact card--tool-compact--mini elevation-0 border card--tool-has-icon"> <a href="https://iotools.cloud/id/tool/imagekit/" class="card-image card-image--icon" aria-label="Kit Gambar"> <i class="ti blue" style="--icon-hex:'\f360'" data-no-translation=""></i> </a> <a class="card-body flex-row align-items-center h6 mb-0 black" href="https://iotools.cloud/id/tool/imagekit/"> Kit Gambar<span class="io-badge io-badge--toolset" style="background-color: #92ff9580;color:#10a581" data-toggle="tooltip" title="Perangkat" data-content="Toolset"></span> </a> </div> <div class="card card--tool card--tool-compact card--tool-compact--mini elevation-0 border card--tool-has-icon"> <a href="https://iotools.cloud/id/tool/pdf-converter/compress-pdf/" class="card-image card-image--icon" aria-label="Kompresor PDF"> <i class="ti blue" style="--icon-hex:'\ed44'" data-no-translation=""></i> </a> <span class="card-image card-image--icon" data-toggle="tooltip" title="Toolset: Konverter PDF" ><i class="ti blue" style="--icon-hex:'\f7ac'" data-no-translation=""></i></span> <a class="card-body flex-row align-items-center h6 mb-0 black" href="https://iotools.cloud/id/tool/pdf-converter/compress-pdf/"> Kompresor PDF </a> </div> <div class="card card--tool card--tool-compact card--tool-compact--mini elevation-0 border card--tool-has-icon"> <a href="https://iotools.cloud/id/tool/image-converter/" class="card-image card-image--icon" aria-label="Konverter Gambar"> <i class="ti blue" style="--icon-hex:'\fd9f'" data-no-translation=""></i> </a> <a class="card-body flex-row align-items-center h6 mb-0 black" href="https://iotools.cloud/id/tool/image-converter/"> Konverter Gambar<span class="io-badge io-badge--toolset" style="background-color: #92ff9580;color:#10a581" data-toggle="tooltip" title="Perangkat" data-content="Toolset"></span> </a> </div> <div class="card card--tool card--tool-compact card--tool-compact--mini elevation-0 border card--tool-has-icon"> <a href="https://iotools.cloud/id/tool/one-time-link/" class="card-image card-image--icon" aria-label="Tautan Satu Kali"> <i class="ti blue" style="--icon-hex:'\f7bd'" data-no-translation=""></i> </a> <a class="card-body flex-row align-items-center h6 mb-0 black" href="https://iotools.cloud/id/tool/one-time-link/"> Tautan Satu Kali </a> </div> </div> <div class="aw aw-side_content_2_desktop text-center mb-4"><div style="text-align: center;color: #9f9f9f;font-size: 9px;letter-spacing: 1px;line-height: 25px;height: 25px;width: 100%;">IKLAN · <a tabindex="-1" target="_blank" href="https://iotools.cloud/id/pricing/" title="Bebas Iklan" style="text-decoration: underline;color: #9f9f9f;">HAPUS?</a></div> <!-- Iotools_S2S_SideContent2_Desktop_ROS --> <style> @media only screen and (min-width: 0px) and (min-height: 0px) { div[id^="bsa-zone_1741342696932-0_123456"] { min-width: 0px; min-height: 0px; } } @media only screen and (min-width: 1370px) and (min-height: 0px) { div[id^="bsa-zone_1741342696932-0_123456"] { min-width: 200px; min-height: 250px; } } </style> <div id="bsa-zone_1741342696932-0_123456"></div> </div> <div class="card card-body pb-0"> <div class="d-flex justify-content-between align-items-center mb-3"> <h2 class="h5 blue mb-0"> <i class="ti" data-no-translation=""></i> Pendatang baru </h2> <a class="text-muted small blue" href="https://iotools.cloud/id/tools/"><u>Lihat semua</u></a> </div> <div class="card card--tool card--tool-compact card--tool-compact--mini elevation-0 border card--tool-has-icon"> <a href="https://iotools.cloud/id/tool/certificate-transparency-log-lookup/" class="card-image card-image--icon" aria-label="Certificate Transparency Log Lookup"> <i class="ti blue" style="--icon-hex:'\ed76'" data-no-translation=""></i> </a> <a class="card-body flex-row align-items-center h6 mb-0 black" href="https://iotools.cloud/id/tool/certificate-transparency-log-lookup/"> Certificate Transparency Log Lookup </a> </div> <div class="card card--tool card--tool-compact card--tool-compact--mini elevation-0 border card--tool-has-icon"> <a href="https://iotools.cloud/id/tool/hsts-preload-header-generator/" class="card-image card-image--icon" aria-label="HSTS Preload Header Generator"> <i class="ti blue" style="--icon-hex:'\ed58'" data-no-translation=""></i> </a> <a class="card-body flex-row align-items-center h6 mb-0 black" href="https://iotools.cloud/id/tool/hsts-preload-header-generator/"> HSTS Preload Header Generator </a> </div> <div class="card card--tool card--tool-compact card--tool-compact--mini elevation-0 border card--tool-has-icon"> <a href="https://iotools.cloud/id/tool/argon2-hash-generator/" class="card-image card-image--icon" aria-label="Argon2 Hash Generator"> <i class="ti blue" style="--icon-hex:'\eac7'" data-no-translation=""></i> </a> <a class="card-body flex-row align-items-center h6 mb-0 black" href="https://iotools.cloud/id/tool/argon2-hash-generator/"> Argon2 Hash Generator </a> </div> <div class="card card--tool card--tool-compact card--tool-compact--mini elevation-0 border card--tool-has-icon"> <a href="https://iotools.cloud/id/tool/cidr-overlap-checker/" class="card-image card-image--icon" aria-label="CIDR Overlap / Subnet Conflict Checker"> <i class="ti blue" style="--icon-hex:'\edff'" data-no-translation=""></i> </a> <a class="card-body flex-row align-items-center h6 mb-0 black" href="https://iotools.cloud/id/tool/cidr-overlap-checker/"> CIDR Overlap / Subnet Conflict Checker </a> </div> <div class="card card--tool card--tool-compact card--tool-compact--mini elevation-0 border card--tool-has-icon"> <a href="https://iotools.cloud/id/tool/css-nesting-converter/" class="card-image card-image--icon" aria-label="CSS Nesting Converter"> <i class="ti blue" style="--icon-hex:'\ebcc'" data-no-translation=""></i> </a> <a class="card-body flex-row align-items-center h6 mb-0 black" href="https://iotools.cloud/id/tool/css-nesting-converter/"> CSS Nesting Converter </a> </div> <div class="card card--tool card--tool-compact card--tool-compact--mini elevation-0 border card--tool-has-icon"> <a href="https://iotools.cloud/id/tool/oauth-authorization-url-builder/" class="card-image card-image--icon" aria-label="OAuth 2.0 Authorization URL Builder"> <i class="ti blue" style="--icon-hex:'\eade'" data-no-translation=""></i> </a> <a class="card-body flex-row align-items-center h6 mb-0 black" href="https://iotools.cloud/id/tool/oauth-authorization-url-builder/"> OAuth 2.0 Authorization URL Builder </a> </div> <div class="card card--tool card--tool-compact card--tool-compact--mini elevation-0 border card--tool-has-icon"> <a href="https://iotools.cloud/id/tool/har-to-curl-extractor/" class="card-image card-image--icon" aria-label="HAR to cURL Commands Extractor"> <i class="ti blue" style="--icon-hex:'\ebef'" data-no-translation=""></i> </a> <a class="card-body flex-row align-items-center h6 mb-0 black" href="https://iotools.cloud/id/tool/har-to-curl-extractor/"> HAR to cURL Commands Extractor </a> </div> <p class="small text-muted mb-3 text-center"><b>Memperbarui:</b> Kita <a href="https://iotools.cloud/id/tool/certificate-transparency-log-lookup/" class="text-muted"><u>alat terbaru</u></a> was added on Jun 26, 2026</p> </div> <div class="aw aw-dashboard_sidebar text-center mb-4"><div style="text-align: center;color: #9f9f9f;font-size: 9px;letter-spacing: 1px;line-height: 25px;height: 25px;width: 100%;">IKLAN · <a tabindex="-1" target="_blank" href="https://iotools.cloud/id/pricing/" title="Bebas Iklan" style="text-decoration: underline;color: #9f9f9f;">HAPUS?</a></div> <!-- Iotools_S2S_Dashboard_ROS --> <style> @media only screen and (min-width: 0px) and (min-height: 0px) { div[id^="bsa-zone_1741781122639-0_123456"] { min-width: 300px; min-height: 50px; } } @media only screen and (min-width: 900px) and (min-height: 0px) { div[id^="bsa-zone_1741781122639-0_123456"] { min-width: 200px; min-height: 200px; } } </style> <div id="bsa-zone_1741781122639-0_123456"></div> </div> <div class="card card-body io-no-scrollbar" style="max-height:700px;"> <h2 class="h5 blue mb-3"><i class="ti" data-no-translation=""></i> Pojok Berita <small class="black">dengan Sorotan Teknologi</small></h2> <div data-load-more-id="side-news" class="exclude--translation" data-no-translation=""> <div class="io-loading mb-3"> <div class="io-loading__item title"></div> <div class="io-loading__item"></div> <div class="io-loading__item"></div> <div class="io-loading__item"></div> </div> <div class="io-loading mb-3"> <div class="io-loading__item title"></div> <div class="io-loading__item"></div> <div class="io-loading__item"></div> <div class="io-loading__item"></div> </div> <div class="io-loading mb-3"> <div class="io-loading__item title"></div> <div class="io-loading__item"></div> <div class="io-loading__item"></div> <div class="io-loading__item"></div> </div> </div> <script class="exclude--lazy-load" async> // Immediately load news from session storage document.querySelectorAll('[data-load-more-id="side-news"]').forEach(function(element) { const dailyNewsHtml = sessionStorage.getItem(`dailyNewsHtml`); if (dailyNewsHtml) { element.innerHTML = dailyNewsHtml; } }); </script> <p class="text-center"> <button class="btn--load-more" data-load-more="{"target":"side-news","postType":"wprss_feed_item","offset":3}">Tunjukkan Lebih Banyak!</button> </p> </div> <h2 class="h5 blue text-right mt-5"><i class="ti ti-heart-handshake" data-no-translation=""></i> Terlibat</h2> <div class="text-right mb-4"> <p>Bantu kami untuk terus menyediakan alat gratis yang berharga</p> <div class="d-lg-flex justify-content-end"> <a href="https://buymeacoffee.com/iotools" target="_blank" rel="noopener"><img width="180" height="50" src="https://iotools.cloud/wp-content/themes/iotools/assets/images/yellow-button.png" alt="Belikan aku kopi" class="img-fluid"></a> </div> </div> <div class="aw aw-side_content_sticky_desktop sticky-top text-center"><div style="text-align: center;color: #9f9f9f;font-size: 9px;letter-spacing: 1px;line-height: 25px;height: 25px;width: 100%;">IKLAN · <a tabindex="-1" target="_blank" href="https://iotools.cloud/id/pricing/" title="Bebas Iklan" style="text-decoration: underline;color: #9f9f9f;">HAPUS?</a></div> <!-- Iotools_S2S_SideContentSticky_Desktop_ROS --> <style> @media only screen and (min-width: 0px) and (min-height: 0px) { div[id^="bsa-zone_1741342751312-1_123456"] { min-width: 0px; min-height: 0px; } } @media only screen and (min-width: 1370px) and (min-height: 0px) { div[id^="bsa-zone_1741342751312-1_123456"] { min-width: 120px; min-height: 600px; } } </style> <div id="bsa-zone_1741342751312-1_123456"></div> </div> </div> </div><!-- .row --> </div><!-- .container --> </main><!-- #content --> <!-- Main Footer --> <footer class="main-footer text-sm text-center text-xl-left d-flex flex-xl-nowrap flex-column-reverse flex-xl-row"> <span>Hak Cipta © 2026 <a href="https://iotools.cloud/id/" class="exclude--translation" data-no-translation=""><u>iotools.cloud</u></a>. Seluruh hak cipta.</span> <!-- To the right --> <ul class="navbar-nav d-flex flex-row ml-xl-auto justify-content-center flex-wrap"> <li class="nav-item"> <a href="https://iotools.cloud/id/" class="text-muted">Rumah</a> </li> <li class="nav-item"> <a href="https://iotools.cloud/id/about/" class="text-muted">Tentang</a> </li> <li class="nav-item"> <a href="https://iotools.cloud/id/contact/" class="text-muted">Kontak</a> </li> <li class="nav-item"> <a href="https://iotools.cloud/id/pricing/" class="text-muted">Harga</a> </li> <li class="nav-item blue mb-2 mb-xl-0"> • </li> <li class="nav-item"><a href="https://iotools.cloud/id/community-tools/" rel="nofollow" class="text-muted">Alat Komunitas</a></li> <li class="nav-item"><a href="https://iotools.cloud/id/journal/" class="text-muted">Pusat Jurnal</a></li> <li class="nav-item blue mb-2 mb-xl-0"> • </li> <li class="nav-item"><a href="https://iotools.cloud/id/privacy-policy/" class="text-muted">Kebijakan pribadi</a></li> <li class="nav-item"><a href="https://iotools.cloud/id/terms-of-service/" class="text-muted">Ketentuan Layanan</a></li> <li class="nav-item"><a href="https://iotools.statuspage.io/" target="_blank" rel="noopener" class="text-muted">Status Sistem</a></li> <li class="nav-item"><a href="https://iotools.cloud/id/sitemap/" class="text-muted">Peta Situs</a></li> <li class="nav-item blue mb-2 mb-xl-0 d-none d-lg-block"> • </li> <li class="d-block w-100 d-lg-none"></li> <li class="nav-item"><a href="https://x.com/io_tools" target="_blank" rel="noopener" class="text-muted" aria-label="X"><i class="ti ti-brand-x" data-no-translation=""></i></a></li> <li class="nav-item"><a href="https://www.facebook.com/iotools.cloud" target="_blank" rel="noopener" class="text-muted" aria-label="Facebook"><i class="ti" data-no-translation=""></i></a></li> <li class="nav-item"><a href="https://www.youtube.com/@io-tools" target="_blank" rel="noopener" class="text-muted" aria-label="Youtube"><i class="ti" data-no-translation=""></i></a></li> <li class="nav-item"><a href="https://www.tiktok.com/@iotools" target="_blank" rel="noopener" class="text-muted" aria-label="TIK tok"><i class="ti" data-no-translation=""></i></a></li> <li class="nav-item"><a href="https://www.linkedin.com/company/io-tools/" target="_blank" rel="noopener" class="text-muted" aria-label="terkait"><i class="ti ti-brand-linkedin" data-no-translation=""></i></a></li> <li class="nav-item"><a href="https://www.producthunt.com/products/io-tools" target="_blank" rel="noopener" class="text-muted" aria-label="perburuan produk"><i class="ti ti-brand-producthunt" data-no-translation=""></i></a></li> </ul> </footer> <div class="bsa-gap d-none d-xl-block" style="height: 110px;"> </div> <div class="bsa-gap d-xl-none" style="height: 60px;"> </div> <style> body:has(>.bsa_fixed-leaderboard[style*="display: none"]) .bsa-gap { display: none !important; } </style> </div><!-- .wrapper --> <template id="tp-language" data-tp-language="id_ID"></template><script type="speculationrules"> {"prerender":[{"source":"document","where":{"and":[{"href_matches":"/id/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/iotools/*","/id/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prerender, .no-prerender a"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"moderate"}]} </script> <style> #ioValidationInfo:empty { display: none; } #ioValidationInfo.validation-success { background: #d4edda; border-color: #28a745; color: #155724; } #ioValidationInfo.validation-warning { background: #fff3cd; border-color: #ffc107; color: #856404; } #ioValidationInfo.validation-error { background: #f8d7da; border-color: #dc3545; color: #721c24; } .validation-line { margin-bottom: 4px; font-size: 13px; } .validation-line:last-child { margin-bottom: 0; } #rss-atom-feed-generator-out pre { max-height: 520px; } </style> <script type="text/javascript" src="https://iotools.cloud/wp-content/plugins/duracelltomi-google-tag-manager/dist/js/gtm4wp-form-move-tracker.js?ver=1.22.3" id="gtm4wp-form-move-tracker-js"></script> <script type="text/javascript" src="https://iotools.cloud/wp-content/plugins/translatepress-multilingual/assets/js/trp-clickable-ls.js?ver=2.9.12" id="trp-clickable-ls-js-js"></script> <script type="text/javascript" src="https://iotools.cloud/wp-includes/js/underscore.min.js?ver=1.13.7" id="underscore-js"></script> <script type="text/javascript" id="theme-js-js-extra"> /* <![CDATA[ */ var IOTools = {"ajaxUrl":"https://iotools.cloud/wp-admin/admin-ajax.php","assetsUrl":"https://iotools.cloud/wp-content/themes/iotools/assets/","homeUrl":"https://iotools.cloud/id/","isMobile":"","currentPostId":"309450","turnstileSiteKey":"0x4AAAAAABroE5_aI0mWeJ_q","algoliaAppId":"1P44EFZA6Z","algoliaApiKey":"430f43bbda2ef03c2d61fbdf33bae284","urlRequests":"/requests/","creditsCap":"10","pondUploader":null,"tagColors":{"Accessibility":"indigo","AI":"red","arithmetic":"blue","Art":"orange","Backend":"red","base conversion":"blue","Base64":"blue","Beta":"red","Binary":"blue","Calculator":"blue","Character Classes":"blue","Color":"yellow","Couple":"blue","Creator":"blue","Cryptography":"yellow","CSS":"indigo","CSV":"green","Data":"gray","decimal":"blue","Decode":"yellow","Decrypt":"red","Designer":"cyan","Developer":"orange","devops":"blue","DnD":"blue","Education":"lime","Encode":"indigo","Encoding":"blue","Encryption":"blue","evaluation":"blue","Fantasy":"lime","Fiction":"blue","Finance":"green","Frontend":"red","Fun":"violet","Gaming":"blue","Generator":"blue","Git":"blue","Graphics":"red","Health":"orange","hex":"blue","History":"green","HTML":"green","Ideas":"orange","Identity":"lime","Image":"orange","instant calculation":"blue","integer":"blue","IPv6":"blue","Javascript":"orange","JPG":"blue","JSON":"yellow","logarithm":"blue","Lookup":"gray","MAC address":"blue","Magic":"yellow","Markdown":"blue","Marketing":"orange","mask":"blue","Match":"blue","Math":"yellow","MD5":"indigo","Minecraft":"blue","Music":"blue","Must Try":"red","Mythical":"blue","Networking":"blue","number systems":"blue","obfuscate":"blue","octal":"blue","PDF":"yellow","Performance":"green","Planning":"yellow","PNG":"blue","privacy":"blue","Productivity":"green","programming":"blue","Random":"red","Scheduling":"blue","Science":"blue","Security":"yellow","SEO":"orange","Social":"indigo","Sports":"blue","Statistics":"green","string":"blue","SVG":"orange","sysadmin":"blue","Testing":"orange","Text":"green","Time":"blue","trigonometry":"blue","ULA":"blue","Utilities":"blue","Video":"indigo","Wellness":"orange","Wizard":"blue","World":"blue","XML":"orange","YAML":"blue"},"translations":{"copiedDeepLink":"Menyalin tautan dalam ke papan klip!","copiedText":"Disalin ke papan klip!","copiedImage":"Salin gambar ke papan klip!","generatedContentAppearsHere":"Hasilnya akan muncul di sini...","confirmOverwriteContent":"Konten saat ini akan diganti?","invalidBase64String":"String base64 tidak valid","timeoutReached":"Batas waktu tercapai sebelum menemukan hash.","allCombinationsTried":"Semua kombinasi dicoba, tetapi hash tidak ditemukan. Sesuaikan pengaturan dan coba lagi.","useThisFont":"Gunakan font ini","noFileTypesDetected":"Tidak ada jenis berkas yang terdeteksi. Konten asli mungkin hanya berupa berkas teks atau string.","noResults":"Tidak ada hasil ditemukan","loadMore":"Muat lebih banyak","decodedString":"String yang didekodekan","yes":"Ya","no":"TIDAK","team":"Tim","detectedFile":"File terdeteksi","download":"Unduh","converting":"Mengonversi...","compressing":"Mengompresi...","tapToRemove":"Ketuk untuk menghapus","serverUploaded":"Diunggah ke server","validationPassed":"Lulus validasi","validationFailed":"Validasi gagal","validationIndependently":"Kode yang dihasilkan divalidasi secara independen","pokemon":{"generation":"Generasi","hp":"HP","speed":"Kecepatan","attack":"Menyerang","defense":"Pertahanan","spAttack":"Serangan Khusus","spDefense":"Pertahanan Khusus"},"browserInfo":{"userAgent":"Agen Pengguna","language":"Bahasa","windowSize":"Ukuran Jendela","pdfViewerEnabled":"Penampil PDF Diaktifkan","javascriptEnabled":"Javascript Diaktifkan","cookiesEnabled":"Cookie Diaktifkan","browser":"Peramban","browserMajorVersion":"Versi Utama Browser","browserVersion":"Versi Peramban","layoutEngine":"Mesin Tata Letak","deviceMemory":"Memori Perangkat","maxTouchPoints":"Titik Sentuh Maksimum","screenSize":"Ukuran Layar","orientation":"Orientasi","colorDepth":"Kedalaman Warna","pixelRatio":"Rasio Piksel","os":"Sistem Operasi","osVersion":"Versi OS","deviceType":"Jenis Perangkat","deviceVendor":"Vendor Perangkat","deviceModel":"Model Perangkat"},"splits":"Perpecahan","noImagesSelected":"Harap unggah setidaknya satu berkas.","errorOccurredAI":"Gagal mendapatkan konten AI. Silakan coba lagi.","errorOccurredExtractText":"Gagal mengekstrak konten berkas. Silakan coba lagi.","errorOccurredPokemon":"Tidak ada Pok\u00e9mon yang ditemukan dengan kriteria yang diberikan.","errorCannotConvert":"Tidak dapat dikonversi","autoComplete":{"Tools":"Peralatan","Modules":"Modul","SearchForATool":"Cari alat, kategori, atau tag...","NoToolsFoundForThisQuery":"Tidak ada alat yang ditemukan untuk kueri ini.","SubmitARequest":"Kirimkan permintaan","WeWillMakeIt":"dan kami akan berhasil!","CategoriesFilter":"Filter Kategori","NoCategoriesFoundForThisQuery":"Tidak ada kategori yang ditemukan untuk kueri ini.","TagsFilter":"Filter Tag","NoTagsFoundForThisQuery":"Tidak ada tag yang ditemukan untuk kueri ini.","ToNavigate":"untuk menavigasi","ToSelect":"untuk memilih","ToClose":"untuk menutup","ToCancel":"Membatalkan"}},"defaultSwatches":["#264653","#2a9d8f","#e9c46a","rgb(244,162,97)","#e76f51","#d62828","navy","#07b","#0096c7","#00b4d880","rgba(0,119,182,0.8)"]}; //# sourceURL=theme-js-js-extra /* ]]> */ </script> <script type="text/javascript" src="https://iotools.cloud/wp-content/themes/iotools/dist/main.min.js?ver=eee286b8e098df42c396cba29264f11c" id="theme-js-js"></script> <script type="text/javascript" src="https://iotools.cloud/wp-content/themes/iotools/dist/modules/ecd9f1b4f0f25d49b3dd988bd5612eca.min.js?ver=fc3340d2aa99d4f53093da055aeb58b0" id="theme-js-ecd9f1b4f0f25d49b3dd988bd5612eca-js"></script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.7.0/highlight.min.js?ver=eee286b8e098df42c396cba29264f11c" id="highlight-js-js"></script> <script id="wp-emoji-settings" type="application/json"> {"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://iotools.cloud/wp-includes/js/wp-emoji-release.min.js?ver=6.9.1"}} </script> <script type="module"> /* <![CDATA[ */ /*! This file is auto-generated */ const a=JSON.parse(document.getElementById("wp-emoji-settings").textContent),o=(window._wpemojiSettings=a,"wpEmojiSettingsSupports"),s=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const a=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===a[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,a){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!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!a(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,a){let r;const o=(r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),s=(o.textBaseline="top",o.font="600 32px Arial",{});return e.forEach(e=>{s[e]=t(o,e,n,a)}),s}function r(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}a.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let 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(),c.toString(),p.toString()].join(",")+"));",a=new Blob([e],{type:"text/javascript"});const r=new Worker(URL.createObjectURL(a),{name:"wpTestEmojiSupports"});return void(r.onmessage=e=>{i(n=e.data),r.terminate(),t(n)})}catch(e){}i(n=f(s,u,c,p))}t(n)}).then(e=>{for(const n in e)a.supports[n]=e[n],a.supports.everything=a.supports.everything&&a.supports[n],"flag"!==n&&(a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&a.supports[n]);var t;a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&!a.supports.flag,a.supports.everything||((t=a.source||{}).concatemoji?r(t.concatemoji):t.wpemoji&&t.twemoji&&(r(t.twemoji),r(t.wpemoji)))}); //# sourceURL=https://iotools.cloud/wp-includes/js/wp-emoji-loader.min.js /* ]]> */ </script> <script type="text/javascript">(function (undefined) {let scriptOptions={"_localizedStrings":{"redirect_overlay_title":"Hold On","redirect_overlay_text":"You are being redirected to another page,<br>it may take a few seconds.","webview_notification_text":"The selected provider doesn't support embedded browsers!"},"_targetWindow":"prefer-popup","_redirectOverlay":"overlay-with-spinner-and-message","_unsupportedWebviewBehavior":""}; /** * Used when Cross-Origin-Opener-Policy blocked the access to the opener. We can't have a reference of the opened windows, so we should attempt to refresh only the windows that has opened popups. */ window._nslHasOpenedPopup = false; window._nslWebViewNoticeElement = null; window.NSLPopup = function (url, title, w, h) { /** * Cross-Origin-Opener-Policy blocked the access to the opener */ if (typeof BroadcastChannel === "function") { const _nslLoginBroadCastChannel = new BroadcastChannel('nsl_login_broadcast_channel'); _nslLoginBroadCastChannel.onmessage = (event) => { if (window?._nslHasOpenedPopup && event.data?.action === 'redirect') { window._nslHasOpenedPopup = false; const url = event.data?.href; _nslLoginBroadCastChannel.close(); if (typeof window.nslRedirect === 'function') { window.nslRedirect(url); } else { window.opener.location = url; } } }; } const userAgent = navigator.userAgent, mobile = function () { return /\b(iPhone|iP[ao]d)/.test(userAgent) || /\b(iP[ao]d)/.test(userAgent) || /Android/i.test(userAgent) || /Mobile/i.test(userAgent); }, screenX = window.screenX !== undefined ? window.screenX : window.screenLeft, screenY = window.screenY !== undefined ? window.screenY : window.screenTop, outerWidth = window.outerWidth !== undefined ? window.outerWidth : document.documentElement.clientWidth, outerHeight = window.outerHeight !== undefined ? window.outerHeight : document.documentElement.clientHeight - 22, targetWidth = mobile() ? null : w, targetHeight = mobile() ? null : h, left = parseInt(screenX + (outerWidth - targetWidth) / 2, 10), right = parseInt(screenY + (outerHeight - targetHeight) / 2.5, 10), features = []; if (targetWidth !== null) { features.push('width=' + targetWidth); } if (targetHeight !== null) { features.push('height=' + targetHeight); } features.push('left=' + left); features.push('top=' + right); features.push('scrollbars=1'); const newWindow = window.open(url, title, features.join(',')); if (window.focus) { newWindow.focus(); } window._nslHasOpenedPopup = true; return newWindow; }; let isWebView = null; function checkWebView() { if (isWebView === null) { function _detectOS(ua) { if (/Android/.test(ua)) { return "Android"; } else if (/iPhone|iPad|iPod/.test(ua)) { return "iOS"; } else if (/Windows/.test(ua)) { return "Windows"; } else if (/Mac OS X/.test(ua)) { return "Mac"; } else if (/CrOS/.test(ua)) { return "Chrome OS"; } else if (/Firefox/.test(ua)) { return "Firefox OS"; } return ""; } function _detectBrowser(ua) { let android = /Android/.test(ua); if (/Opera Mini/.test(ua) || / OPR/.test(ua) || / OPT/.test(ua)) { return "Opera"; } else if (/CriOS/.test(ua)) { return "Chrome for iOS"; } else if (/Edge/.test(ua)) { return "Edge"; } else if (android && /Silk\//.test(ua)) { return "Silk"; } else if (/Chrome/.test(ua)) { return "Chrome"; } else if (/Firefox/.test(ua)) { return "Firefox"; } else if (android) { return "AOSP"; } else if (/MSIE|Trident/.test(ua)) { return "IE"; } else if (/Safari\//.test(ua)) { return "Safari"; } else if (/AppleWebKit/.test(ua)) { return "WebKit"; } return ""; } function _detectBrowserVersion(ua, browser) { if (browser === "Opera") { return /Opera Mini/.test(ua) ? _getVersion(ua, "Opera Mini/") : / OPR/.test(ua) ? _getVersion(ua, " OPR/") : _getVersion(ua, " OPT/"); } else if (browser === "Chrome for iOS") { return _getVersion(ua, "CriOS/"); } else if (browser === "Edge") { return _getVersion(ua, "Edge/"); } else if (browser === "Chrome") { return _getVersion(ua, "Chrome/"); } else if (browser === "Firefox") { return _getVersion(ua, "Firefox/"); } else if (browser === "Silk") { return _getVersion(ua, "Silk/"); } else if (browser === "AOSP") { return _getVersion(ua, "Version/"); } else if (browser === "IE") { return /IEMobile/.test(ua) ? _getVersion(ua, "IEMobile/") : /MSIE/.test(ua) ? _getVersion(ua, "MSIE ") : _getVersion(ua, "rv:"); } else if (browser === "Safari") { return _getVersion(ua, "Version/"); } else if (browser === "WebKit") { return _getVersion(ua, "WebKit/"); } return "0.0.0"; } function _getVersion(ua, token) { try { return _normalizeSemverString(ua.split(token)[1].trim().split(/[^\w\.]/)[0]); } catch (o_O) { } return "0.0.0"; } function _normalizeSemverString(version) { const ary = version.split(/[\._]/); return (parseInt(ary[0], 10) || 0) + "." + (parseInt(ary[1], 10) || 0) + "." + (parseInt(ary[2], 10) || 0); } function _isWebView(ua, os, browser, version, options) { switch (os + browser) { case "iOSSafari": return false; case "iOSWebKit": return _isWebView_iOS(options); case "AndroidAOSP": return false; case "AndroidChrome": return parseFloat(version) >= 42 ? /; wv/.test(ua) : /\d{2}\.0\.0/.test(version) ? true : _isWebView_Android(options); } return false; } function _isWebView_iOS(options) { const document = (window["document"] || {}); if ("WEB_VIEW" in options) { return options["WEB_VIEW"]; } return !("fullscreenEnabled" in document || "webkitFullscreenEnabled" in document || false); } function _isWebView_Android(options) { if ("WEB_VIEW" in options) { return options["WEB_VIEW"]; } return !("requestFileSystem" in window || "webkitRequestFileSystem" in window || false); } const options = {}, nav = window.navigator || {}, ua = nav.userAgent || "", os = _detectOS(ua), browser = _detectBrowser(ua), browserVersion = _detectBrowserVersion(ua, browser); isWebView = _isWebView(ua, os, browser, browserVersion, options); } return isWebView; } function isAllowedWebViewForUserAgent(provider) { const facebookAllowedWebViews = [ 'Instagram', 'FBAV', 'FBAN' ]; let whitelist = []; if (provider && provider === 'facebook') { whitelist = facebookAllowedWebViews; } const nav = window.navigator || {}, ua = nav.userAgent || ""; if (whitelist.length && ua.match(new RegExp(whitelist.join('|')))) { return true; } return false; } function disableButtonInWebView(providerButtonElement) { if (providerButtonElement) { providerButtonElement.classList.add('nsl-disabled-provider'); providerButtonElement.setAttribute('href', '#'); providerButtonElement.addEventListener('pointerdown', (e) => { if (!window._nslWebViewNoticeElement) { window._nslWebViewNoticeElement = document.createElement('div'); window._nslWebViewNoticeElement.id = "nsl-notices-fallback"; window._nslWebViewNoticeElement.addEventListener('pointerdown', function (e) { this.parentNode.removeChild(this); window._nslWebViewNoticeElement = null; }); const webviewNoticeHTML = '<div class="error"><p>' + scriptOptions._localizedStrings.webview_notification_text + '</p></div>'; window._nslWebViewNoticeElement.insertAdjacentHTML("afterbegin", webviewNoticeHTML); document.body.appendChild(window._nslWebViewNoticeElement); } }); } } window._nslDOMReady(function () { window.nslRedirect = function (url) { if (scriptOptions._redirectOverlay) { const overlay = document.createElement('div'); overlay.id = "nsl-redirect-overlay"; let overlayHTML = ''; const overlayContainer = "<div id='nsl-redirect-overlay-container'>", overlayContainerClose = "</div>", overlaySpinner = "<div id='nsl-redirect-overlay-spinner'></div>", overlayTitle = "<p id='nsl-redirect-overlay-title'>" + scriptOptions._localizedStrings.redirect_overlay_title + "</p>", overlayText = "<p id='nsl-redirect-overlay-text'>" + scriptOptions._localizedStrings.redirect_overlay_text + "</p>"; switch (scriptOptions._redirectOverlay) { case "overlay-only": break; case "overlay-with-spinner": overlayHTML = overlayContainer + overlaySpinner + overlayContainerClose; break; default: overlayHTML = overlayContainer + overlaySpinner + overlayTitle + overlayText + overlayContainerClose; break; } overlay.insertAdjacentHTML("afterbegin", overlayHTML); document.body.appendChild(overlay); } window.location = url; }; let targetWindow = scriptOptions._targetWindow || 'prefer-popup', lastPopup = false; document.addEventListener('click', function (e) { if (e.target) { const buttonLinkElement = e.target.closest('a[data-plugin="nsl"][data-action="connect"]') || e.target.closest('a[data-plugin="nsl"][data-action="link"]'); if (buttonLinkElement) { if (lastPopup && !lastPopup.closed) { e.preventDefault(); lastPopup.focus(); } else { let href = buttonLinkElement.href, success = false; if (href.indexOf('?') !== -1) { href += '&'; } else { href += '?'; } const redirectTo = buttonLinkElement.dataset.redirect; if (redirectTo === 'current') { href += 'redirect=' + encodeURIComponent(window.location.href) + '&'; } else if (redirectTo && redirectTo !== '') { href += 'redirect=' + encodeURIComponent(redirectTo) + '&'; } if (targetWindow !== 'prefer-same-window' && checkWebView()) { targetWindow = 'prefer-same-window'; } if (targetWindow === 'prefer-popup') { lastPopup = NSLPopup(href + 'display=popup', 'nsl-social-connect', buttonLinkElement.dataset.popupwidth, buttonLinkElement.dataset.popupheight); if (lastPopup) { success = true; e.preventDefault(); } } else if (targetWindow === 'prefer-new-tab') { const newTab = window.open(href + 'display=popup', '_blank'); if (newTab) { if (window.focus) { newTab.focus(); } success = true; window._nslHasOpenedPopup = true; e.preventDefault(); } } if (!success) { window.location = href; e.preventDefault(); } } } } }); let buttonCountChanged = false; const googleLoginButtons = document.querySelectorAll(' a[data-plugin="nsl"][data-provider="google"]'); if (googleLoginButtons.length && checkWebView()) { googleLoginButtons.forEach(function (googleLoginButton) { if (scriptOptions._unsupportedWebviewBehavior === 'disable-button') { disableButtonInWebView(googleLoginButton); } else { googleLoginButton.remove(); buttonCountChanged = true; } }); } const facebookLoginButtons = document.querySelectorAll(' a[data-plugin="nsl"][data-provider="facebook"]'); if (facebookLoginButtons.length && checkWebView() && /Android/.test(window.navigator.userAgent) && !isAllowedWebViewForUserAgent('facebook')) { facebookLoginButtons.forEach(function (facebookLoginButton) { if (scriptOptions._unsupportedWebviewBehavior === 'disable-button') { disableButtonInWebView(facebookLoginButton); } else { facebookLoginButton.remove(); buttonCountChanged = true; } }); } const separators = document.querySelectorAll('div.nsl-separator'); if (buttonCountChanged && separators.length) { separators.forEach(function (separator) { const separatorParentNode = separator.parentNode; if (separatorParentNode) { const separatorButtonContainer = separatorParentNode.querySelector('div.nsl-container-buttons'); if (separatorButtonContainer && !separatorButtonContainer.hasChildNodes()) { separator.remove(); } } }) } });})();</script> <div id="io-modal-login" class="modal fade" tabindex="-1" role="dialog"> <div class="modal-dialog modal-dialog-scrollable modal-md" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title">Diperlukan Masuk</h5> <button type="button" class="close" data-dismiss="modal" aria-label="Menutup"> <i class="ti ti-x" aria-hidden="true" data-no-translation=""></i> </button> </div> <div class="modal-body"> Silakan <a class="white bg-blue rounded p-1 pl-1 pr-2" rel="nofollow" href="https://iotools.cloud/id/account/"><i class="ti ti-user-circle" data-no-translation=""></i> masuk</a> atau <a rel="nofollow" href="https://iotools.cloud/id/register/"><u>daftar</u></a> untuk mengelola bookmark Anda. Gratis! </div> </div> </div> </div> <div id="io-modal-request" class="modal fade" tabindex="-1" role="dialog"> <div class="modal-dialog modal-dialog-scrollable modal-md" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title">Diperlukan Masuk</h5> <button type="button" class="close" data-dismiss="modal" aria-label="Menutup"> <i class="ti ti-x" aria-hidden="true" data-no-translation=""></i> </button> </div> <div class="modal-body"> Silakan <a class="white bg-blue rounded p-1 pl-1 pr-2" rel="nofollow" href="https://iotools.cloud/id/account/?redirect_to=https://iotools.cloud/id/account/request-tool/"><i class="ti ti-user-circle" data-no-translation=""></i> masuk</a> atau <a rel="nofollow" href="https://iotools.cloud/id/register/?redirect_to=https://iotools.cloud/id/account/request-tool/"><u>daftar</u></a> untuk mengajukan permintaan alat. Gratis! </div> </div> </div> </div> <div id="io-modal-community" class="modal fade" tabindex="-1" role="dialog"> <div class="modal-dialog modal-dialog-scrollable modal-md" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title">Diperlukan Masuk</h5> <button type="button" class="close" data-dismiss="modal" aria-label="Menutup"> <i class="ti ti-x" aria-hidden="true" data-no-translation=""></i> </button> </div> <div class="modal-body"> Silakan <a class="white bg-blue rounded p-1 pl-1 pr-2" rel="nofollow" href="https://iotools.cloud/id/account/?redirect_to=https://iotools.cloud/id/account/byo/"><i class="ti ti-user-circle" data-no-translation=""></i> masuk</a> atau <a rel="nofollow" href="https://iotools.cloud/id/register/?redirect_to=https://iotools.cloud/id/account/byo/"><u>daftar</u></a> untuk membuat alat Anda sendiri. Gratis! <div class="card mt-4 mb-0"> <div class="card-body"> <h5><i class="ti ti-info-circle" data-no-translation=""></i> Tentang Build Your Own (BYO) Builder</h5> <p>Fitur BYO Builder kami memungkinkan Anda membuat alat khusus tanpa pengetahuan pemrograman. Anda dapat:</p> <ul> <li>Buat alat bertenaga AI menggunakan antarmuka sederhana kami</li> <li>Bagikan alat Anda dengan komunitas</li> <li>Dapatkan umpan balik dan tingkatkan alat Anda</li> <li>Bantu orang lain memecahkan masalah dengan kreasi Anda</li> </ul> <p class="mb-0">Bergabunglah dengan kami <a href="https://iotools.cloud/id/community-tools/"><u>masyarakat</u></a> hari ini dan mulailah membangun alat yang membuat perbedaan!</p> </div> </div> </div> </div> </div> </div> <div id="cf-turnstile" data-sitekey="0x4AAAAAABroE5_aI0mWeJ_q" data-appearance="execute"></div> </body> </html> <!-- Performance optimized by Redis Object Cache. Learn more: https://wprediscache.com Retrieved 25561 objects (6 MB) from Redis using Predis (v2.4.0). -->