我当前正在使用高级自定义字段创建自定义字段has_the_portrait_sold
这将显示在我的Prettypto/Lightbox项目上。
但是,当我使用示例中的PHP时(正确或错误):
if(get_field(\'has_the_portrait_sold\')){
echo "The item has been sold.";
}else{
echo "The item has not been sold";
}
在标题中。php:
<script type text/javascript>
jQuery(document).ready(function($) {
$("a[href$=\'.jpg\'], a[href$=\'.jpeg\'],
a[href$=\'.gif\'], a[href$=\'.png\']").prettyPhoto({
theme: \'dark_square\',
show_title: true, /* true/false */
social_tools: \'<?php the_title(); ?> <?php
if(get_field(\'has_the_portrait_sold\')){
echo "do something";
}else{
echo "do something else";
}
?>\'
});
});
</script>
然而,尽管这可能会根据需要在lightbox中包含自定义字段,但它显然只显示当前页面的自定义字段数据。我需要为当前lightbox项目/WordPress的图像附件打印自定义字段数据。
因此,我尝试在post-template.php
. 请注意我的PHP技能是有限的,我非常决心使这项工作。
return apply_filters( \'wp_get_attachment_link\', "<a title=\'$post_title\'
href=\'$url\'>$link_text</a><?php
if(get_field(\'has_the_portrait_sold\')){
echo "do something";
}else{
echo "do something else";
}
?>", $id, $size, $permalink, $icon, $text );
}
我觉得我在包含自定义字段调用方面走的是正确的道路
post-template.php
. 然而,我只是不具备创建正确调用所需的PHP技能。我想知道这里是否有人能帮忙。我很绝望,但不愿意放弃。提前谢谢。
最合适的回答,由SO网友:SickHippie 整理而成
第一件事第一-YOU ARE NOT ON THE RIGHT PATH IF YOU ARE MODIFYING CORE FILES. 如果它不在wp-content
, DO NOT MODIFY IT, 尤其是如果你可以诚实地说“我只是没有XXXX所需的PHP技能”。STAY OUT OF CORE FILES, PERIOD. 我不是在刻薄,我是在为你省去每次WordPress更新时丢失更改的麻烦,以及WordPress开发人员的愤怒。
你这样做会有问题的。听上去,你想打电话get_field()
在循环外部的标题中,但不知何故希望它知道它在循环中的位置。
一些可能有用的解释:自定义字段附加到特定页面/帖子(如您所知)。这意味着get_field()
将根据中的当前对象返回值$post
- 在标题中,这是当前页面。不确定对象在$post
是否在任何给定点?在您想知道的地方使用此代码块:
<pre>
<?php print_r($post); ?>
</pre>
您也可以交换
$post
具有
$post->ID
查看它正在处理哪个帖子(尤其对于查看循环中的帖子非常有用)。
因此,您需要通过检查循环来注册一件物品是否售出,然后可能会将CSS类附加到循环中的输出,并使用CSS显示/隐藏该位。
如果您试图通过挂接到一个函数(例如,对于附件重写),那么将该挂接放在functions.php
. 您可以在中修改或重写核心函数functions.php
使用过滤器和挂钩-查看Codex以了解更多信息。