wp postmeta儲存自定義資料

2021-10-08 22:24:30 字數 1598 閱讀 5258

我們進行 wordpress 主題外掛程式開發的時候,肯定會儲存一些自定義的資料,比如主題的設定資訊、**的 banner 幻燈片等,這時候我們就需要了解下 wordpress 的資料庫結構

wordpress預設有12張資料表,預設表字首為「wp」,wp_postmeta資料表是wp用來儲存使用者的額外資訊,wp_postmeta用來儲存文章的一些額外資訊,都是用鍵值對的方式

欄位名型別

注釋meta_id

bigint(20)

wp_postmeta表id

post_id

bigint(20)

對應wp_posts表中的id

meta_key

varchar(255)

儲存鍵名

meta_value

longtext

儲存鍵值

你會發現 wordpress 有很多個 meta 表,wp_post_meta 儲存文章的擴充套件內容,wp_user_meta 儲存使用者的擴充套件資訊等等,預設的 wordpress 好像是沒有 wp_comment_meta 這個表,是 akismet 外掛程式來新增的,不過正常情況下 wp_comment 表也是夠用了。

好了回到正題,我們應該如何保持我們自定義的資料,大致有一下的幾種方法:

如果你的資料是唯一,且編輯後不會經常修改,那麼你可以儲存在 wordpress 的選項表裡面,wordpress 提供了 options 系列函式,把資料以 $key => $value 對的形式,儲存到 wp_options 表中。這種方法適合儲存一些字典型別的資料,比如外掛程式的配置資訊等。

如果你的主題為文章設定了一些單獨的屬性,比如一篇的分享量,那麼推薦你將資料儲存在 wp_post_meta 中,wordpress 也同樣提供了相關的函式去訪問、更新、編輯這些資料,同理使用者表也可以這樣儲存資料。

wordpress 的分類表稍微複雜些,以前的版本預設又三個表來儲存分類和標籤,最近的版本又新增了乙個 wp_term_meta 表來儲存一些附加的資訊,用法基本一致。

自己建立表就需要使用 wordpress 資料庫類物件 $wpdb ,這是乙個全域性物件,所以在 wordpress 可以直接使用,但是如果在乙個函式中,這個類物件的引用方式如下:

function sample_function()
function sample_function()

$wpdb 類是乙個有著許多功能的非常強大的類。可以開啟**  檢視其更多說明。中文翻譯文件位址 

$wpdb->query()

$wpdb->get_var()

$wpdb->get_row()

$wpdb->get_col()

$wpdb->get_results()

$wpdb->insert()

$wpdb->update()

$wpdb->get_col_info()

$wpdb->flush()

$wpdb->show_errors()

$wpdb->hide_errors()

$wpdb->print_error()

這裡主要是如果使用者把錶字首修改了,你就無法得知 使用者具體的表名,不過通過 $wpdb 方法可以直接返回要操作的表名。

Unity 自定義日誌儲存

using unityengine using system.io using system using system.diagnostics using debug unityengine.debug public class debugtrace return m instance endreg...

自定義 如何自定義協議

何為自定義協議,其實是相對標準協議來說的,這裡主要針對的是應用層協議 常見的標準的應用層協議如http ftp smtp等,如果我們在網路通訊的過程中不去使用這些標準協議,那就需要自定義協議,比如我們常用的rpc框架 dubbo,thrift 分布式快取 redis,memcached 等都是自定義...

自定義控制項 自定義鐘錶

private context mcontext 畫筆 private paint mpaint 控制項的寬 private int mwidth x方向的圓心座標 private int center 鐘錶的半徑 private int mradio 圓環的寬 private int stroke...