如何在wordpress中显示数据库中的数据?

时间:2015-02-18 11:56:20

标签: php database wordpress mysqli wp-query

我正在尝试在WordPress中添加以下代码,但我找不到正确的方法来执行此操作。请帮帮我...

<?php
include("config.php");
$results = $mysqli->query("SELECT COUNT(*) as t_records FROM wp_posts");
$total_records = $results->fetch_object();
$total_groups = ceil($total_records->t_records/$items_per_group);
$results->close(); 
?>

如果我在WordPress之外使用它,它的工作非常好。但我不知道在我的WordPress index.php

中实现这一点

我的主题中有很多代码,所以我无法为您提供索引页面的确切代码。但这里是主要的index.php文件代码

<?php

$is_filterable_index = is_home() && x_get_option( 'x_ethos_filterable_index_enable', '' ) == '1';

?>

<?php get_header(); ?>

  <div class="x-container-fluid max width main">

    <?php x_get_view( 'ethos', '_post', 'slider' ); ?>

    <div class="offset cf">
      <div class="<?php x_main_content_class(); ?>" role="main">

        <?php if ( $is_filterable_index ) : ?>
          <?php x_get_view( 'ethos', '_index' ); ?>
        <?php else : ?>
          <?php x_get_view( 'global', '_index' ); ?>          
        <?php endif; ?>
<?php /*?>         
<?php */?>      </div>
      <?php get_sidebar(); ?>

    </div>       
  </div>  

<div id="content"></div>


<?php get_footer(); ?>

5 个答案:

答案 0 :(得分:0)

使用$wpdb

<?php
global $wpdb;
$total_records = $wpdb->get_var("SELECT COUNT(*) as t_records FROM $wpdb->posts");
$total_groups = ceil($total_records/$items_per_group);
?>

根据您对结果的要求,有多种方法(例如,如果有多个行或列,则不会使用get_var

我使用$wpdb->posts代替wp_posts,以防有人更改表格前缀(例如在wp-config.php中)。

答案 1 :(得分:0)

WordPress定义了一个名为wpdb的类,它包含一组用于与数据库交互的函数。

global $wpdb; //global connection object 
$results = $wpdb->get_var( "SELECT COUNT(*) as t_records FROM wp_posts" ); // The get_var function returns a single variable from the database
$total_groups = ceil($results->t_records/$items_per_group);

check

答案 2 :(得分:0)

使用全局Wordpress数据库对象

global $wpdb;

$total_groups = $wpdb->get_var("SELECT COUNT(*) as t_records FROM wp_posts");

答案 3 :(得分:0)

您应该使用Wordpress数据库连接。试试这个简单的代码并根据您的需要进行调整。

global $wpdb;
$query = "SELECT COUNT(*) as t_records FROM wp_posts";
$result = $wpdb->get_results($query);
var_dump($result);

http://codex.wordpress.org/Class_Reference/wpdb

答案 4 :(得分:0)

这样做的正确方法是使用wordpress post meta.Post meta是专为此类内容而构建的。所有验证和安全功能都由这些功能处理,因此您不必担心任何事情。你所要做的就是

获得价值

<?php $meta_values = get_post_meta( $post_id, $key, $single ); ?>

创建/更新价值

<?php update_post_meta($post_id, $meta_key, $meta_value, $prev_value); ?>

删除价值

 <?php delete_post_meta($post_id, $meta_key, $meta_value); ?> 

同样,您也可以为用户提供元值函数。查看手抄本以获取更多信息,