如何显示get_post_meta值保存复选框

时间:2015-08-08 13:21:09

标签: wordpress checkbox

如何显示已保存的复选框值或如果未在wordpress中保存;

示例:

<?php
if($field_name_21=="bathrooms") echo 'Yes have bathrooms';
else { echo 'No have bathrooms; }
if($field_name_21=="wc") echo 'Yes have wc';
else { echo 'No have wc; }
?>

1 个答案:

答案 0 :(得分:0)

对不起,我还不清楚您的数据存储方式。我可以看到三种可能性;如果这些都不适用于您的情况,请告诉我我哪里出错了。

选项1

每个属性都有一个元值(例如&#34; wc&#34;存储的meta_value为field_name_1,&#34;浴室&#34;存储在meta_value为{{ 1}},等等。)

field_name_2

选项2

您有一个元值(例如,称为<?php $field_descriptions = array( 'field_name_1' => 'wc', 'field_name_2' => 'bathrooms', 'field_name_3' => 'bedrooms' ); foreach ($field_descriptions as $field_name => $description) { $value = get_post_meta( $post->ID, $field_name, true); if ($value) { echo 'Yes have ' . $description; } else { echo 'No have ' . $description; } } ?> ),它可以在其中存储多个值,由分隔符(例如field_name)分隔。例如,存储的值可能看起来像|。这似乎不太可能,因为您的问题提到了已保存的复选框,但根据您的评论,它可能就是您正在做的事情。

wc|bedrooms

选项3

你有一个元值(例如名为<?php $possible_values = array('wc', 'bathrooms', 'bedrooms'); $stored_values = explode('|', get_post_meta( $post->ID, 'field_name', true)); foreach ($possible_values as $possible_value) { if (in_array($possible_value, $stored_values)) { echo 'Yes have ' . $possible_value; } else { echo 'No have ' . $possible_value; } } ?> ),它可以有&#34; wc&#34;,或者&#34;浴室&#34;或者&#34;卧室&#34 ;。这似乎不太可能,但我将其包括在内是为了完整性。

field_name