Две важные вещи:
1 ° ваши данные не возвращались, потому что вы не передали префикс таблицы, то есть имя таблицы было неверным. Пример «users» - это правильный «wp_users» или префикс, который вы использовали при создании в базе данных. Вы можете использовать переменную $ wpdb-> users , которая будет автоматически возвращать ее с префиксом, который вы зарегистрировали в wp
2 ° , шорткоды всегда должны заканчиваться на вернуть а не в эхо . Я оставил вам пример вызова php вручную, если вы хотите его использовать. но вы можете использовать его прямо в редакторе, просто вызывая шорткод:)
Если мой ответ вам поможет. Проголосуйте и поставьте правильный ответ, чтобы закрыть этот вопрос:)
<?php
/**
* Plugin Name: Member Details
* Plugin URI: https://mysite.co.za
* Description: All Member Details List
* Version: 1.0
* Author: Empire Investment
* Author URI: https://mysite.co.za
*/
function custom_view() {
global $wpdb;
$output .= '<table>
<tr>
<th>Name</th>
<th>Email</th>
<th>Bank</th>
<th>Account Number</th>
<th>Deposited Amount</th>
<th>Deposit Date</th>
<th>Period [Days]</th>
</tr>';
$results = $wpdb->get_results("select * from $wpdb->users");
foreach( $results as $user_data) {
// $roi = $user_data->amount * $user_data->period;
// $amount_growth = $roi - $user_data->amount;
$output .= "<tr>
<td>$user_data->user_nicename</td>
<td>$user_data->user_email</td>
<td>$user_data->bank</td>
<td>$user_data->account_num</td>
<td>$user_data->amount</td>
<td>$user_data->deposit_date</td>
<td>$user_data->period</td>
<td></td>
<td></td>
</tr>";
}
$output .= '</table>';
return $output;
}
add_shortcode('views', 'custom_view');
//example usae with php
echo do_shortcode( $content, '[custom_view]' );