討論:Wordpress/目錄與檔案:修訂版本之間的差異

出自福留子孫
跳轉到: 導覽搜尋
(以“Portable PHP password hashing framework salt和password相加,又進行了count次md5,最後和encode64的hash數值累加,就得到了一個以$P$開頭的...”为内容创建页面)
 
全域變數
 
(未顯示同用戶所作出之4次版本)
第 16 行: 第 16 行:
 
#wp_users數據表的user_pass字段修改為32位的md5(passowrd)
 
#wp_users數據表的user_pass字段修改為32位的md5(passowrd)
 
#當這個用戶在WordPress登錄後,系統會自動將MD5密碼修改為以$P$開頭的密碼。
 
#當這個用戶在WordPress登錄後,系統會自動將MD5密碼修改為以$P$開頭的密碼。
 +
===全域變數===
 +
*$wpdb
 +
*$wp_hasher
 +
*$wp_filters 所有的 filter 掛鉤
 +
 +
===內部===
 +
[http://www.phpstudio.info/show-100-1026-1.html WordPress核心文件功能及其載入]
 +
*/wp-includes/post-template.php:定義一組模板中處理文章的函數,用於獲取 Loop 中當前文章的內容,無可執行代碼。其中的 post_password_required($post) 函式驗證來自 POST 通道的 password 。
 +
*/wp-includes/pluggable.php:這裡面的函數可以被插件覆蓋,如果插件沒有重新定義這些函數,則這些函數將會被使用,無可執行代碼。
 +
*/wp-includes/user.php:定義一組 WP 的用戶 API,無執行代碼。
 +
*/wp-login.php:登入介面
 +
===外掛===
 +
*BuddyPress:wordpress 下的社群網站外掛。在
 +
*#/wp-content/plugins/buddypress/bp-forums/bbpress/bb-includes/backpress/class.wp-pass.php 中的 hash_password($password) 和 check_password($password, $hash, $user_id) 兩函式會編碼並解碼驗證
 +
*#[https://sofree.cc/buddypress/ 如何架設BuddyPress社群網站?]
 +
*WooCommerce:wordpress 網路開店系統
 +
*#/wp-content/plugins/woocommerce/includes/class-wc-session-handler.php 中的 generate_customer_id() 函式會對 32 位隨機數字編 md5 以生成客戶 id
 +
*#/wp-content/plugins/woocommerce/includes/shortcodes/class-wc-shortcode-my-account.php  中的 retrieve_password() 和 check_password_reset_key($key, $login) 對 $wpdb->users 進行編碼和驗證
 +
*#[http://muki.tw/tech/woocommerce-install-and-use/ woocommerce 系列教學 (1/3):安裝與使用]
 +
*#[http://muki.tw/tech/woocommerce-product-online/ woocommerce 系列教學 (2/3):商品上架流程]
 +
*#[http://muki.tw/tech/woocommerce-allpay/ woocommerce 系列教學 (3/3):串接第三方金流]

2016年8月21日 (日) 18:12的最新修訂版本

Portable PHP password hashing framework

salt和password相加,又進行了count次md5,最後和encode64的hash數值累加,就得到了一個以$P$開頭的密碼

<?php
 $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用戶密碼:

  1. wp_users數據表的user_pass字段修改為32位的md5(passowrd)
  2. 當這個用戶在WordPress登錄後,系統會自動將MD5密碼修改為以$P$開頭的密碼。

全域變數

  • $wpdb
  • $wp_hasher
  • $wp_filters 所有的 filter 掛鉤

內部

WordPress核心文件功能及其載入

  • /wp-includes/post-template.php:定義一組模板中處理文章的函數,用於獲取 Loop 中當前文章的內容,無可執行代碼。其中的 post_password_required($post) 函式驗證來自 POST 通道的 password 。
  • /wp-includes/pluggable.php:這裡面的函數可以被插件覆蓋,如果插件沒有重新定義這些函數,則這些函數將會被使用,無可執行代碼。
  • /wp-includes/user.php:定義一組 WP 的用戶 API,無執行代碼。
  • /wp-login.php:登入介面

外掛