ProPeler
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
tmp
/
bsimport
/
Filename :
setup_site.php
back
Copy
<?php // Setup halaman statik, front/posts page & menu utama. Jalankan: wp eval-file setup_site.php if (!defined('WP_CLI')) { echo "Run via wp eval-file\n"; return; } function bs_upsert_page($title, $slug, $content) { $found = get_posts(array('name'=>$slug,'post_type'=>'page','post_status'=>'any','numberposts'=>1,'fields'=>'ids')); if (!empty($found)) { WP_CLI::log("page ada: $slug"); return $found[0]; } $id = wp_insert_post(array( 'post_title'=>$title,'post_name'=>$slug,'post_content'=>$content, 'post_status'=>'publish','post_type'=>'page','post_author'=>1, ), true); if (is_wp_error($id)) { WP_CLI::warning("$slug: ".$id->get_error_message()); return 0; } WP_CLI::log("page #$id: $title"); return $id; } $pages = array( array('Tentang Kami','tentang-kami', '<p>Bayi Sihat lahir daripada satu keinginan mudah: memberi ibu bapa Malaysia satu tempat rujukan yang <strong>boleh dipercayai</strong> sepanjang perjalanan dari hamil hingga tahun pertama si manja.</p>' .'<p>Di internet, maklumat tentang kehamilan dan bayi terlalu banyak — sebahagiannya bercanggah, sebahagiannya menakutkan, dan banyak yang tidak sesuai dengan realiti kita di Malaysia. Kami mahu jadi suara yang berbeza: seperti seorang <em>kakak berpengalaman</em> yang duduk sebaris dengan anda, menerangkan dengan tenang dan jujur.</p>' .'<h2>Apa yang kami janjikan</h2>' .'<ul><li><strong>Jujur & bersumber</strong> — maklumat perubatan dirujuk kepada garis panduan rasmi seperti Kementerian Kesihatan Malaysia (KKM). Kami tidak mereka statistik atau nasihat palsu.</li>' .'<li><strong>Konteks tempatan</strong> — klinik kesihatan kerajaan, berpantang, buku pink dan buku merah, cuti bersalin, harga sebenar di Malaysia.</li>' .'<li><strong>Bahasa yang mudah</strong> — ditulis dalam Bahasa Melayu yang santai tetapi berwibawa.</li></ul>' .'<p>Matlamat kami satu: menjadi rujukan utama ibu bapa Malaysia yang anda buka berulang kali — sepanjang 9 bulan hingga tahun pertama.</p>'), array('Dasar Editorial & Kredibiliti','dasar-editorial', '<p>Kepercayaan anda adalah amanah kami. Kerana kandungan kesihatan boleh mempengaruhi keputusan penting, kami mengambil serius cara setiap panduan disediakan.</p>' .'<h2>Cara kami menyediakan kandungan</h2>' .'<ul><li>Setiap artikel disemak oleh sidang editorial sebelum diterbitkan.</li>' .'<li>Maklumat perubatan dirujuk silang dengan sumber sahih seperti garis panduan Kementerian Kesihatan Malaysia (KKM).</li>' .'<li>Kami <strong>tidak</strong> mereka statistik, peratusan, kajian, atau nama pakar yang tidak wujud. Jika sesuatu angka merupakan anggaran umum, kami nyatakan sedemikian.</li>' .'<li>Kandungan dikemas kini apabila maklumat atau garis panduan berubah.</li></ul>' .'<h2>Bukan pengganti nasihat doktor</h2>' .'<p>Kandungan kami bertujuan pendidikan umum. Ia tidak menggantikan pemeriksaan, diagnosis, atau nasihat daripada doktor dan pengamal perubatan bertauliah. Untuk keadaan kesihatan khusus, sila rujuk klinik atau hospital.</p>' .'<p>Jumpa kesilapan dalam kandungan kami? Beritahu kami melalui halaman <a href="/hubungi-kami/">Hubungi Kami</a> — kami hargai teguran anda.</p>'), array('Penafian Perubatan','penafian-perubatan', '<p>Semua kandungan di Bayi Sihat (bayisihat.com) disediakan untuk tujuan <strong>maklumat dan pendidikan umum sahaja</strong>.</p>' .'<ul><li>Kandungan ini <strong>bukan</strong> nasihat perubatan dan tidak boleh dijadikan pengganti kepada nasihat, diagnosis atau rawatan daripada doktor atau pengamal perubatan bertauliah.</li>' .'<li>Jangan menangguh mendapatkan nasihat perubatan profesional atau mengabaikannya kerana sesuatu yang anda baca di laman ini.</li>' .'<li>Dalam kecemasan atau jika anda risau tentang kesihatan anda atau bayi, sila terus berjumpa doktor, klinik kesihatan, atau unit kecemasan hospital yang berhampiran.</li>' .'<li>Setiap kehamilan dan setiap bayi adalah unik. Apa yang sesuai untuk seorang mungkin tidak sesuai untuk yang lain.</li></ul>' .'<p>Dengan menggunakan laman ini, anda memahami dan bersetuju dengan penafian ini.</p>'), array('Hubungi Kami','hubungi-kami', '<p>Ada pertanyaan, cadangan topik, atau ingin bekerjasama dengan Bayi Sihat? Kami gembira mendengar daripada anda.</p>' .'<p><strong>E-mel:</strong> hello@bayisihat.com</p>' .'<p>Kami cuba membalas setiap e-mel secepat mungkin. Untuk cadangan topik, kongsikan apa yang anda ingin kami tulis — mungkin soalan anda juga menjadi persoalan ramai ibu bapa lain.</p>' .'<div class="bs-note"><strong>Nota:</strong> Kami tidak memberi nasihat perubatan peribadi melalui e-mel. Untuk keadaan kesihatan khusus, sila rujuk doktor atau klinik.</div>'), array('Kerjasama & Iklan','kerjasama-iklan', '<p>Bayi Sihat terbuka kepada kerjasama jenama yang selari dengan misi kami membantu ibu bapa Malaysia — termasuk kandungan tajaan, penempatan iklan, dan kerjasama kandungan.</p>' .'<p>Untuk media kit dan kadar, e-mel kami di <strong>hello@bayisihat.com</strong>. Kami mengutamakan kerjasama yang jujur, relevan, dan menghormati kepercayaan pembaca kami.</p>'), array('Soalan Lazim','soalan-lazim', '<h2>Adakah kandungan Bayi Sihat percuma?</h2><p>Ya. Semua artikel dan panduan boleh dibaca secara percuma.</p>' .'<h2>Bolehkah saya bergantung pada maklumat di sini untuk keputusan kesihatan?</h2><p>Kandungan kami adalah panduan umum yang bersumber. Namun ia bukan pengganti nasihat doktor. Sila rujuk klinik atau hospital untuk kes khusus.</p>' .'<h2>Bila kedai produk akan dibuka?</h2><p>Kami sedang menumpukan pada kandungan dahulu. Kedai produk ibu & bayi akan dibuka pada fasa akan datang.</p>'), array('Dasar Privasi','dasar-privasi', '<p>Privasi anda penting bagi kami. Halaman ini menerangkan cara maklumat dikumpul dan digunakan di bayisihat.com, selaras dengan Akta Perlindungan Data Peribadi (PDPA) Malaysia.</p>' .'<h2>Maklumat yang dikumpul</h2><p>Kami mungkin mengumpul alamat e-mel apabila anda melanggan surat berita, serta data penggunaan laman yang tidak mengenal pasti individu (analitik).</p>' .'<h2>Penggunaan maklumat</h2><p>Maklumat digunakan untuk menghantar kandungan yang anda langgan dan menambah baik laman. Kami tidak menjual data peribadi anda kepada pihak ketiga.</p>' .'<p>Anda boleh berhenti melanggan pada bila-bila masa. Untuk pertanyaan berkaitan data, hubungi hello@bayisihat.com.</p>'), array('Terma & Syarat','terma-syarat', '<p>Dengan menggunakan bayisihat.com, anda bersetuju dengan terma berikut.</p>' .'<ul><li>Kandungan laman ini dilindungi hak cipta dan tidak boleh disalin semula tanpa kebenaran.</li>' .'<li>Kandungan disediakan "sebagaimana adanya" untuk tujuan maklumat umum. Sila rujuk <a href="/penafian-perubatan/">Penafian Perubatan</a>.</li>' .'<li>Kami berhak mengemas kini kandungan dan terma ini dari semasa ke semasa.</li></ul>'), ); foreach ($pages as $p) { bs_upsert_page($p[0], $p[1], $p[2]); } // Front page + posts page $front_id = bs_upsert_page('Laman Utama', 'laman-utama', ''); $blog_id = bs_upsert_page('Artikel', 'artikel', ''); if ($front_id) { update_option('show_on_front', 'page'); update_option('page_on_front', $front_id); } if ($blog_id) { update_option('page_for_posts', $blog_id); } WP_CLI::log("front=$front_id posts=$blog_id"); // Menu utama $menu_name = 'Menu Utama'; $menu = wp_get_nav_menu_object($menu_name); $menu_id = $menu ? $menu->term_id : wp_create_nav_menu($menu_name); if (is_wp_error($menu_id)) { WP_CLI::warning('menu: '.$menu_id->get_error_message()); } else { // kosongkan item sedia ada $items = wp_get_nav_menu_items($menu_id); if ($items) foreach ($items as $it) wp_delete_post($it->ID, true); $add_cat = function($slug,$label) use ($menu_id){ $t = get_category_by_slug($slug); if ($t) wp_update_nav_menu_item($menu_id,0,array('menu-item-title'=>$label,'menu-item-type'=>'taxonomy','menu-item-object'=>'category','menu-item-object-id'=>$t->term_id,'menu-item-status'=>'publish')); }; $add_page = function($slug,$label) use ($menu_id){ $ids = get_posts(array('name'=>$slug,'post_type'=>'page','numberposts'=>1,'fields'=>'ids','post_status'=>'publish')); if ($ids) wp_update_nav_menu_item($menu_id,0,array('menu-item-title'=>$label,'menu-item-type'=>'post_type','menu-item-object'=>'page','menu-item-object-id'=>$ids[0],'menu-item-status'=>'publish')); }; $add_cat('trimester-kehamilan','Kehamilan'); $add_cat('bayi-baru-lahir','Bayi Baru Lahir'); $add_cat('berpantang','Berpantang'); $add_cat('kesihatan-imunisasi','Kesihatan & Imunisasi'); $add_page('tentang-kami','Tentang'); $loc = get_theme_mod('nav_menu_locations'); if (!is_array($loc)) $loc = array(); $loc['primary'] = $menu_id; set_theme_mod('nav_menu_locations', $loc); WP_CLI::log("menu #$menu_id ditetapkan ke lokasi 'primary'"); } WP_CLI::success('Setup laman selesai.');