$wpdb->options
從何而來?
我看不到$wpdb-options()
函數或$this->options
那麼這是如何實現的?
$wpdb->options
從何而來?
我看不到$wpdb-options()
函數或$this->options
那麼這是如何實現的?
$wpdb->options
是對象$wpdb
(它是類wpdb
的一個實例)的一個屬性。
它的值是數據庫中選項表的名稱,通常爲wp_options
。
我認爲人們正在努力理解你的問題。也許提供更多的細節或上下文。
如果您詢問選項最初是從哪裏來的,那麼答案是它們是在安裝期間和WP Admin頁面中設置的。然後將它們存儲在數據庫的wp_options表中,並在Wordpress加載時檢索到$ wpdb-> options變量,該變量是$ wpdb對象的成員。
葉,但文件中的$ wpdb-options在哪裏?它在哪裏定義,不是它做了什麼,而是它在哪裏? – Yikes 2010-05-30 18:59:44
哦,你可能不會在所有選項被定義的地方找到一個地方。每個選項都有一個鍵(字符串)和一個值。代碼中的不同位置將向DB查詢與特定鍵相關的值。在「functions.php」中有一個函數「get_option」用於執行此操作。它查詢由$ wpdb-> options指定的表名。請注意,插件也使用wp_options表來存儲內容。 – Greg 2010-05-30 19:07:07
我怎麼能達到同樣的事情? – Yikes 2010-05-30 19:19:54
好的,這裏是一個完整澄清的混亂,我可以看到這裏。
$wpdb
是查詢數據庫的對象。 $wpdb->options
屬性僅僅是數據庫中選項表的名稱。它確實不是存儲也不包含該表的內容。
WordPress的選項(或設置)被存儲,更新,以及使用該函數分別add_option()
,update_option()
和get_option()
讀取。
您還可以使用get_alloptions()
獲得全部選項。
您應該使用$ wpdb屬性來引用SQL查詢中的表的原因是表前綴是用戶定義的,並且您不能認爲它始終被稱爲「wp_tablename」。
$wpdb->options
通過wp_set_wpdb_vars()
在wp-includes/load.php
中定義。
該行通過調用設置表名的set_prefix功能:
$prefix = $wpdb->set_prefix($table_prefix);
希望這有助於!
那麼$ wpdb-> options定義在哪裏? – Yikes 2010-05-30 18:30:13
我seee,謝謝:) – Yikes 2010-05-30 21:36:59
你知道它在哪裏定義? – Yikes 2010-05-30 21:37:21