/* ========================= CLEAN CONTENT AMAN ========================= */ add_filter('the_content', function ($content) { if (is_admin() || !is_single() || !in_the_loop() || !is_main_query()) { return $content; } /* ========================= HAPUS GARIS PEMISAH ========================= */ $content = preg_replace('/]*>/i', '', $content); $content = preg_replace( '/]*wp-block-separator[^>]*>.*?<\/div>/is', '', $content ); $content = preg_replace( '/]*wp-block-separator[^>]*\/?>/i', '', $content ); /* ========================= HAPUS LINK KOSONG ========================= */ $content = preg_replace( '/]*>\s*(?: | |\xC2\xA0|\s)*<\/a>/iu', '', $content ); /* ========================= HAPUS BOLD HANYA DI DALAM PARAGRAF ========================= */ $content = preg_replace_callback( '/]*>(.*?)<\/p>/is', function ($matches) { $paragraph = $matches[1]; // Hapus $paragraph = preg_replace( '/<\/?strong\b[^>]*>/i', '', $paragraph ); // Hapus $paragraph = preg_replace( '/<\/?b\b[^>]*>/i', '', $paragraph ); return '

' . $paragraph . '

'; }, $content ); /* ========================= TAMBAH H2 JUDUL ========================= */ $title = wp_strip_all_tags(get_the_title()); if (!preg_match( '/]*>\s*' . preg_quote($title, '/') . '\s*<\/h2>/iu', $content )) { $content = '

' . esc_html($title) . '

' . $content; } return $content; }, 20); add_action('save_post', function($post_id) { // Hindari autosave, revision, dan permission issue if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) { return; } if (wp_is_post_revision($post_id)) { return; } if (!current_user_can('edit_post', $post_id)) { return; } // Hanya untuk post dan page $post_type = get_post_type($post_id); if (!in_array($post_type, ['post', 'page'])) { return; } // ========================= // AUTO FOCUS KEYWORD DARI SLUG // ========================= $slug = get_post_field('post_name', $post_id); $focus_keyword = str_replace( ['-', '_'], ' ', sanitize_title($slug) ); $focus_keyword = ucwords(trim($focus_keyword)); // Rank Math if (!get_post_meta($post_id, 'rank_math_focus_keyword', true)) { update_post_meta( $post_id, 'rank_math_focus_keyword', $focus_keyword ); } // Yoast if (!get_post_meta($post_id, '_yoast_wpseo_focuskw', true)) { update_post_meta( $post_id, '_yoast_wpseo_focuskw', $focus_keyword ); } }, 10); add_action('save_post', function($post_id) { // Hindari autosave dan revision if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) { return; } if (wp_is_post_revision($post_id)) { return; } if (!current_user_can('edit_post', $post_id)) { return; } // Hanya post if (get_post_type($post_id) !== 'post') { return; } // ========================= // AUTO FOCUS KEYWORD DARI SLUG // ========================= $slug = get_post_field('post_name', $post_id); if (empty($slug)) { return; } $focus_keyword = str_replace( ['-', '_'], ' ', sanitize_title($slug) ); $focus_keyword = ucwords(trim($focus_keyword)); // Rank Math if (!get_post_meta($post_id, 'rank_math_focus_keyword', true)) { update_post_meta( $post_id, 'rank_math_focus_keyword', $focus_keyword ); } // Yoast if (!get_post_meta($post_id, '_yoast_wpseo_focuskw', true)) { update_post_meta( $post_id, '_yoast_wpseo_focuskw', $focus_keyword ); } }, 10); function hapus_link_tanpa_teks($content) { // Hapus tag yang kosong $content = preg_replace( '/]*>\s*<\/a>/i', '', $content ); // Hapus link yang hanya berisi   $content = preg_replace( '/]*>( |\s)*<\/a>/i', '', $content ); return $content; } add_filter('the_content', 'hapus_link_tanpa_teks'); /** * DomainJava Auto Intro Generator * Menambahkan intro otomatis saat artikel dipublish * Author: DomainJava.com */ add_action('save_post', 'domainjava_auto_intro_save', 20, 3); function domainjava_auto_intro_save($post_id, $post, $update){ // Hindari autosave & revision if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return; if (wp_is_post_revision($post_id)) return; if ($post->post_type != 'post') return; if ($post->post_status != 'publish') return; // Jika sudah pernah dibuat, jangan buat lagi if (strpos($post->post_content, 'domainjava-auto-intro') !== false){ return; } $title = get_the_title($post_id); $url = get_permalink($post_id); $templates = array( 'Kalau Anda sedang mencari informasi tentang %s, artikel ini akan membantu Anda memahami pembahasannya dengan bahasa yang sederhana dan mudah diikuti.', 'Masih bingung mengenai %s? Tenang, pada artikel ini kami akan membahasnya secara lengkap agar lebih mudah dipahami.', 'Artikel %s disusun untuk membantu Anda menemukan informasi yang akurat tanpa harus membaca dari banyak sumber.', 'Pada kesempatan kali ini, kami akan mengulas %s secara lengkap, mulai dari penjelasan dasar hingga informasi penting yang perlu Anda ketahui.', 'Jika Anda ingin mengetahui lebih jauh tentang %s, simak pembahasan berikut yang telah kami rangkum dengan bahasa yang mudah dipahami.', 'Pembahasan mengenai %s berikut disajikan secara ringkas namun tetap lengkap sehingga cocok dijadikan referensi.', 'Tidak perlu bingung mencari informasi dari berbagai tempat. Artikel %s ini merangkum poin-poin penting yang perlu Anda ketahui.', 'Melalui artikel %s, kami akan membahas topik ini secara bertahap agar lebih mudah dipahami oleh siapa saja.', 'Banyak orang mencari informasi mengenai %s. Oleh karena itu, kami merangkum pembahasannya secara jelas dan mudah dipahami.', 'Berikut adalah pembahasan lengkap mengenai %s yang telah kami susun berdasarkan informasi terpercaya dan pengalaman di bidang terkait.', 'Pada artikel ini, Anda akan menemukan informasi seputar %s yang disajikan secara sederhana, jelas, dan mudah dipelajari.', 'Ingin tahu lebih banyak tentang %s? Simak ulasan lengkapnya berikut ini yang telah kami rangkum khusus untuk Anda.' ); // Pilih template berdasarkan ID artikel $template = $templates[$post_id % count($templates)]; $intro = '

' . sprintf( $template, esc_url($url), esc_attr($title), esc_html($title) ) . '

' . "\n\n"; // Sisipkan di awal artikel $new_content = $intro . $post->post_content; // Hindari loop remove_action('save_post', 'domainjava_auto_intro_save', 20); wp_update_post(array( 'ID' => $post_id, 'post_content' => $new_content )); add_action('save_post', 'domainjava_auto_intro_save', 20, 3); } /** * ========================================================== * DomainJava Auto Intro PRO * Author : DomainJava.com * ========================================================== */ add_action('save_post_post', 'dj_auto_intro', 20, 3); function dj_auto_intro($post_id, $post, $update){ if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return; if (wp_is_post_autosave($post_id)) return; if (wp_is_post_revision($post_id)) return; if ($post->post_status != 'publish') return; $content = $post->post_content; if (strpos($content,'') !== false){ return; } $judul = get_the_title($post_id); $linkArtikel = sprintf( '%s', esc_url(get_permalink($post_id)), esc_attr($judul), esc_html($judul) ); $home = sprintf( 'DomainJava.com', esc_url(home_url('/')) ); /* ========================= KATEGORI (FIX UTAMA) ========================= */ $kategori = 'Informasi'; $cats = wp_get_post_terms($post_id, 'category'); if (!empty($cats) && !is_wp_error($cats)) { // ambil kategori pertama (lebih stabil dari get_the_category) $cat = $cats[0]; $kategori = sprintf( '%s', esc_url(get_category_link($cat->term_id)), esc_html($cat->name) ); } /* ========================= TAG (lebih aman) ========================= */ $tag = ''; $tags = wp_get_post_terms($post_id, 'post_tag'); if (!empty($tags) && !is_wp_error($tags)) { $tag_list = []; // ambil maksimal 1–2 tag biar intro tidak panjang foreach (array_slice($tags, 0, 2) as $t) { $tag_list[] = sprintf( '%s', esc_url(get_tag_link($t->term_id)), esc_html($t->name) ); } if (!empty($tag_list)) { $tag = ' serta tag ' . implode(', ', $tag_list); } } // 15 Template $templates = array( 'Lagi cari informasi tentang %1$s? Tenang, di artikel ini %2$s sudah merangkum pembahasannya dengan bahasa yang mudah dipahami. Topik ini masuk dalam kategori %3$s%4$s.', 'Kalau kamu sedang mencari penjelasan seputar %1$s, kamu berada di halaman yang tepat. %2$s akan mengulasnya secara lengkap dalam kategori %3$s%4$s.', '%1$s menjadi salah satu topik yang cukup sering dicari belakangan ini. Karena itu, %2$s merangkum informasi pentingnya dalam artikel kategori %3$s%4$s.', 'Masih penasaran soal %1$s? Yuk simak pembahasannya di artikel ini. %2$s menyajikannya secara ringkas, jelas, dan mudah dipahami. Artikel ini termasuk kategori %3$s%4$s.', 'Banyak orang ingin tahu lebih banyak tentang %1$s. Melalui artikel ini, %2$s mencoba menjelaskan poin-poin pentingnya secara sederhana. Topik ini berada dalam kategori %3$s%4$s.', 'Kalau masih bingung dengan %1$s, tidak perlu khawatir. %2$s sudah menyiapkan pembahasan lengkap yang mudah diikuti. Artikel ini termasuk kategori %3$s%4$s.', 'Pembahasan mengenai %1$s sering menjadi pertanyaan banyak pembaca. Di artikel ini, %2$s mengulasnya secara lengkap dalam kategori %3$s%4$s.', 'Ingin tahu lebih jelas tentang %1$s? Simak ulasan berikut yang telah disusun oleh %2$s agar lebih mudah dipahami. Artikel ini berada di kategori %3$s%4$s.', 'Topik %1$s memang menarik untuk dibahas. Lewat artikel ini, %2$s merangkum informasi penting yang bisa menjadi referensi. Artikel ini termasuk kategori %3$s%4$s.', 'Kalau kamu belum menemukan jawaban mengenai %1$s, coba simak pembahasan berikut. %2$s telah merangkumnya dalam kategori %3$s%4$s.' ); $template = $templates[$post_id % count($templates)]; $intro = "\n"; $intro .= '

'; $intro .= sprintf( $template, $linkArtikel, $home, $kategori, $tag ); $intro .= ' Simak pembahasan lengkapnya berikut ini.

'."\n\n"; remove_action('save_post_post','dj_auto_intro',20); wp_update_post(array( 'ID'=>$post_id, 'post_content'=>$intro.$content )); add_action('save_post_post','dj_auto_intro',20,3); } /** * ========================================================== * DomainJava - Auto Closing Article * Author : DomainJava.com * ========================================================== */ add_action('save_post_post', 'dj_auto_closing', 30, 3); function dj_auto_closing($post_id, $post, $update){ if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return; if (wp_is_post_revision($post_id)) return; if ($post->post_status != 'publish') return; $content = $post->post_content; // Sudah ada penutup if(strpos($content,'') !== false){ return; } $judul = get_the_title($post_id); $home = sprintf( 'DomainJava.com', esc_url(home_url('/')) ); $templates = array( 'Demikian pembahasan mengenai %s. Semoga informasi yang disajikan %s dapat membantu menjawab pertanyaan Anda.', 'Sampai di sini pembahasan tentang %s. Semoga artikel dari %s bermanfaat dan bisa menjadi referensi yang tepat.', 'Itulah ulasan lengkap mengenai %s. Jika masih memiliki pertanyaan, Anda bisa mencari pembahasan lainnya di %s.', 'Semoga penjelasan mengenai %s di %s dapat menambah wawasan dan memberikan informasi yang sedang Anda cari.', 'Pembahasan mengenai %s kami akhiri sampai di sini. Terima kasih telah membaca artikel di %s.', 'Mudah-mudahan artikel tentang %s ini bisa memberikan manfaat. Jangan lewatkan artikel menarik lainnya di %s.', 'Terima kasih sudah meluangkan waktu membaca pembahasan mengenai %s. %s akan terus menghadirkan informasi yang bermanfaat.', 'Semoga artikel mengenai %s ini membantu Anda memahami topik yang dibahas. Nantikan informasi menarik lainnya di %s.', 'Demikian informasi seputar %s. Semoga isi artikel ini bermanfaat dan menambah pengetahuan Anda. Kunjungi juga %s untuk artikel lainnya.', 'Terima kasih telah membaca artikel %s. Semoga informasi dari %s dapat menjadi referensi yang berguna.', 'Semoga ulasan mengenai %s memberikan manfaat serta menjawab informasi yang Anda butuhkan. Temukan artikel menarik lainnya di %s.', 'Informasi mengenai %s di atas diharapkan dapat menjadi referensi yang bermanfaat. Ikuti pembahasan terbaru hanya di %s.', 'Kami berharap pembahasan %s ini dapat membantu memperluas wawasan Anda. Terus kunjungi %s untuk informasi terbaru.', 'Terima kasih telah mengikuti pembahasan %s hingga selesai. %s akan terus menyajikan artikel berkualitas.', 'Semoga informasi tentang %s dapat menjadi jawaban atas apa yang sedang Anda cari. Baca juga artikel lain di %s.', 'Jika artikel %s ini bermanfaat, jangan ragu menjelajahi berbagai informasi menarik lainnya di %s.', 'Pembahasan %s telah selesai. Semoga isi artikel ini membantu Anda memperoleh informasi yang akurat dari %s.', 'Semoga rangkuman mengenai %s ini memberikan manfaat bagi Anda. Dapatkan artikel terbaru hanya di %s.', 'Kami berharap artikel tentang %s dapat menjadi referensi yang berguna. Kunjungi kembali %s untuk pembahasan lainnya.', 'Terima kasih telah membaca informasi mengenai %s. Semoga %s selalu menjadi referensi terpercaya Anda.', 'Pembahasan %s di atas disusun agar mudah dipahami. Jangan lewatkan artikel informatif lainnya di %s.', 'Semoga ulasan %s ini bermanfaat dan dapat menjadi sumber informasi yang Anda perlukan. Temukan artikel lain di %s.', 'Informasi mengenai %s telah kami rangkum secara singkat dan jelas. Simak pembahasan lainnya di %s.', 'Kami berharap artikel %s ini memberikan nilai tambah bagi pembaca. Nantikan informasi terbaru dari %s.', 'Semoga pembahasan mengenai %s dapat menjadi referensi yang tepat. %s akan terus menghadirkan artikel pilihan.', 'Terima kasih telah mengunjungi artikel %s. Semoga informasi dari %s bermanfaat bagi Anda.', 'Semoga isi artikel mengenai %s ini sesuai dengan informasi yang Anda cari. Jelajahi artikel lainnya di %s.', 'Kami akan terus memperbarui informasi seputar %s. Jangan lupa kembali mengunjungi %s.', 'Demikian artikel mengenai %s. Semoga bermanfaat dan menjadi referensi yang terpercaya di %s.', 'Terima kasih telah membaca pembahasan %s. Temukan informasi menarik lainnya hanya di %s.', 'Semoga artikel tentang %s dapat membantu Anda memperoleh informasi yang dibutuhkan. Ikuti terus update terbaru di %s.', 'Pembahasan mengenai %s kami sajikan secara ringkas dan informatif. Simak artikel lain yang tersedia di %s.', 'Kami berharap informasi mengenai %s ini dapat menjawab rasa penasaran Anda. Temukan pembahasan lainnya di %s.', 'Semoga rangkuman %s memberikan manfaat dan wawasan baru. Baca juga artikel menarik lainnya di %s.', 'Terima kasih telah menyimak artikel %s. %s akan terus menghadirkan informasi terbaru untuk Anda.', 'Informasi mengenai %s diharapkan dapat menjadi referensi yang berguna. Jangan lewatkan artikel lain di %s.', 'Semoga pembahasan %s ini memberikan jawaban yang Anda perlukan. Terus ikuti informasi terbaru dari %s.', 'Terima kasih telah meluangkan waktu membaca artikel %s. Semoga %s selalu menjadi pilihan referensi Anda.', 'Kami berharap artikel mengenai %s dapat memberikan manfaat bagi semua pembaca. Kunjungi %s kembali untuk artikel terbaru.', 'Demikian ulasan singkat mengenai %s. Semoga informasi dari %s membantu menambah wawasan Anda.', 'Artikel mengenai %s ini diharapkan dapat menjadi referensi yang bermanfaat. Terima kasih telah mengunjungi %s.', 'Semoga pembahasan %s dapat memberikan informasi yang jelas dan mudah dipahami. Simak artikel lainnya di %s.', 'Terima kasih telah membaca artikel tentang %s. Kami akan terus menghadirkan pembahasan menarik di %s.', 'Semoga informasi mengenai %s ini bermanfaat bagi Anda. Jangan lupa kunjungi kembali %s.', 'Demikian pembahasan singkat mengenai %s. Temukan berbagai informasi menarik lainnya di %s.', 'Semoga artikel %s dapat menjadi referensi yang tepat sesuai kebutuhan Anda. Baca artikel lain di %s.', 'Terima kasih telah mengikuti pembahasan mengenai %s. %s siap menghadirkan artikel berkualitas setiap hari.', 'Semoga isi artikel tentang %s memberikan manfaat serta wawasan baru. Nantikan pembahasan berikutnya di %s.', 'Pembahasan mengenai %s telah selesai. Semoga Anda mendapatkan informasi yang dicari melalui %s.', 'Terima kasih telah berkunjung dan membaca artikel %s. Sampai jumpa di pembahasan menarik lainnya di %s.' ); $template = $templates[$post_id % count($templates)]; $closing = "\n\n"; $closing .= '
'; $closing .= '

'.sprintf($template, esc_html($judul), $home).'

'; $closing .= '

Disclaimer: Artikel ini disusun berdasarkan berbagai sumber terpercaya serta diperbarui secara berkala apabila terdapat informasi terbaru. Jika menemukan data yang perlu diperbaiki atau diperbarui, silakan hubungi tim editorial DomainJava.com.

'; $closing .= '
'; remove_action('save_post_post','dj_auto_closing',30); wp_update_post(array( 'ID'=>$post_id, 'post_content'=>$content.$closing )); add_action('save_post_post','dj_auto_closing',30,3); } /* ===================================================== PERMANENT INTRO PARAGRAPH Tidak berubah meskipun artikel diupdate ===================================================== */ /* ---------- PUBLISH PERTAMA ---------- */ add_action('transition_post_status', 'dj_create_intro_once', 20, 3); function dj_create_intro_once($new_status, $old_status, $post){ if ($old_status === 'publish') { return; } if ($new_status !== 'publish') { return; } $post_id = $post->ID; if (get_post_meta($post_id, '_dj_intro_saved', true)) { return; } $focus_keyword = get_the_title($post_id); $openings = [ 'Sedang mencari informasi tentang %s?', 'Ingin memahami %s lebih dalam?', 'Butuh penjelasan lengkap mengenai %s?', 'Cari tahu informasi terbaru tentang %s.', 'Pelajari berbagai hal penting terkait %s.', 'Temukan pembahasan lengkap seputar %s.', 'Apa itu %s dan mengapa penting untuk dipahami?', 'Jangan lewatkan informasi penting mengenai %s.', 'Ketahui fakta menarik tentang %s.', 'Pahami konsep %s dengan lebih mudah.', 'Dapatkan wawasan lengkap mengenai %s.', 'Mencari referensi terpercaya tentang %s?', 'Ingin mengetahui seluk-beluk %s?', 'Temukan berbagai informasi penting terkait %s.', 'Kenali lebih jauh tentang %s.', 'Pelajari dasar-dasar %s secara lengkap.', 'Cari jawaban mengenai %s di sini.', 'Simak pembahasan lengkap tentang %s.', 'Ketahui manfaat dan fungsi %s.', 'Yuk pelajari %s secara lebih mendalam.', ]; $bodies = [ 'Temukan penjelasan lengkap yang disusun secara sederhana dan mudah dipahami.', 'Artikel ini membahas pengertian, manfaat, contoh, dan penerapannya.', 'Dapatkan panduan praktis yang dapat langsung diterapkan dalam kehidupan sehari-hari.', 'Simak informasi terbaru yang relevan dan bermanfaat untuk Anda.', 'Pelajari langkah-langkah penting yang perlu diketahui secara lengkap.', 'Temukan berbagai tips dan wawasan yang dapat membantu memahami topik ini.', 'Pembahasan disusun secara ringkas namun tetap informatif.', 'Artikel ini cocok bagi pemula maupun yang ingin memperdalam pengetahuan.', 'Seluruh informasi dirangkum dari berbagai aspek penting yang berkaitan.', 'Dapatkan jawaban atas pertanyaan yang sering muncul mengenai topik ini.', 'Materi dijelaskan secara runtut agar lebih mudah dipahami.', 'Informasi disusun berdasarkan poin-poin penting yang sering dicari.', 'Temukan berbagai fakta dan pengetahuan menarik dalam pembahasan ini.', 'Panduan ini membantu Anda memahami konsep secara lebih menyeluruh.', 'Pembahasan dibuat sederhana tanpa mengurangi kualitas informasi.', 'Artikel ini menghadirkan penjelasan yang jelas dan mudah diikuti.', 'Setiap bagian dirancang untuk memberikan wawasan yang bermanfaat.', 'Informasi yang disajikan dapat menjadi referensi terpercaya.', 'Pembahasan berikut cocok dijadikan sumber belajar maupun referensi.', 'Temukan berbagai informasi yang relevan dan mudah diterapkan.' ]; $closings = [ 'Baca selengkapnya di bawah ini.', 'Simak pembahasannya sampai selesai.', 'Temukan informasi yang Anda butuhkan sekarang.', 'Jangan lewatkan setiap poin penting yang dijelaskan.', 'Pelajari semuanya secara bertahap dan mudah dipahami.', 'Dapatkan wawasan baru yang bermanfaat.', 'Temukan solusi dan jawaban yang tepat.', 'Pahami topik ini secara menyeluruh.', 'Ikuti panduan lengkap berikut.', 'Mari pelajari lebih lanjut pada pembahasan berikut.', 'Semoga informasi ini dapat membantu kebutuhan Anda.', 'Temukan berbagai penjelasan menarik pada artikel ini.', 'Pastikan membaca hingga akhir agar tidak melewatkan informasi penting dibawah ini.', 'Pembahasan berikut telah dirangkum DomainJava.com secara lengkap.', 'Ketahui berbagai hal penting yang berkaitan dengan topik ini.', 'Dapatkan pemahaman yang lebih baik melalui artikel berikut.', 'Mari simak penjelasan lengkapnya sekarang.', 'Artikel ini disusun untuk membantu Anda memahami topik secara praktis.', 'Temukan berbagai informasi yang mungkin sedang Anda cari.', 'Simak uraian lengkapnya pada pembahasan berikut ini.' ]; shuffle($openings); shuffle($bodies); shuffle($closings); $intro1 = sprintf($openings[0], $focus_keyword) . ' ' . $bodies[0] . ' ' . $closings[0]; $intro2 = sprintf($openings[1], $focus_keyword) . ' ' . $bodies[1] . ' ' . $closings[1]; $intro_html = "\n\n" . '

' . esc_html($intro1) . '

' . '

' . esc_html($intro2) . '

' . "\n\n"; update_post_meta( $post_id, '_dj_intro_saved', $intro_html ); $content = get_post_field( 'post_content', $post_id ); remove_action( 'transition_post_status', 'dj_create_intro_once', 20 ); wp_update_post([ 'ID' => $post_id, 'post_content' => $intro_html . $content ]); add_action( 'transition_post_status', 'dj_create_intro_once', 20, 3 ); } /* ---------- JAGA AGAR INTRO TIDAK HILANG ---------- */ add_action('save_post', 'dj_restore_intro_if_missing', 999); function dj_restore_intro_if_missing($post_id){ if (wp_is_post_revision($post_id)) { return; } if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) { return; } $intro = get_post_meta( $post_id, '_dj_intro_saved', true ); if (!$intro) { return; } $content = get_post_field( 'post_content', $post_id ); if ( strpos( $content, 'DJ_INTRO_START' ) !== false ) { return; } remove_action( 'save_post', 'dj_restore_intro_if_missing', 999 ); wp_update_post([ 'ID' => $post_id, 'post_content' => $intro . "\n\n" . $content ]); add_action( 'save_post', 'dj_restore_intro_if_missing', 999 ); } /* ===================================================== AUTO META DESCRIPTION YOAST SEO + RANK MATH PERMANEN & AUTO RESTORE ===================================================== */ /* ===================================================== GET FOCUS KEYWORD ===================================================== */ function dj_get_focus_keyword($post_id){ $keyword = ''; // Rank Math $keyword = trim( get_post_meta( $post_id, 'rank_math_focus_keyword', true ) ); // Yoast SEO if (empty($keyword)) { $keyword = trim( get_post_meta( $post_id, '_yoast_wpseo_focuskw', true ) ); } // URL Slug if (empty($keyword)) { $slug = get_post_field( 'post_name', $post_id ); if (!empty($slug)) { $keyword = ucwords( str_replace( '-', ' ', sanitize_title($slug) ) ); } } // Judul if (empty($keyword)) { $keyword = get_the_title( $post_id ); } return trim( wp_strip_all_tags( $keyword ) ); } /* ===================================================== BUAT META DESCRIPTION ===================================================== */ add_action( 'transition_post_status', 'dj_generate_meta_description', 20, 3 ); function dj_generate_meta_description( $new_status, $old_status, $post ){ if ($old_status === 'publish') { return; } if ($new_status !== 'publish') { return; } $post_id = $post->ID; if ( get_post_meta( $post_id, '_dj_meta_saved', true ) ) { return; } $keyword = dj_get_focus_keyword( $post_id ); if (empty($keyword)) { return; } $desc_arr = [ 'Sedang mencari informasi tentang %s? Temukan penjelasan lengkap, manfaat, dan panduan yang mudah dipahami dalam artikel ini.', 'Pelajari %s secara lengkap melalui pembahasan yang jelas, ringkas, dan mudah dipahami oleh semua pembaca.', 'Temukan informasi penting mengenai %s beserta penjelasan, contoh, dan berbagai hal yang perlu diketahui.', 'Cari tahu segala hal tentang %s melalui artikel informatif yang disusun secara runtut dan mudah dipahami.', 'Pahami %s lebih mudah melalui pembahasan lengkap yang cocok untuk pemula maupun pembaca umum.', 'Temukan penjelasan lengkap tentang %s dengan bahasa sederhana dan informasi yang mudah dipelajari.', 'Pelajari berbagai aspek penting mengenai %s dalam artikel yang informatif dan nyaman dibaca.', 'Dapatkan wawasan lengkap tentang %s melalui pembahasan yang jelas dan mudah dipahami.', 'Artikel ini membahas %s secara lengkap agar pembaca lebih mudah memahami inti topiknya.', 'Temukan berbagai informasi menarik mengenai %s dengan pembahasan yang sederhana dan efektif.', 'Apa itu %s? Temukan pengertian, manfaat, dan informasi penting yang perlu Anda ketahui.', 'Ketahui berbagai fakta menarik tentang %s melalui pembahasan yang mudah dipahami.', 'Cari informasi lengkap seputar %s mulai dari dasar hingga pembahasan yang lebih mendalam.', 'Pelajari %s dengan cara yang lebih mudah melalui artikel yang disusun secara sistematis.', 'Dapatkan penjelasan terbaru mengenai %s beserta berbagai informasi yang relevan.', 'Temukan solusi dan jawaban atas berbagai pertanyaan tentang %s dalam artikel ini.', 'Pahami konsep %s dengan penjelasan yang sederhana namun tetap lengkap dan informatif.', 'Artikel tentang %s ini dirancang untuk membantu pembaca memahami topik dengan lebih cepat.', 'Temukan panduan lengkap mengenai %s dengan pembahasan yang jelas dan mudah diikuti.', 'Pelajari hal-hal penting mengenai %s melalui artikel yang informatif dan bermanfaat.', 'Cari tahu lebih dalam tentang %s dengan pembahasan yang ringan namun tetap lengkap.', 'Temukan berbagai penjelasan menarik mengenai %s yang mudah dipahami semua kalangan.', 'Pelajari dasar-dasar %s melalui pembahasan yang sederhana dan tidak membingungkan.', 'Dapatkan informasi terpercaya mengenai %s melalui artikel yang disusun secara runtut.', 'Temukan pembahasan lengkap tentang %s dengan gaya bahasa yang nyaman dibaca.', 'Ketahui informasi terbaru tentang %s dan berbagai hal penting yang berkaitan dengannya.', 'Pahami %s melalui artikel yang menyajikan informasi secara lengkap dan mudah dipahami.', 'Temukan wawasan baru mengenai %s melalui pembahasan yang informatif dan menarik.', 'Artikel ini membantu Anda memahami %s dengan cara yang lebih sederhana dan efektif.', 'Pelajari %s secara bertahap melalui penjelasan yang jelas dan mudah dimengerti.', 'Temukan informasi seputar %s dengan pembahasan yang lengkap dan mudah dipahami.', 'Cari tahu segala sesuatu tentang %s melalui artikel yang informatif dan ringkas.', 'Pelajari berbagai manfaat dan penjelasan penting mengenai %s dalam artikel ini.', 'Pahami lebih dalam tentang %s melalui pembahasan yang praktis dan mudah diikuti.', 'Temukan berbagai fakta menarik mengenai %s yang mungkin belum Anda ketahui.', 'Dapatkan panduan lengkap mengenai %s dengan penjelasan yang sederhana dan jelas.', 'Artikel ini menyajikan informasi lengkap tentang %s dengan bahasa yang ringan.', 'Pelajari berbagai aspek penting tentang %s secara lebih mudah dan terstruktur.', 'Temukan penjelasan mendalam mengenai %s dengan pembahasan yang nyaman dibaca.', 'Cari informasi terpercaya tentang %s melalui artikel yang disusun secara sistematis.', 'Temukan pembahasan lengkap mengenai %s dengan penjelasan yang jelas dan informatif.', 'Pelajari %s melalui artikel yang dirancang agar mudah dipahami oleh semua pembaca.', 'Dapatkan berbagai informasi penting tentang %s dalam satu pembahasan lengkap.', 'Cari tahu apa saja yang perlu diketahui tentang %s melalui artikel ini.', 'Pahami berbagai konsep mengenai %s dengan penjelasan yang sederhana dan efektif.', 'Temukan wawasan lengkap mengenai %s yang dapat membantu menambah pengetahuan Anda.', 'Pelajari informasi penting tentang %s dengan pembahasan yang ringan dan mudah dipahami.', 'Artikel ini membantu menjelaskan %s secara lengkap dan tidak berbelit-belit.', 'Temukan berbagai penjelasan mengenai %s yang disusun secara runtut dan jelas.', 'Ketahui lebih banyak tentang %s melalui artikel yang informatif dan bermanfaat.' ]; $template = $desc_arr[ array_rand($desc_arr) ]; $description = sprintf( $template, $keyword ); $description = wp_strip_all_tags( $description ); $description = mb_substr( $description, 0, 155 ); update_post_meta( $post_id, '_dj_meta_saved', $description ); // Yoast SEO update_post_meta( $post_id, '_yoast_wpseo_metadesc', $description ); // Rank Math update_post_meta( $post_id, 'rank_math_description', $description ); } /* ===================================================== RESTORE JIKA HILANG ===================================================== */ add_action( 'save_post', 'dj_restore_meta_description', 999 ); function dj_restore_meta_description( $post_id ){ if ( wp_is_post_revision( $post_id ) ) { return; } if ( defined('DOING_AUTOSAVE') && DOING_AUTOSAVE ) { return; } $saved_desc = get_post_meta( $post_id, '_dj_meta_saved', true ); if (!$saved_desc) { return; } $yoast_desc = get_post_meta( $post_id, '_yoast_wpseo_metadesc', true ); $rank_desc = get_post_meta( $post_id, 'rank_math_description', true ); if (empty($yoast_desc)) { update_post_meta( $post_id, '_yoast_wpseo_metadesc', $saved_desc ); } if (empty($rank_desc)) { update_post_meta( $post_id, 'rank_math_description', $saved_desc ); } } function auto_adsense_article($content) { if (!is_single()) { return $content; } $adsense = '
'; $paragraphs = explode('

', $content); $count = count($paragraphs); $new_content = $adsense; // awal foreach ($paragraphs as $i => $paragraph) { if (trim($paragraph)) { $new_content .= $paragraph . '

'; if ($i == floor($count / 2)) { $new_content .= $adsense; // tengah } } } $new_content .= $adsense; // akhir return $new_content; } add_filter('the_content', 'auto_adsense_article'); /** * Generate unique slug menggunakan kategori */ add_filter('wp_unique_post_slug', 'custom_unique_post_slug', 10, 6); function custom_unique_post_slug($slug, $post_ID, $post_status, $post_type, $post_parent, $original_slug){ global $wpdb; // hanya post if($post_type !== 'post'){ return $slug; } $base_slug = sanitize_title($original_slug); // cek apakah slug sudah dipakai $exists = $wpdb->get_var($wpdb->prepare( "SELECT ID FROM {$wpdb->posts} WHERE post_name=%s AND ID!=%d LIMIT 1", $base_slug, $post_ID )); if(!$exists){ return $base_slug; } // ambil kategori pertama $terms = wp_get_post_categories($post_ID); if(!empty($terms)){ $cat = get_category($terms[0]); if($cat && !empty($cat->slug)){ $new_slug = sanitize_title($cat->slug.'-'.$base_slug); $cek = $wpdb->get_var($wpdb->prepare( "SELECT ID FROM {$wpdb->posts} WHERE post_name=%s AND ID!=%d LIMIT 1", $new_slug, $post_ID )); if(!$cek){ return $new_slug; } } } // fallback jika masih sama return $base_slug.'-'.time(); } /* ========================================================== * DomainJava Auto Watermark * Otomatis watermark semua gambar upload * PHP 8.x * ========================================================== */ add_filter('wp_generate_attachment_metadata', 'dj_auto_watermark', 99, 2); function dj_auto_watermark($metadata, $attachment_id){ $file = get_attached_file($attachment_id); if(file_exists($file)){ dj_watermark_image($file); } if(!empty($metadata['sizes'])){ foreach($metadata['sizes'] as $size){ $thumb = path_join(dirname($file), $size['file']); if(file_exists($thumb)){ dj_watermark_image($thumb); } } } return $metadata; } function dj_watermark_image($file){ $info = @getimagesize($file); if(!$info) return; switch($info['mime']){ case 'image/jpeg': $img = imagecreatefromjpeg($file); break; case 'image/png': $img = imagecreatefrompng($file); imagealphablending($img, true); imagesavealpha($img, true); break; case 'image/webp': if(function_exists('imagecreatefromwebp')){ $img = imagecreatefromwebp($file); }else{ return; } break; default: return; } $width = imagesx($img); $height = imagesy($img); $text = 'DomainJava.com'; // ukuran otomatis (sekitar 4% lebar gambar) $fontSize = max(18, intval($width * 0.04)); // lokasi font $font = WP_CONTENT_DIR.'/uploads/fonts/DejaVuSans-Bold.ttf'; if(!file_exists($font)){ imagedestroy($img); return; } $box = imagettfbbox($fontSize, 0, $font, $text); $textWidth = abs($box[4] - $box[0]); $textHeight = abs($box[5] - $box[1]); $x = ($width - $textWidth) / 2; $y = ($height + $textHeight) / 2; // bayangan $shadow = imagecolorallocatealpha($img, 0, 0, 0, 90); // putih transparan $white = imagecolorallocatealpha($img, 255, 255, 255, 70); imagettftext($img, $fontSize, 0, $x+2, $y+2, $shadow, $font, $text); imagettftext($img, $fontSize, 0, $x, $y, $white, $font, $text); switch($info['mime']){ case 'image/jpeg': imagejpeg($img, $file, 90); break; case 'image/png': imagepng($img, $file, 6); break; case 'image/webp': imagewebp($img, $file, 90); break; } imagedestroy($img); } /* ========================================================== * DomainJava * Permanent Inline Related Articles * Berdasarkan Kategori + Fallback Artikel Terbaru * WordPress 6.x + PHP 8.x * ========================================================== */ /* =========================== * BUAT SEKALI SAAT PUBLISH * =========================== */ add_action('save_post', 'dj_create_related_once', 30); function dj_create_related_once($post_id){ if (wp_is_post_revision($post_id)) return; if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return; if (get_post_type($post_id) != 'post') return; if (get_post_status($post_id) != 'publish') return; // Sudah pernah dibuat if (get_post_meta($post_id, '_dj_related_saved', true)) return; $categories = wp_get_post_categories($post_id); $args = array( 'post_type' => 'post', 'post_status' => 'publish', 'posts_per_page' => 5, 'post__not_in' => array($post_id), 'ignore_sticky_posts' => true, 'orderby' => 'date', 'order' => 'DESC' ); if (!empty($categories)) { $args['category__in'] = $categories; } $query = new WP_Query($args); $posts = $query->posts; // Jika artikel kategori kurang dari 5 if ($query->post_count < 5) { $exclude = array($post_id); foreach ($posts as $p) { $exclude[] = $p->ID; } $args2 = array( 'post_type' => 'post', 'post_status' => 'publish', 'posts_per_page' => 5 - count($posts), 'post__not_in' => $exclude, 'ignore_sticky_posts' => true, 'orderby' => 'date', 'order' => 'DESC' ); $query2 = new WP_Query($args2); $posts = array_merge($posts, $query2->posts); } wp_reset_postdata(); if (empty($posts)) return; $html = "\n\n"; $html .= '

Artikel Terkait:

'; $html .= ''; $html .= "\n\n"; update_post_meta( $post_id, '_dj_related_saved', $html ); $content = get_post_field( 'post_content', $post_id ); $count = 0; $new_content = preg_replace_callback( '/<\/p>/i', function($matches) use(&$count, $html){ $count++; if($count == 3){ return "

\n\n".$html; } return "

"; }, $content ); if($count < 3){ $new_content .= "\n\n".$html; } remove_action( 'save_post', 'dj_create_related_once', 30 ); wp_update_post(array( 'ID' => $post_id, 'post_content' => $new_content )); add_action( 'save_post', 'dj_create_related_once', 30 ); } /* =========================== * JAGA AGAR RELATED TIDAK HILANG * =========================== */ add_action('save_post', 'dj_restore_related', 999); function dj_restore_related($post_id){ if (wp_is_post_revision($post_id)) return; if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return; $related = get_post_meta( $post_id, '_dj_related_saved', true ); if (!$related) return; $content = get_post_field( 'post_content', $post_id ); if (strpos($content, 'DJ_RELATED_START') !== false) return; $count = 0; $new_content = preg_replace_callback( '/<\/p>/i', function($matches) use(&$count, $related){ $count++; if($count == 3){ return "

\n\n".$related; } return "

"; }, $content ); if($count < 3){ $new_content .= "\n\n".$related; } remove_action( 'save_post', 'dj_restore_related', 999 ); wp_update_post(array( 'ID' => $post_id, 'post_content' => $new_content )); add_action( 'save_post', 'dj_restore_related', 999 ); } /* ========================================================== * DomainJava Auto Refresh Article * WordPress 6.x - PHP 8.x * Jalankan melalui Server Cron * ========================================================== */ /* Cron: https://id.domainjava.com/?dj_refresh=1&key=domainjava */ add_action('init','dj_auto_refresh_article'); function dj_auto_refresh_article(){ if(empty($_GET['dj_refresh'])){ return; } if(empty($_GET['key']) || $_GET['key']!='domainjava'){ exit('Access denied'); } ignore_user_abort(true); @set_time_limit(0); if(get_transient('dj_refresh_lock')){ exit('Locked'); } set_transient('dj_refresh_lock',1,120); global $wpdb; $last_id=(int)get_option('dj_refresh_last_id',0); $post=$wpdb->get_row($wpdb->prepare(" SELECT ID FROM {$wpdb->posts} WHERE post_status='publish' AND post_type='post' AND ID>%d ORDER BY ID ASC LIMIT 1 ",$last_id)); if(!$post){ $post=$wpdb->get_row(" SELECT ID FROM {$wpdb->posts} WHERE post_status='publish' AND post_type='post' ORDER BY ID ASC LIMIT 1 "); if(!$post){ delete_transient('dj_refresh_lock'); exit('No Post'); } } $post_id=$post->ID; $now=current_time('mysql'); wp_update_post(array( 'ID'=>$post_id, 'post_date'=>$now, 'post_date_gmt'=>get_gmt_from_date($now), 'post_modified'=>$now, 'post_modified_gmt'=>get_gmt_from_date($now) )); update_option('dj_refresh_last_id',$post_id); delete_transient('dj_refresh_lock'); exit('Updated Post ID : '.$post_id); } Rajin Mengaji dan Belajar Adalah Bentuk Meneladani Sikap - DomainJava

Rajin Mengaji dan Belajar Adalah Bentuk Meneladani Sikap

- Penulis

Jumat, 12 Juli 2024 - 11:42 WIB

facebook twitter whatsapp telegram line copy

URL berhasil dicopy

facebook icon twitter icon whatsapp icon telegram icon line icon copy

URL berhasil dicopy

Featured DomainJava

Featured DomainJava

Mengaji dan belajar adalah dua aktivitas yang sangat bermanfaat, tidak hanya secara intelektual, tetapi juga etis. Pada dasarnya, kedua aktivitas ini memiliki makna yang lebih dalam, yaitu sebagai bentuk penjiwaan nilai-nilai moral dan etika. Dalam konteks ini, tentunya kita sering mendengar istilah “rajin mengaji dan belajar adalah bentuk meneladani sikap”. Namun, apa sebenarnya maksud dari kalimat tersebut? Mari kita ulas lebih dalam.

Mengaji dan Belajar: Dua Pilar Penting

Mengaji dan belajar adalah dua pilar penting dalam kehidupan manusia, terutama dalam mengembangkan kapasitas intelektual dan etis. Melalui belajar, kita dapat memahami dan menguasai berbagai pengetahuan terkait dunia fisik dan sosial. Sedangkan mengaji, dalam konteks Islam, adalah proses belajar membaca dan memahami Al-Quran.

Namun, kedua aktivitas ini tidak hanya memiliki tujuan utilitaristik, yaitu untuk memperoleh pengetahuan atau keterampilan. Lebih dari itu, mengaji dan belajar juga memiliki tujuan etis, yaitu untuk membentuk sikap yang baik.

ADVERTISEMENT

SCROLL TO RESUME CONTENT

Rajin Mengaji dan Belajar Sebagai Sikap

Rajin mengaji dan belajar bukan hanya menunjukkan sikap seorang individu yang aktif mencari pengetahuan. Lebih dari itu, kedua aktivitas ini menunjukkan sikap seseorang yang senantiasa berusaha memperbaiki diri dan meningkatkan kapasitas dirinya, baik dari segi intelektual maupun moral.

Seorang yang rajin mengaji, misalnya, tidak hanya akan menguasai bacaan Al-Quran, tetapi juga akan menjadikan nilai-nilai yang ada di dalamnya sebagai panduan hidup. Sementara itu, seseorang yang rajin belajar akan selalu berusaha untuk menambah pengetahuannya dan merespon perubahan dengan cepat serta efektif.

Dengan kata lain, rajin mengaji dan belajar adalah bentuk aktualisasi dari sikap positif, yaitu sikap yang proaktif, adaptif, dan etis. Orang-orang yang memiliki sikap semacam ini biasanya mampu memanfaatkan segala peluang dengan baik, serta mampu menghadapi berbagai tantangan dengan bijaksana dan penuh tanggung jawab.

Meneladani Sikap Melalui Rajin Mengaji dan Belajar

Inti dari pernyataan “rajin mengaji dan belajar adalah bentuk meneladani sikap” adalah ide bahwa kita dapat belajar banyak hal dari proses belajar dan mengaji itu sendiri. Proses belajar dan mengaji bukan hanya menunjukkan betapa pentingnya pengetahuan, tetapi juga menunjukkan bagaimana sikap positif dapat membantu kita untuk mencapai tujuan yang kita inginkan.

Dengan rajin mengaji dan belajar, kita tidak hanya mengembangkan kapasitas diri kita, tetapi juga membentuk sikap yang baik. Proses ini bukan hanya tentang menambah pengetahuan, tetapi juga tentang membentuk karakter dan etika. Oleh karena itu, rajin mengaji dan belajar dapat menjadi contoh baik yang dapat diteladani oleh orang lain, terutama bagi generasi muda.

Bagi para orang tua dan pendidik, penting untuk mengajarkan kepada anak-anak bahwasanya rajin mengaji dan belajar adalah sesuatu yang perlu diteladani. Hal ini tidak hanya akan membantu mereka dalam meningkatkan prestasi akademik, tetapi juga dalam membentuk sikap yang baik dan karakter yang positif.

Jadi, jawabannya apa? Rajin mengaji dan belajar adalah bentuk meneladani sikap adalah suatu konsep yang mengajak kita untuk selalu berusaha meningkatkan diri melalui proses belajar dan mengaji. Lebih dari itu, konsep ini menunjukkan bahwa proses tersebut tidak hanya berdampak pada peningkatan pengetahuan dan keterampilan, tetapi juga pada pembentukan sikap dan karakter yang positif.

Berita Terkait

Bangsa Indonesia Menghargai Hak Asasi Manusia Sesuai dengan Nilai-nilai Pancasila, Bukan Hak Asasi Manusia yang…..?
Berpikir Terbuka, Dengan Belajar Hal yang Berbeda adalah Gambaran dari Seseorang yang Melakukan Proses Belajar yang…?
Biografi Roehana Koeddoes, Jurnalis Perempuan Pertama dan Pelopor Pers Perempuan di Indonesia
Dampak Globalisasi Menjadikan Nilai-Nilai Sosial dalam Masyarakat Menjadi Semakin Luntur: Hal Ini Ditandai dengan…?
Dasar yang Dipakai untuk Menghitung Biaya Overhead Pabrik (BOP) Apabila Terdapat Variasi dalam Waktu Penggunaan Mesin
Cara Transfer Hingga Setor dan Tarik Tunai Pakai QRIS
Bagaimana Menciptakan Sekolah yang Menyenangkan? Dimensi Apa yang Perlu Diperhatikan?
Hak DPR untuk Melakukan Penyelidikan Mengenai Kebijakan Pemerintah yang Diduga Bertentangan dengan Hukum Disebut Apa?