我试着在Wordpress stackoverflow上发布这篇文章,但是没有得到任何答案。
这是PHP + Wordpress的问题,也许有人能帮上忙。
好的,我正在使用user_meta数组为一个用户构建一个"Transactions“表。
我是个新手,正在尝试弄清楚这些事情。
基本上,在实践中我知道如何将数组存储到user_meta。
$the_meta_array = array (
'type' => 'value-1',
'amount' => 'value-2',
'date' => 'value-3',
'method' => 'value-4',
'status' => 'value-5',
);
$user_id = 12345;
$user_meta_key = 'transactions';
add_user_meta( $user_id, $user_meta_key, $the_meta_array );我的问题是如何以这样的表格式显示该特定用户的“事务”meta_key:
-----------------------------------------------------
type | amount | date | method | status
-----------------------------------------------------
deposit | $15 | 2021,09,18 | Paypal | done
-----------------------------------------------------
deposit | $35 | 2021,09,14 | Paypal | done
-----------------------------------------------------
cashout | $25 | 2021,09,11 | Paypal | done是否可以将meta_key数组显示为循环?
不知道如何实际做到这一点。
我知道这应该是有可能的。
任何帮助都将不胜感激。
发布于 2021-09-08 12:23:50
1-使用get_users函数获取所有用户:
$args = array(
'fields' => array('ID')
);
$users = get_users($args);2-为具有事务数据的用户创建一个空数组:
$users_with_transaction = array();3-遍历所有用户,挑选出具有事务数据的用户,然后使用array_push填充$users_with_transaction数组:
foreach ($users as $user) {
$users_transaction = (get_user_meta($user->ID, 'transactions'));
if ($users_transaction) {
array_push($users_with_transaction, $users_transaction);
}
}4-创建您的表结构并通过循环遍历$users_with_transaction数组来填充它:
<table>
<thead>
<tr>
<td>type</td>
<td>amount</td>
<td>date</td>
<td>method</td>
<td>status</td>
</tr>
</thead>
<tbody>
<?php foreach ($users_with_transaction as $user_data) { ?>
<tr>
<?php foreach ($user_data[0] as $data_key => $data_value) { ?>
<td><?php echo $data_value; ?></td>
<?php } ?>
</tr>
<?php } ?>
</tbody>
</table>它将输出以下内容:

然后,您可以使用css设置表的样式。
这是一个带有内联css的表格结构示例,它给出了表格行的边框:
<table style='border-collapse:collapse'>
<thead>
<tr>
<td style="border: 1px solid black;">type</td>
<td style="border: 1px solid black;">amount</td>
<td style="border: 1px solid black;">date</td>
<td style="border: 1px solid black;">method</td>
<td style="border: 1px solid black;">status</td>
</tr>
</thead>
<tbody>
<?php
foreach ($users_with_transaction as $user_data) { ?>
<tr>
<?php
foreach ($user_data[0] as $data_key => $data_value) {
?>
<td style="border: 1px solid black;"><?php echo $data_value; ?></td>
<?php
} ?>
</tr>
<?php
}
?>
</tbody>
</table>它将输出以下内容:

https://stackoverflow.com/questions/69101849
复制相似问题