它不会显示为表,因为您没有返回正确的HTML代码。让我们看看您的代码(我在不正确的行末尾添加了注释):
$content = \'<table>\';
$content .= \'</tr><th>Week Beginning</th><th>Monday</th><th>Tuesday</th><th>Wednesday</th><th>Thursday</th><th>Friday</th><th>Saturday</th><th>Sunday</th><th>Weekly Total</th><th>Previous Week Totals</th></tr>\'; // <- here you open TR with </tr>, so it\'s already incorrect
$results = $seconddb->get_results( \' SELECT * FROM seconddb_PontoonBoats_LineOne_2Log\' );
foreach ( $results AS $row ) {
$content = \'<tr>\'; // <- here you overwrite previous value of $content with string \'<tr>\'
// Modify these to match the database structure
$content .= \'<td>\' . $row->{\'Week Beginning\'} . \'</td>\';
$content .= \'<td>\' . $row->Monday . \'</td>\';
$content .= \'<td>\' . $row->Tuesday . \'</td>\';
$content .= \'<td>\' . $row->Wednesday . \'</td>\';
$content .= \'<td>\' . $row->Thursday . \'</td>\';
$content .= \'<td>\' . $row->Friday . \'</td>\';
$content .= \'<td>\' . $row->Saturday . \'</td>\';
$content .= \'<td>\' . $row->Sunday . \'</td>\';
$content .= \'<td>\' . $row->{\'Weekly Total\'} . \'</td>\';
$content .= \'<td>\' . $row->{\'Previous Week Totals\'} . \'</td>\';
$content .= \'</tr>\';
}
$content .= \'</table>\';
因此,如果没有行(这是不正确的HTML),您的函数将返回如下内容:
<table>
</tr><th>Week Beginning</th><th>Monday</th><th>Tuesday</th><th>Wednesday</th><th>Thursday</th><th>Friday</th><th>Saturday</th><th>Sunday</th><th>Weekly Total</th><th>Previous Week Totals</th></tr>
</table>
类似于这样,如果找到任何行:
<tr>
<td><VALUE FOR: $row->{\'Week Beginning\'}></td>
<td><VALUE FOR: $row->Monday></td>
<td><VALUE FOR: $row->Tuesday></td>
<td><VALUE FOR: $row->Wednesday></td>
<td><VALUE FOR: $row->Thursday></td>
<td><VALUE FOR: $row->Friday></td>
<td><VALUE FOR: $row->Saturday></td>
<td><VALUE FOR: $row->Sunday></td>
<td><VALUE FOR: $row->{\'Weekly Total\'}></td>
<td><VALUE FOR: $row->{\'Previous Week Totals\'}></td>
</tr>
</table>
下面是该函数的固定版本:
function pontoon_table_shortcode( $args ) {
global $seconddb;
// Shortcodes RETURN content, so store in a variable to return
$content = \'<table>\';
$content .= \'<tr><th>Week Beginning</th><th>Monday</th><th>Tuesday</th><th>Wednesday</th><th>Thursday</th><th>Friday</th><th>Saturday</th><th>Sunday</th><th>Weekly Total</th><th>Previous Week Totals</th></tr>\';
$results = $seconddb->get_results( \' SELECT * FROM seconddb_PontoonBoats_LineOne_2Log\' );
foreach ( $results AS $row ) {
$content .= \'<tr>\';
// Modify these to match the database structure
$content .= \'<td>\' . $row->{\'Week Beginning\'} . \'</td>\';
$content .= \'<td>\' . $row->Monday . \'</td>\';
$content .= \'<td>\' . $row->Tuesday . \'</td>\';
$content .= \'<td>\' . $row->Wednesday . \'</td>\';
$content .= \'<td>\' . $row->Thursday . \'</td>\';
$content .= \'<td>\' . $row->Friday . \'</td>\';
$content .= \'<td>\' . $row->Saturday . \'</td>\';
$content .= \'<td>\' . $row->Sunday . \'</td>\';
$content .= \'<td>\' . $row->{\'Weekly Total\'} . \'</td>\';
$content .= \'<td>\' . $row->{\'Previous Week Totals\'} . \'</td>\';
$content .= \'</tr>\';
}
$content .= \'</table>\';
// return the table
return $content;
}