Cara menambah fungsi Soal Jawab pada pemalam WordPress
WordPress ialah sistem pengurusan kandungan yang berkuasa dan fleksibel, manakala pemalam menyediakan pengguna dengan ciri yang lebih boleh disesuaikan. Apabila membina komuniti aktif atau tapak web interaktif, menambah ciri Soal Jawab adalah pilihan yang bagus. Artikel ini akan memperkenalkan cara menambah fungsi Soal Jawab pada pemalam WordPress dan memberikan beberapa contoh kod.
CREATE TABLE wp_questions ( id INT AUTO_INCREMENT PRIMARY KEY, question VARCHAR(255), answer TEXT, user_id INT, create_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP );
Dalam WordPress, anda boleh menggunakan fungsi dbDelta
untuk mencipta dan mengemas kini jadual pangkalan data. Berikut ialah contoh fungsi untuk mencipta jadual soalan dan jawapan: dbDelta
函数来创建和更新数据库表。下面是一个示例函数,用于创建问答表:
function create_question_table() { global $wpdb; $table_name = $wpdb->prefix . 'questions'; $charset_collate = $wpdb->get_charset_collate(); $sql = "CREATE TABLE $table_name ( id INT AUTO_INCREMENT PRIMARY KEY, question VARCHAR(255), answer TEXT, user_id INT, create_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ) $charset_collate;"; require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); dbDelta( $sql ); }
template-qa.php
的文件,并在其中添加以下代码:<?php /* Template Name: Q&A Template */ get_header(); ?> <div id="primary" class="content-area"> <main id="main" class="site-main" role="main"> <?php while ( have_posts() ) : the_post(); ?> <article id="post-<?php the_ID(); ?>" <?php post_class(); ?>> <header class="entry-header"> <h1 class="entry-title"><?php the_title(); ?></h1> </header> <div class="entry-content"> <?php the_content(); ?> </div> </article> <?php endwhile; ?> <?php global $wpdb; $table_name = $wpdb->prefix . 'questions'; $questions = $wpdb->get_results( "SELECT * FROM $table_name ORDER BY create_date DESC" ); foreach ( $questions as $question ) { echo '<h2>' . $question->question . '</h2>'; echo '<p>' . $question->answer . '</p>'; } ?> </main> </div> <?php get_sidebar(); get_footer(); ?>
在后台,创建一个新的页面,并选择Q&A Template
<form action="" method="post"> <label for="question">问题:</label> <input type="text" name="question" id="question"> <input type="submit" value="提交问题"> </form> <?php if ( isset( $_POST['question'] ) && $_POST['question'] != '' ) { global $wpdb; $table_name = $wpdb->prefix . 'questions'; $question = sanitize_text_field( $_POST['question'] ); $user_id = get_current_user_id(); $wpdb->insert( $table_name, array( 'question' => $question, 'user_id' => $user_id ) ); } ?>
template-qa.php
dalam folder tema dan menambah kod berikut di dalamnya: <h2>回答问题:</h2> <form action="" method="post"> <textarea name="answer"></textarea> <input type="submit" value="提交答案"> </form> <?php if ( isset( $_POST['answer'] ) && $_POST['answer'] != '' ) { global $wpdb; $table_name = $wpdb->prefix . 'questions'; $answer = sanitize_textarea_field( $_POST['answer'] ); $question_id = 1; // 假设这是问题的ID $wpdb->update( $table_name, array( 'answer' => $answer ), array( 'id' => $question_id ) ); } ?>
Q&A Template sebagai templat halaman. Tambahkan fungsi penyerahan soalan dan penyerahan jawapanDi muka depan, tambahkan borang untuk membolehkan pengguna menghantar soalan. Contoh kod berikut boleh digunakan:
rrreee
Begitu juga, untuk membenarkan pentadbir atau pengguna lain menjawab soalan, contoh kod berikut boleh ditambah: 🎜rrreee🎜 Sila ambil perhatian bahawa ini hanyalah contoh mudah dan boleh dilanjutkan mengikut keperluan . 🎜🎜Dengan mengikuti langkah di atas, anda boleh menambah fungsi soal jawab pada pemalam WordPress. Saya harap artikel ini berguna dan saya doakan anda berjaya membina komuniti atau laman web yang aktif! 🎜
Atas ialah kandungan terperinci Bagaimana untuk menambah fungsi Soal Jawab pada pemalam WordPress anda. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!