加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

HTML – WordPress自定义注册表

发布时间:2020-12-14 19:45:26 所属栏目:资源 来源:网络整理
导读:我有一个需要自定义注册表单的客户端. 我需要在此页面上进行自定义设计 我需要添加自定义字段,如名字,公司,电话等. 有人可以帮我这个吗? 解决方法 一个更好的地方问WordPress的问题可能是在 WordPress Answers.Anyhoo,如果你想在没有插件的情况下解决这个问
我有一个需要自定义注册表单的客户端.

>我需要在此页面上进行自定义设计
>我需要添加自定义字段,如名字,公司,电话等.

有人可以帮我这个吗?

解决方法

一个更好的地方问WordPress的问题可能是在 WordPress Answers.Anyhoo,如果你想在没有插件的情况下解决这个问题,你需要三件事:

> A custom WordPress theme
> A Page Template
>使用页面模板的WordPress Page

如果有这三个部分,可以在页面模板中执行以下操作:

<?php
/*
Template Name: Registration
*/

global $current_user;
get_currentuserinfo();

$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
$company = $_POST['company'];

if (($firstname != '') && ($lastname != '') && ($company != '')) {
    // TODO: Do more rigorous validation on the submitted data

    // TODO: Generate a better login (or ask the user for it)
    $login = $firstname . $lastname;

    // TODO: Generate a better password (or ask the user for it)
    $password = '123';

    // TODO: Ask the user for an e-mail address
    $email = 'test@example.com';

    // Create the WordPress User object with the basic required information
    $user_id = wp_create_user($login,$password,$email);

    if (!$user_id || is_wp_error($user_id)) {
       // TODO: Display an error message and don't proceed.
    }

    $userinfo = array(
       'ID' => $user_id,'first_name' => $firstname,'last_name' => $lastname,);

    // Update the WordPress User object with first and last name.
    wp_update_user($userinfo);

    // Add the company as user metadata
    update_usermeta($user_id,'company',$company);
}

if (is_user_logged_in()) : ?>

  <p>You're already logged in and have no need to create a user profile.</p>

<?php else : while (have_posts()) : the_post(); ?>

<div id="page-<?php the_ID(); ?>">
    <h2><?php the_title(); ?></h2>

    <div class="content">
        <?php the_content() ?>
    </div>

    <form action="<?php echo $_SERVER['REQUEST_URI'] ?>" method="post">
        <div class="firstname">
            <label for="firstname">First name:</label>
            <input name="firstname"
                   id="firstname"
                   value="<?php echo esc_attr($firstname) ?>">
        </div>
        <div class="lastname">
            <label for="lastname">Last name:</label>
            <input name="lastname"
                   id="lastname"
                   value="<?php echo esc_attr($lastname) ?>">
         </div>
         <div class="company">
            <label for="company">Company:</label>
            <input name="company"
                   id="company"
                   value="<?php echo esc_attr($company) ?>">
         </div>
    </form>
</div>

<?php endwhile; endif; ?>

现在,当您想要检索已存储的内容时,您需要知道信息是在User对象本身内还是在元数据中.要检索(登录用户的)姓名和姓氏,请执行以下操作:

global $current_user;
$firstname = $current_user->first_name;
$lastname = $current_user->last_name;

要检索公司名称(已登录用户):

global $current_user;
$company = get_usermeta($current_user->id,'company');

这是它的基本要点.这里仍然缺少很多东西,例如验证,错误消息输出,WordPress API中发生的错误处理等等.还有一些重要的TODO,你必须在代码甚至可以工作之前处理.代码应该也可以分成几个文件,但我希望这足以让你入门.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读