Cara membangunkan pemalam WordPress yang menjana papan mesej secara automatik
Apabila mencipta tapak web interaktif, papan mesej amat diperlukan. Pada platform WordPress, untuk memudahkan pengguna menambah fungsi mesej, kami boleh membangunkan pemalam yang menjana papan mesej secara automatik. Artikel ini akan menerangkan cara menggunakan pembangunan pemalam WordPress untuk mencapai matlamat ini dan memberikan contoh kod yang sepadan.
Langkah Pertama: Cipta Folder Pemalam dan Fail Utama
Pertama, kita perlu mencipta folder dalam direktori pemalam WordPress untuk meletakkan pemalam papan mesej kami. Anda boleh menamakan folder ini "papan mesej".
Dalam folder ini, buat fail utama, contohnya "message-board.php". Fail ini akan menjadi fail masukan untuk pemalam.
Seterusnya, tambahkan kod berikut pada fail "message-board.php":
<?php /* Plugin Name: 留言板 Plugin URI: https://www.example.com/message-board Description: 自动生成留言板的WordPress插件 Version: 1.0 Author: Your Name Author URI: https://www.example.com */ // 在这里编写插件的主要代码 ?>
Kod ini memberikan maklumat asas kepada pemalam dan mencipta pemalam yang dipanggil "Papan Mesej".
Langkah 2: Buat jadual pangkalan data
Untuk menyimpan data mesej, kita perlu mencipta jadual pangkalan data. Ini boleh dilakukan dengan memperluaskan pangkalan data WordPress.
Dalam blok kod utama fail "message-board.php", tambah kod berikut:
// 当插件激活时,调用该函数创建数据库表格 register_activation_hook( __FILE__, 'create_message_board_table' ); function create_message_board_table() { global $wpdb; $table_name = $wpdb->prefix . 'message_board'; $charset_collate = $wpdb->get_charset_collate(); $sql = "CREATE TABLE $table_name ( id mediumint(9) NOT NULL AUTO_INCREMENT, author_name varchar(150) NOT NULL, message text NOT NULL, submit_date datetime NOT NULL, PRIMARY KEY (id) ) $charset_collate;"; require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); dbDelta( $sql ); }
Kod ini akan memanggil fungsi "create_message_board_table" apabila pemalam diaktifkan, yang akan mencipta pangkalan data bernama "wp_message_board" lembaran. Jadual termasuk lajur seperti id, nama_pengarang, mesej dan tarikh_serah.
Langkah 3: Buat halaman papan mesej
Sekarang kita perlu mencipta halaman dalam WordPress untuk memaparkan papan mesej. Kita boleh mencapai ini dengan menambahkan fungsi kod pendek pada fail utama pemalam.
Dalam coretan kod utama dalam fail "message-board.php", tambahkan kod berikut:
// 注册短代码 add_shortcode( 'message_board', 'display_message_board' ); // 短代码函数 function display_message_board() { ob_start(); ?> <h3>留言板</h3> <!-- 留言板表单 --> <form id="message_form" method="post" action="<?php echo esc_url( admin_url('admin-post.php') ); ?>"> <input type="hidden" name="action" value="submit_message"> <label for="author_name">姓名:</label> <input type="text" name="author_name" required> <br> <label for="message">留言:</label> <textarea name="message" cols="30" rows="5" required></textarea> <br> <input type="submit" value="提交"> </form> <!-- 已提交的留言 --> <div id="message_list"> <?php // 调用函数来展示已提交的留言 ?> <?php display_submitted_messages(); ?> </div> <?php return ob_get_clean(); }
Dalam kod ini, kami mendaftarkan kod pendek yang dipanggil "message_board" dan mencipta halaman papan Mesej. Halaman ini mengandungi borang untuk menghantar komen baharu dan senarai untuk memaparkan ulasan yang diserahkan.
Langkah 4: Memproses data penyerahan borang
Apabila pengguna menghantar mesej, kami perlu menyimpan data mesej ke pangkalan data melalui fungsi pemprosesan bahagian belakang.
Teruskan tambah kod berikut pada coretan kod utama dalam fail "message-board.php":
// 处理留言提交 add_action( 'admin_post_nopriv_submit_message', 'handle_message_submission' ); add_action( 'admin_post_submit_message', 'handle_message_submission' ); function handle_message_submission() { if ( 'POST' === $_SERVER['REQUEST_METHOD'] ) { global $wpdb; $table_name = $wpdb->prefix . 'message_board'; $author_name = sanitize_text_field( $_POST['author_name'] ); $message = sanitize_textarea_field( $_POST['message'] ); $data = array( 'author_name' => $author_name, 'message' => $message, 'submit_date' => current_time( 'mysql' ) ); $wpdb->insert( $table_name, $data ); wp_redirect( get_permalink() ); exit; } }
Dalam kod ini, kami mentakrifkan fungsi yang dipanggil "handle_message_submission" untuk mengendalikan penyerahan borang front-end. Fungsi ini mendapat nama pengarang dan kandungan mesej daripada borang dan memasukkan data ke dalam pangkalan data. Akhir sekali, kami mengubah hala halaman ke halaman papan mesej.
Langkah 5: Paparkan mesej yang dihantar
Akhir sekali, kita perlu mencipta fungsi untuk memaparkan mesej yang dihantar.
Teruskan tambah kod berikut pada coretan kod utama dalam fail "message-board.php":
function display_submitted_messages() { global $wpdb; $table_name = $wpdb->prefix . 'message_board'; $results = $wpdb->get_results( "SELECT * FROM $table_name" ); if ( $results ) { foreach ( $results as $result ) { echo '<div class="message">'; echo '<p><strong>作者: </strong>' . esc_html( $result->author_name ) . '</p>'; echo '<p><strong>留言: </strong>' . esc_html( $result->message ) . '</p>'; echo '<p><strong>时间: </strong>' . esc_html( $result->submit_date ) . '</p>'; echo '</div>'; } } else { echo '暂时没有留言'; } }
Dalam kod ini, kami mentakrifkan fungsi yang dipanggil "display_submitted_messages" untuk mendapatkan mesej yang diserahkan daripada komen pangkalan data dan dipaparkan pada halaman tersebut.
Pada ketika ini, kami telah melengkapkan pemalam WordPress yang menjana papan mesej secara automatik. Selepas mengaktifkan pemalam ini dalam pengurusan pemalam bahagian belakang WordPress, anda boleh memaparkan papan mesej dengan menambahkan kod pendek "[message_board]" pada halaman.
Semoga artikel ini akan membantu anda dalam membangunkan pemalam WordPress!
Atas ialah kandungan terperinci Bagaimana untuk membangunkan pemalam WordPress yang menjana papan mesej secara automatik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!