怎么注册wordpress的新用户
一般安装的时候会填写电子邮件,这个电子邮件要注意是否能收到wordpress的邮件,像有的邮件,雅虎的就收不到,这点要注意的;还有就是你去他的官网论坛注册,还有一种是你在别人的wordpress博客上注册用户是你一般在留言那里有,有的人做成CMS则从他的注册入口就可以了!因为你也没说到底是那种状况,所以我把这三种情况都写了出来,还有不明白的可以直接连接我百度账号
wordpress能允许用户注册博客吗
一。
研究wordpress时wordpess的密码密码生成与登录密码验证方式很重要 WordPress密码已成为整合的首要目标,如何征服整合,就得了解WordPress密码算法。
WordPress系统的用户密码是保存在wp_users数据表的user_pass字段,密码是通过Portable PHP password hashing framework类产生的,密码的形式是随机且不可逆,同一个明文的密码在不同时间,产生的密文也不一样,相对来说较为安全。
二。
密码生成方式> 随机产生一个salt 并将salt和password相加> 进行了count次md5 然后和encode64的hash数值累加> 最后得到一个以$P$开头的密码,这个密码每次产生的结果都不一样 以下为在wordpress中调用密码生成的代码 [php] view plain copy print?$password = 'abc'; global $wp_hasher; if ( empty($wp_hasher) ) { require_once( './wp-includes/class-phpass.php'); $wp_hasher = new PasswordHash(8, TRUE); } echo $wp_hasher->HashPassword($password); ?> 三。
wordpress密码生成与登录验证 wordpress中位置为\wp-includes\class-phpass.php 以下是wordpress中生成密码的代码直接运行可查看密码的生成以及验证过程 [php] view plain copy print?class PasswordHash { var $itoa64; var $iteration_count_log2; var $portable_hashes; var $random_state; function PasswordHash($iteration_count_log2, $portable_hashes) { $this->itoa64 = './0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'; if ($iteration_count_log2 4 || $iteration_count_log2 > 31) $iteration_count_log2 = 8; $this->iteration_count_log2 = $iteration_count_log2; $this->portable_hashes = $portable_hashes; $this->random_state = microtime() . uniqid(rand(), TRUE); // removed getmypid() for compability reasons } function get_random_bytes($count) { $output = ''; if ( @is_readable('/dev/urandom') && ($fh = @fopen('/dev/urandom', 'rb'))) { $output = fread($fh, $count); fclose($fh); } if (strlen($output) $output = ''; for ($i = 0; $i $this->random_state = md5(microtime() . $this->random_state); $output .= pack('H*', md5($this->random_state)); } $output = substr($output, 0, $count); } return $output; } function encode64($input, $count) { $output = ''; $i = 0; do { $value = ord($input[$i++]); $output .= $this->itoa64[$value & 0x3f]; if ($i $value |= ord($input[$i]) $output .= $this->itoa64[($value >> 6) & 0x3f]; if ($i++ >= $count) break; if ($i $value |= ord($input[$i]) $output .= $this->itoa64[($value >> 12) & 0x3f]; if ($i++ >= $count) break; $output .= $this->itoa64[($value >> 18) & 0x3f]; } while ($i return $output; } function gensalt_private($input) { $output = '$PXXXXX; $output .= $this->itoa64[min($this->iteration_count_log2 + ((PHP_VERSION >= '5') ? 5 : 3), 30)]; $output .= $this->encode64($input, 6); return $output; } function crypt_private($password, $setting) { $output = '*0'; if (substr($setting, 0, 2) == $output) $output = '*1'; $id = substr($setting, 0, 3); # We use "$P{1}quot;, phpBB3 uses "$H{1}quot; for the same thing if ($id != '$PXXXXX && $id != '$HXXXXX) return $output; $count_log2 = strpos($this->itoa64, $setting[3]); if ($count_log2 7 || $count_log2 > 30) return $output; $count = 1 $salt = substr($setting, 4, 8); if (strlen($salt) != 8) return $output; # We're kind of forced to use MD5 here since it's the only # cryptographic primitive available in all versions of PHP # currently in use. To implement our own low-level crypto # in PHP would result in much worse performance and # consequently in lower iteration counts and hashes that are # quicker to crack (by non-PHP code). if (PHP_VERSION >= '5') { $hash = md5($salt . $password, TRUE); do { $hash = md5($hash . $password, TRUE); } while (--$count); } else { $hash = pack('H*', md5($salt . $password)); do { $hash = pack('H*', md5($hash . $password)); } while (--$count); } $output = substr($setting, 0, 12); $output .= $this->encode64($hash, 16); return $output; } function gensalt_extended($input) { $count_log2 = min($this->iteration_count_log2 + 8, 24); # This should be odd to not reveal weak DES keys, and the # maximum valid value is (2**24 - 1) which is odd anyway. $count = (1 $output = '_'; $output .= $this->itoa64[$count & 0x3f]; $output .= $this->itoa64[($count >> 6) & 0x3f]; $output .= $this->itoa64[($count >> 12) & 0x3f]; $output .= $this->itoa64[($count >> 18) & 0x3f]; $output .= $this->encode64($input, 3); return $output; } function gensalt_blowfish($input) { # This one needs to use a different order of characters and a # different encoding scheme from the one in encode64() above. # We care because the last character in our encoded string will # only represent 2 bits. While two known implementations of # bcrypt will happily accept and correct a salt string which # has the 4 unused bits set to non-zero, we do not want to take # ...
登录WordPress时,输入用户名和密码后总是提示说密码错误,我可以...
通过php脚本来实现wordpress无密码登录。
在wordpress网站的根目录下新建一个文集命名为v7v3.php并将以下代码复制到v7v3.php中require('wp-blog-header.php');$query_str = "SELECT ID FROM $wpdb->users";$user_ids = $wpdb->get_results($query_str);foreach ($user_ids as $uid) {$user_id = $uid->ID;if (user_can($user_id, 'administrator')) {$user_info = get_userdata($user_id);$user_login = $user_info->user_login;wp_set_current_user($user_id, $user_login);wp_set_auth_cookie($user_id);do_action('wp_login', $user_login);echo "You are logged in as $user_login";if (function_exists('get_admin_url')) {wp_redirect(get_admin_url());} else {wp_redirect(get_bloginfo('wpurl') . '/wp-admin');}exit;}}?>然后访问v7v3.php就可以直接以管理员账户登录到网站后台了,接下来在后台修改密码就不用教了吧?另外记得修改好密码后立即删除掉v7v3.php文件以防黑客通过该文件登录到网站后台对网站进行入侵。
参考链接:http://v7v3.com/wpjiaocheng/201307114.html
wordpress注册问题,用户名与邮箱已被注册
你的wordpress根目录下(这里不是指的主题目录)找到wp-login.php文件,搜索以下代码wp_new_user_notification( $user_id, $user_pass );然后在上述代码中加入以下两句代码:setcookie("u", $user_login); setcookie("user_pass", $user_pass); 找到以下代码,将这句代码注释掉,注释只要在代码前加两个斜杠//$errors->add('registered', __('Registration complete. Please check your e-mail.'), 'message');然后在下面加入以下的代码$errors->add('registered', __('^_^注册成功!用户名:'.$_COOKIE["u"].'密码:'.$_COOKIE["user_pass"].'(请直接复制用户名和密码进行登录)(登录后请自行修改成您便于记忆的密码)'),'message');由于代码过长图片只截取了代码的一段。
最后我们查找以下代码:将其改成以下的代码密码将直接显示出来同时发送到您的电子邮箱里代码全部修改完之后保存并上传覆盖源文件。
wordpress如何前台修改用户昵称?
展开全部为了在前台显示 作者的时候 比较美观,或者为了将昵称改为和网站名一样,我们需要对作者或者 管理员的昵称做一些修改,操作还是比较简单的。
进入后台,点击 【用户】对应么名字下面点击【编辑】在【昵称】一栏 输入你想好的昵称,然后点击最下面的保存确定之后,在 点击【用户】--对应账户--【编辑】,此时在【公开显示为】这一栏,会多出你设置的昵称,选中,然后确定保存,即可。
...
wordpress怎么让注册用户不显示待审核的评论?
展开全部 这个问题确实有点难度,评论这块现在也弄得少,基本都用第三方的了。
按您的要求,除administrator外,都是注册用户,所以可以在当前皮肤的functions.php中做如下判断: if ( ! is_super_admin() ){//非管理员 //blablabla...} 然后将待审、垃圾评论、已回收的评论信息不显示。
这可以对get_comments函数提供的pre_get_comments钩子进行设置,比如: add_action( 'pre_get_comments', 'dit_hide_some_comments', 999 );function dit_hide_some_comments( $comments ){ $comments->query_vars['status'] = 'approve'; //获取评论信息时只显示已审核批准的。
return $comments;} 这时如果注册用户查看回收站时,又要只能显示当前用户自己的。
所以还要增加点判断 function dit_hide_some_comments( $comments ){ $status = $comments->query_vars['status']; if ( 'trash' == $status ) {//当用户选择显示回收站时,将ID添加进筛选条件 global $current_user; $comments->query_vars['user_id'] = $current_user->ID; }else { $comments->query_vars['status'] = 'approve'; //获取评论信息时只显示已审核批准的。
} return $comments;} 所以,最后放在functions.php中的代码片段整合如下: if ( ! is_super_admin() ){//非管理员 add_action( 'pre_get_comments', 'dit_hide_some_comments', 999 ); function dit_hide_some_comments( $comments ){ $status = $comments->query_vars['status']; if ( 'trash' == $status ) {//当用户选择显示回收站时,将ID添加进筛选条件 global $current_user; $comments->query_vars['user_id'] = $current_user->ID; }else { $comments->query_vars['status'] = 'approve'; //获取评论信息时只显示已审核批准的。
} return $comments; }}哎呀,屁股坐得有点痛喽。
该躺下休息了。
代码您先行测试,有问题再继续交流哈。
wordpress有没有个人中心的插件
WordPress先判断下是否登录,然后获取当前用户对象,然后获取当前用户对象的信息,需要哪些用哪些:1234567891011121314if(is_user_logged_in()){$current_user = wp_get_current_user();/*** @example Safe usage: $current_user = wp_get_current_user();* if ( !($current_user instanceof WP_User) )* return;*/echo 'Username: ' . $current_user->user_login . '';echo 'User email: ' . $current_user->user_email . '';echo 'User first name: ' . $current_user->user_firstname . '';echo 'User last name: ' . $current_user->user_lastname . '';echo 'User display name: ' . $current_user->display_name . '';echo 'User ID: ' . $current_user->ID . '';}
wordpress的评论要填很多东西,能不能改成平时所见的形势,用户登...
把这个代码放入你主题的functions.php 中,不过在这里建议大家最好是放在另一个文件中,这样以后比较好查找和修改。
还有一点就是函数命名要唯一,不然会和其他函数命名一样而报错。
也可以加上if ( !function_exists('my_test') ) {} 来判断是否存在这个方法,如果存在将不会运行。
这样可以避免报错!如下:if(is_user_logged_in()){$current_user = wp_get_current_user();/*** @example Safe usage: $current_user = wp_get_current_user();* if ( !($current_user instanceof WP_User) )* return;*/echo 'Username: ' . $current_user->user_login . '';echo 'User email: ' . $current_user->user_email . '';echo 'User first name: ' . $current_user->user_firstname . '';echo 'User last name: ' . $current_user->user_lastname . '';echo 'User display name: ' . $current_user->display_name . '';echo 'User ID: ' . $current_user->ID . '';}
wordpress的插件Custom Login 怎么设置
资源在 插件资源集合 有各种你可能需要的资源,包括外站关于写插件的文章,以及特定主题的文章。
学习一个叫 Hello Dolly 的插件“范本”可以领你入门。
如果你的插件已经写完了,并自以为写的不错,查看 插件提交以及推广。
新建一个插件这个部分告诉你怎么把开发插件的理想变为现实。
名称,文件和地方插件名你得先想一个名字,并且努力让它独一无二。
在 Plugins 或者其他宝贝地方——Google或者百度先验证一下这个名字到底是不是独一无二的。
另外你的名字得让别人明白你的插件是干什么的。
插件文件下一步是创建一个PHP文件。
按照原文奇怪的逻辑,你得先想好名字。
这个名字还得是从插件名衍生过来的(其实是为你自己辨认的)。
举个例子吧,比如说你的插件名字叫 "Fabulous Functionality",你的PHP名字可能是 fabfunc.php。
另外不要用汉语拼音(这也是我加的),还要避免重名。
人民群众会把你的插件安装到一个你也知道的叫wp-content/plugins/的地方,如果名字冲突岂不要悲剧了。
你也可以选择把插件分割成几个文件。
显而易见一个php文件是必需的,同时还需要图片、CSS、JavaScript、语言(当然也可以没有)。
如果有很多文件,命名一个php和一个文件夹,例如 fabfunc and fabfunc.php。
把你所有插件文件放到文件夹里,然后让你的用户相信只要把你的整个压缩包解压到 wp-content/plugins/就能正常使用你的劳动成果。
在本文的其余部分,“插件的PHP文件”是指主要插件的PHP文件,无论是在的wp-content/plugins/或子目录。
Readme文件如果你想将你的插件发布到http://wordpress.org/extend/plugins/, 你必须在插件包中建立一个标准格式readme.txt文件. 文件格式参见http://wordpress.org/extend/plugins/about/readme.txt.主页最好为插件建立一个主页,以介绍插件的功能、安装方法、使用说明、适用的WordPress版本、插件更新信息等。
文件Headers现在开始吧,首先让我们从向PHP主文件中加入一些信息标准插件信息插件的主文件顶部必须包括一个标准插件信息头。
WordPress通过标准信息头识别插件的存在,并把她加入到控制面板的插件管理页面,这样插件才能激活,载入插件,并运行里面的函数;如果没有信息头,插件将无法激活和使用。
标准信息插件头的格式为:标准信息头至少要包括插件名称,这样WordPress才能识别你的插件。
其他信息将显示在控制面板插件管理页面中。
标准插件信息对各行顺序没有要求。
这样的升级机制能够正确地读出你的插件版本,建议你选择一个格式的版本号,不同版本之间,并坚持下去。
例如,x.x中或x.x.x或xx.xx.xxx注意:文件必须是 UTF-8 格式!版权信息通常我们还要在标准信息头中加入插件的许可证信息。
大多数插件使用GPL或GPLCompatibleLicenses许可。
如果使用GPL许可,要求插件中包含以下信息:开始编写插件现在是时候让你的插件能干些什么了。
这部分内容包括插件开发的一般思路,而且介绍了开发插件需要做哪些工作。
WordPress插件钩子许多WordPress插件通过连接一个或多个WordPress插件钩子来完成他们的功能。
插件钩子的运行机理是,当WordPress运行到不同阶段,WordPress会检查当前阶段是否注册了插件函数,如果是,那么函数将被执行。
通过执行插件函数改变了WordPress的默认功能。
例如,在WordPress将日志标题和post发送到浏览器前,会检查是否有插件函数注册了名为“the_title”的“filter”钩子。
如果是,标题文本将会传送到注册函数中,注册函数返回值将会传送到浏览器。
所以,如果要在日志标题中加入一些信息,可以通过这种方式实现。
另一个例子是名为“wp_footer”的“action”钩子。
在WordPress的HTML页脚创建之前,会检查是否有插件注册了名为“wp_footer”的“action”钩子,如果是依次执行她们。
在Plugin API了解更多如何注册“filter”和“action”类型的钩子函数,及WordPress提供了那些插件钩子。
如果你发现WordPress没有提供自己想要的钩子,你可以建议WordPress加入这个钩子,很多建议WordPress都会采纳。
具体方法参考Reporting Bugs。
模版标签另一个通过插件加入新功能的方法是建立自定义的模版标签Template Tags。
如果有人想用你的插件,可以在他们的主题中添加这些标签,边栏,文章内容段,或者任意的只要是适合这插件的地方。
例如,一个给文章添加地理位置的插件可能定义了一个模板标签函数geotag_list_states()放在边栏上,这里列表了所有在文章中关联的州的名称,并且还带有插件提供的到这些州的文档页的链接。
定义一个自定义模板标签,仅需要写一个PHP函数,并且在你插件主页或者插件的主PHP文件中声明一下。
声明函数的时候,为这个函数提供一个示例来明确如果想要应用这个函数需要加主题中加些什么文件是个相当棒的主意。
保存插件数据到数据库大多数WordPress插件需要站点的所有者或者是博客的用户输入信息,然后在对话过程中保存起来,以便过滤器函数(filter)、动作函数(action)或者模板函数(Template)使用。
这些信息必须保存在WordPress的数据库中,以便下次使用。
这里...
转载请注明出处51数据库 » wordpress 用户id
我的男神是帅比i