討論:Wordpress/目錄與檔案:修訂版本之間的差異
出自福留子孫
(→全域變數) |
|||
| (未顯示同用戶所作出之3次版本) | |||
| 第 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 下的社群網站外掛。在 | *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) 兩函式會編碼並解碼驗證 | *#/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用戶密碼:
- wp_users數據表的user_pass字段修改為32位的md5(passowrd)
- 當這個用戶在WordPress登錄後,系統會自動將MD5密碼修改為以$P$開頭的密碼。
全域變數
- $wpdb
- $wp_hasher
- $wp_filters 所有的 filter 掛鉤
內部
- /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) 兩函式會編碼並解碼驗證
- 如何架設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 進行編碼和驗證
- woocommerce 系列教學 (1/3):安裝與使用
- woocommerce 系列教學 (2/3):商品上架流程
- woocommerce 系列教學 (3/3):串接第三方金流