关于可能无法显示的新闻菜单插件的Php问题

时间:2010-10-27 10:45:07

标签: php content-management-system

我自己并不是一个真正的PHP程序员,所以任何帮助都会受到赞赏。 我在cms e107上运行了一个网站。

现在我安装了一个名为“Recent news menu”的菜单插件 这将在网站上选定的菜单区域中显示最新的新闻文章。

现在我的问题是它还会显示设置为“不显示”的新闻(见图片)

alt text

有人可以帮忙解决这个问题吗?

以下是所有代码:

<?php
global $sql2, $tp;
$caption = "Recent news";
$no_news = "No news items";
$eol_separator = "</td></tr>";
$sol_separator = "<tr><td style='width:0%;text-align:left;'>";
$qry = "SELECT news_id, news_title FROM #news WHERE news_render_type = 0 ORDER BY news_id DESC LIMIT 0,5";

if($sql2->db_Select_gen($qry))
{
 $n_text = "<table style='width:100%;'>";
 while ($row = $sql2->db_Fetch())
 {
  $title = $tp->toHTML($row['news_title']);
  $n_text .=$sol_separator ."<a href='".e_HTTP."news.php?item.".$row['news_id']."'>".$title."</a>".$eol_separator;
 }
 $n_text .= "</table>";
}
else
{
 $n_text = $no_news;
}
$ns->tablerender($caption, $n_text);

1 个答案:

答案 0 :(得分:1)

由于这个插件的代码一般看起来不太好,我猜你可能不想使用这个插件并寻找更好的插件...但是如果你想使用这个插件你可以调整数据库查询,以便不选择要显示的项目。像这样:

$qry = "SELECT news_id, news_title 
        FROM #news 
        WHERE news_render_type = 0 
            AND display = 1
        ORDER BY news_id DESC 
        LIMIT 0,5";

根据显示信息的存储方式,您可能需要将其设为AND display > 0