代码之家  ›  专栏  ›  技术社区  ›  Terri McKee

从数据库加载到WordPress页面

  •  2
  • Terri McKee  · 技术社区  · 11 年前

    我正在尝试将不同年份的内容(从我的数据库)加载到页面中。

    $yearQuery = mysql_query("SELECT DISTINCT YEAR(startDate) AS year FROM series ORDER BY startDate DESC");
    
    if(mysql_num_rows($yearQuery) > 0) {
        while($year = mysql_fetch_assoc($yearQuery)) {
            echo "<li><a href='/teaching/podcasts?year=".$year['year']."'>".$year['year']."</a></li>";
        }
    }
    else {
        echo "<li>".mysql_error()."</li>";
    }
    

    我已经成功地完成了这项工作:

    while($yearSeries = mysql_fetch_assoc($yearSeriesQ)) {
        echo "<div class='prevSermon'>";
            echo "<div class='prevImage'>";
                echo "<a href='/teaching/podcasts?id=".$yearSeries['id']."'><img height='90' width='90' alt='".$yearSeries['title']."' src='/admin/".$yearSeries['image']."'/></a>";
            echo "</div>";
            echo $yearSeries['title'];
        echo "</div>";
    }
    

    它显示了前一系列中的几周。

    这些年我做错了什么 bottom right hand side ?

    1 回复  |  直到 11 年前
        1
  •  1
  •   Matthew R.    11 年前

    在Wordpress中,您不必像现在这样进行原始SQL查询。有几种方法可以获得更安全的帖子。你应该尝试使用 get_posts WP_Query 并准确地传递你获得帖子所需的论据。这也会将帖子作为一个对象返回,您可以运行该对象 setup_postdata 打开并使用Wordpress魔术功能,如 the_title() the_content() .

    使用这种方法,您应该能够准确定位您需要的帖子。只需将它们与法典中与您的具体案例相关的论点进行比较。注意,您也可以像在原始SQL中一样执行元查询和联接。