ホームページ  >  記事  >  バックエンド開発  >  WordPress でカスタム ストレージ フィールドを作成するための関連 PHP 関数の分析、_PHP チュートリアル

WordPress でカスタム ストレージ フィールドを作成するための関連 PHP 関数の分析、_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-12 09:02:45715ブラウズ

WordPressでカスタムストレージフィールドを記述するための関連PHP関数分析

WordPressのカスタムフィールドは記事のメタ情報(メタ情報)です。この機能を使用すると、記事の機能を拡張したり、WordPressプラグインを学習したりできます。 - 開発とテーマに関する基本的な知識。記事用の追加のカスタム コンテンツを簡単に保存できます。

カスタムフィールドはプラグイン開発者だけが使用するものではありません。WordPress のアイキャッチ画像、カスタムページテンプレート、その他の機能に関する情報はカスタムフィールドの形式で保存されます。

記事エディタインターフェースの「カスタム列」セクションは、名前が「_」で始まるフィールドを除くフィールドを管理できます(「カスタム列」セクションがない場合は、右上の「表示オプション」でオンにしてください)コーナー)のため、多くの WordPress ユーザーが自分でカスタムフィールドを管理することはできません。
保管原理

カスタム フィールドは非常に柔軟です。まず、そのストレージ原理とその柔軟性について説明します。データベースでは、記事を保存する wp_posts フォームにはデフォルトの 20 項目のみがあり、必要な記事情報を保存するために使用されます。

20151225143034327.png (332×620)

カスタムフィールドを格納するwp_postmetaテーブルには、meta_id(カスタムフィールドのID)、post_id(カスタムフィールドが属する記事のID)、meta_key(カスタムフィールドの名前)、meta_value(カスタムフィールド)の4つの項目のみがあります。 value))、通常は、meta_key と meta_value の 2 つの項目に注意するだけで済みます。

このため、各記事には同じ名前で異なる値のカスタム フィールドを含めることができ、任意のプラグインとテーマでカスタム フィールドを使用して記事の情報を拡張できます。

記事内のカスタムフィールドの名前は繰り返すことができます。

フィールドを追加

カスタムフィールドは記事編集ページで操作できますが、この記事は主に開発について書いています。

20151225143103462.png (832×428)

カスタムフィールドを追加するには、add_post_meta() 関数を使用できます:

リーリー

パラメータ:

$post_id

(整数) (必須) カスタムフィールドが追加される記事のID。

デフォルト値: なし

$meta_key

(文字列) (必須) カスタム フィールドの名前。

デフォルト値: なし

$meta_value

(混合) (必須) カスタムフィールドの値。

デフォルト値: なし

$ユニーク

(ブール値) (オプション) 同じ名前のフィールドがすでに存在する場合、それを繰り返し追加するかどうか。 True の場合は許可します。False の場合は許可しません。

デフォルト値: False

フィールドを更新します

フィールドの値を更新するには、update_post_meta() 関数を使用できます:

リーリー

パラメータ:

$post_id

(整数) (必須) カスタムフィールドを更新する記事の ID。

デフォルト値: なし

$meta_key

(文字列) (必須) 更新するカスタム フィールドの名前。

デフォルト値: なし

$meta_value

(混合) (必須) 更新するカスタム フィールドの値。

デフォルト値: なし

$prev_value

(混合) (オプション) このパラメーターは、投稿に同じ名前の複数のカスタム フィールドがある場合にのみ役立ちます。空白のままにすると、同じ名前を持つすべてのフィールドが更新され、それ以外の場合は、このパラメータと同じ値を持つフィールドが更新されます。

デフォルト値: 空の文字列

フィールドを取得します

フィールドを取得するには、get_post_meta() 関数を使用できます:

リーリー

パラメータ:

$post_id

(整数) (必須) 取得するフィールドの記事 ID。ループ内の場合は、get_the_ID() を使用して設定できます。

デフォルト値: なし

$キー

(文字列) (オプション) 取得するフィールドの名前。

デフォルト値: なし

$シングル

(ブール値) (オプション) True の場合は文字列を返し、False の場合は配列を返し、同じキー値を持つカスタム フィールドの値が加算順にシーケンス配列に結合されます。

デフォルト値: False

以下は閲覧統計の簡単な例です:

リーリー カウントを取得します。 リーリー

非表示のカスタムフィールド
データベースにはWordPressで作成したカスタムフィールドが多数ありますが、記事エディターの「カスタム列」には表示されません(「カスタム列」セクションがない場合は、上部の「表示オプション」をオンにしてください)右隅)、アイキャッチ画像、カスタムページテンプレート、コメントがオンになっているかどうかなど。

注意深く観察すると、これらのカスタム フィールドの名前はすべてアンダースコア「_」で始まることがわかります。したがって、アンダースコア「_」で始まるカスタム フィールドはユーザーには表示されず、the_meta() も表示されません。関数。出力はユーザーから隠されます。

20151225143222855.png (827×410)

利用这个特性,我们可以把不想让用户随便修改的字段、会让用户感到困惑的字段,比如已经提供设置界面的设置选项、缓存数据等等,以免出现错误。

下边是一个小例子:

add_post_meta( get_the_ID(), '_time_diff', time() );

另外,如果自定义字段储存的内容是数组即使名字前边不是下划线 “_” 也不会显示。

您可能感兴趣的文章:

  • WordPress判断用户是否登录的代码
  • 详解WordPress中提醒安装插件以及隐藏插件的功能实现
  • 给WordPress的编辑后台添加提示框的代码实例分享
  • 详解WordPress开发中过滤属性以及Sql语句的函数使用
  • WordPress中创建用户角色的相关PHP函数使用详解

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1084529.htmlTechArticleWordPress中编写自定义存储字段的相关PHP函数解析, WordPress 的自定义字段就是文章的 meta 信息(元信息),利用这个功能,可以扩展文章的...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。