📜  仪表板中的 wp+get author 框 - PHP (1)

📅  最后修改于: 2023-12-03 15:06:41.260000             🧑  作者: Mango

仪表板中的 wp_get_author 框 - PHP

WordPress 中的 wp_get_author 适用于在文章和页面上显示作者的名称和链接。在本教程中,我们将通过使用 wp_get_author 函数,将作者信息添加到仪表板中。

准备工作

在开始之前,确保您已使用 WordPress 搭建了网站,并且对 PHP 的基本知识有一定的了解。

添加作者框

在 WordPress 仪表板中添加作者框需要在 functions.php 文件中添加以下代码:

// 添加作者框
function custom_author_meta_box() {
  add_meta_box(
    'custom_author',
    __( '作者信息', 'textdomain' ),
    'custom_author_meta_box_callback',
    'post'
  );
}
add_action( 'add_meta_boxes', 'custom_author_meta_box' );
 
// 生成作者框
function custom_author_meta_box_callback($post) {
  wp_nonce_field( basename( __FILE__ ), 'custom_author_nonce' );
  ?>
  <p>
    <label for="custom-author-name"><?php _e( '作者姓名', 'textdomain' )?></label>
    <input type="text" name="custom_author_name" id="custom-author-name" value="<?php echo esc_attr( get_post_meta( $post->ID, 'custom_author_name', true ) ); ?>">
  </p>
  <?php
}
保存作者框信息

在存储作者信息之前,需要实现安全验证。以下是我们需要添加到 functions.php 文件中的代码:

// 防止 Cross-site scripting (XSS)
function custom_author_meta_box_save( $post_id ) {
  if ( ! isset( $_POST['custom_author_nonce'] ) || ! wp_verify_nonce( $_POST['custom_author_nonce'], basename( __FILE__ ) ) ) {
    return $post_id;
  }
 
  if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) {
    return $post_id;
  }
 
  if ( 'post' === $_POST['post_type'] && ! current_user_can( 'edit_post', $post_id ) ) {
    return $post_id;
  }
 
  if ( ! isset( $_POST['custom_author_name'] ) ) {
    return $post_id;
  }
 
  $my_data = sanitize_text_field( $_POST['custom_author_name'] );
  update_post_meta( $post_id, 'custom_author_name', $my_data );
}
add_action( 'save_post', 'custom_author_meta_box_save' );
显示作者框数据

现在我们已经添加了作者框,也保存了作者框数据。下一步是将作者数据显示在仪表板上。您可以在任何添加作者框的位置和风格中使用此代码:

// show author name and link from author ID
$author_id = get_post_meta( get_the_ID(), '_custom_author', true );
$author_name = get_post_meta( get_the_ID(), '_custom_author', true );
$author_link = get_author_posts_url( $author_id );
echo '<a href="' . $author_link . '">' . $author_name . '</a>';
结论

现在您已经知道如何在 WordPress 仪表板中添加作者框。我们的代码示例说明了如何添加、保存和显示作者框数据。随着您的 WordPress 网站不断发展,您可能还需要添加更多的元数据框,以收集和保存更多的信息。