我不知道你是否已经找到了这个问题的答案,因为它来自2011年,但我对如何检索数据有一个想法。
如果您创建了一个非常简单的php文件,将post ID作为get变量并显示post的自定义字段,会怎么样?
它看起来像这样:
<?php
require_once($_SERVER[\'DOCUMENT_ROOT\'] . \'/wp-load.php\');
$post_ID = $_GET[\'id\'];
$custom = get_post_custom($post_ID);
foreach ($custom as $key => $value) {
if (($key != \'_edit_lock\' && $key != \'_edit_last\'))
echo \'<tr><td>\' . $key . \'</td><td>\' . $value[0] . \'</td></tr>\';
}
?>
这将创建一个包含名称(自定义字段名称)和值(自定义字段值)的表。如果不想使用表,当然可以根据需要格式化内部位。我只是想让你走上正轨。另外,请注意
if
声明在那里。我确信您不想输出编辑锁定值或最后一个编辑值。
现在,了解如何从页面中获取此信息:
首先,您需要创建一个显示信息的按钮。
<a href="<?php echo bloginfo(\'template_directory\'); ?>/custom-field-provider.php?id=<?php echo $post->ID; ?>" class="show-more">See More Information</a>
还有一个框,显示您将在其中使用AJAX的内容:
<div id="more-information-box" style="display: none;"></div>
你会想在这里编一些很酷的jQuery小玩意儿。
$(document).ready(function () {
$(\'.show-all\').on(\'click\', function (e) {
// Since we\'re already passing the data through the link, we don\'t need to do anything else. Just pull the url from the link.
var url = $(this).attr(\'href\');
// A simple jQuery.get function to get the data from the php script we wrote earlier
$.get(url, function (data) {
$(\'#more-information-box\').hide().empty().append(data).fadeIn(500);
});
// And stop the link from actually going to the page.
e.preventDefault();
return false; // Better safe than sorry, right?
});
});
这应该能帮到你。
我知道这有点冗长,但我真的想覆盖所有的基地。我希望这对你有帮助。