使用短代码从数据库中检索数据

Retrieve Data from Database using Shortcode

我正在尝试使用我发现的短代码函数从 wordpress table 检索数据。它工作并检索所有列的数据。当我尝试指定我想要的列时,它仍然会给我所有内容。最终我想要做的是检索我想要的列的数据并使用 css(不是 table 格式)为该数据设置样式。我是 php 的新手,所以我想知道是否有人可以让我知道是否可以使用简码。如果可能的话,我们将不胜感激。提前谢谢你,兰迪

这是我使用的代码:

if ( !defined( 'WP_FD_ABSPATH' ) )

define( 'WP_FD_ABSPATH', plugin_dir_path( __FILE__ ) );

function wp_first_shortcode($atts){
global $wpdb;
$a = shortcode_atts( array(
'table_name' => ",
'columns' => ",
), $atts );
$showcolumns=array();
if($a['columns']!=""){
$column=$a['columns'];
$showcolumns=explode(',',$a['columns']);
}
else{
$column='*';
$get_columns=$wpdb->get_results("describe ".$a['table_name']."");
foreach($get_columns as $fields) $showcolumns[]=$fields->Field;
}

$columncount=count( $showcolumns);

$result_query=$wpdb->get_results( "select $column from ".$a['table_name']."");
echo '<table><tr>';
for($i=0;$i<$columncount;$i++) echo '<th>'.$showcolumns[$i].'</th>';
echo '</tr>';
foreach($result_query as $result_row){
echo '<tr>';
for($i=0;$i<$columncount;$i++) echo '<td>'.$result_row->$showcolumns[$i].'</td>';
echo '</tr>';
}
echo '</table>';
}
add_shortcode('fetchdata', 'wp_first_shortcode');
function table_value_function() {
query_value(array('orderby' => 'date', 'order' => 'DESC' , 'showvalues' => ""));
wp_reset_query();
return $return_string;
}
?>

这是我使用的简码:

[fetchdata table_name='my_wp_table' columns ='Display_Name' 'First_Name' 'Last_Name' 'Address_1' 'Address_2' 'City' 'State' 'Phone']

好的,我想你只是想去掉 table,因为你想用 CSS 来设计它的样式。请按照以下代码:

echo '<div class="something">';
for($i=0;$i<$columncount;$i++) echo '<h1>'.$showcolumns[$i].'</h1>';

foreach($result_query as $result_row){
echo '<div class="something_2">';
for($i=0;$i<$columncount;$i++) echo '<p>'.$result_row->$showcolumns[$i].'</p>';
echo '</div>';
}
echo '</div>';
}

希望对你有帮助。