我希望在我的创世记儿童主题中添加一个自定义元框,以获得一些帮助。
数据被正确地保存和存储,但当我尝试使用get\\u post\\u meta将其回显时,什么都没有显示。但有人向我展示的自定义函数确实会响应它。有人能找出它不起作用的地方吗?
这应该可以,但不行。
add_action (\'genesis_before_post_content\', \'gteh_tagline\');
function gteh_tagline() {
$meta = get_post_meta($post->ID, $field[\'dbt_text\'], true);
echo $meta;
}
这是可行的,但我不想使用它,而是使用正确的代码
add_action (\'genesis_before_post_content\', \'gteh_tagline\');
function gteh_tagline() {
echo "<pre>";
$customs = get_post_custom(get_the_ID());
$text = (isset($customs[\'dbt_text\'][0]))?$customs[\'dbt_text\'][0]:"";
var_dump($customs);
echo "<br/>text=".$text;
echo "</pre>";
}
当被问及这个问题时,它会将其转储并进行回应。
["dbt_text"]=>
array(1) {
[0]=>
string(89) "At vero eos et accusamus et iusto odio dignityr simos ducimus qui blanditiis praesentium "
}
这里是dbt\\U文本
$prefix = \'dbt_\';
$meta_box = array(
\'id\' => \'my-meta-box\',
\'title\' => \'Post Tagline\',
\'page\' => \'post\',
\'context\' => \'normal\',
\'priority\' => \'high\',
\'fields\' => array(
array(
\'name\' => \'Post Tagline\',
\'desc\' => \'Displayed below the post title\',
\'id\' => $prefix . \'text\',
\'type\' => \'text\',
\'std\' => \'\'
)
)
);
SO网友:s_ha_dum
第二个代码块没有“不当”之处。它只是为了调试而写的。关键的区别在于第二个块get_the_ID()
. 试试看。
add_action (\'genesis_before_post_content\', \'gteh_tagline\');
function gteh_tagline() {
$meta = get_post_meta(get_the_ID(), $field[\'dbt_text\'], true);
echo $meta;
}
或者试着拉进去
$post
具有
global
.
add_action (\'genesis_before_post_content\', \'gteh_tagline\');
function gteh_tagline() {
global $post;
$meta = get_post_meta($post->ID, $field[\'dbt_text\'], true);
echo $meta;
}
或者,根据动作的编写方式
might 工作
add_action (\'genesis_before_post_content\', \'gteh_tagline\');
function gteh_tagline($post) {
$meta = get_post_meta($post->ID, $field[\'dbt_text\'], true);
echo $meta;
}