首页 > 代码库 > phpcms v9栏目列表调用每一篇文章内容方法1

phpcms v9栏目列表调用每一篇文章内容方法1

我们先来看下默认栏目调用的代码:


复制代码代码如下:
{pc:content action="lists" catid="$catid" num="25" order="id DESC" page="$page"}
<ul class="list lh24 f14">
{loop $data $r}
<li><span class="rt">{date(‘Y-m-d H:i:s‘,$r[inputtime])}</span>·<a href="http://www.mamicode.com/{$r[url]}" target="_blank"{title_style($r[style])}>{$r[title]}</a></li>
{if $n%5==0}<li class="bk20 hr"></li>{/if}
{/loop}
</ul>
<div id="pages" class="text-c">{$pages}</div>
{/pc}

可以看出,这里调用了文章标题、网址、发布时间、列表分页,那么文章内容怎么调用?

这样想,是否可以用moreinfo="1",然后在loop里边调用{$r[content]}实现?答案是否定的,因为看数据库结构就知道:content和title都不在一个表里边,于是调不出来。
看下面的调用代码方式:


复制代码代码如下:
{pc:content action="lists" catid="$catid" num="25" order="id DESC" page="$page" moreinfo="1"}
<ul class="list lh24 f14">
{loop $data $r}
<li><span class="rt">{date(‘Y-m-d H:i:s‘,$r[inputtime])}</span>·<a href="http://www.mamicode.com/{$r[url]}" target="_blank"{title_style($r[style])}>{$r[title]}</a>
<?php $id = $r[‘id‘];
$sql = "SELECT `content` FROM `cmsyou_news_data` WHERE `id`=‘$id‘ LIMIT 0 , 1";
$query = mysql_query($sql);
while($row=mysql_fetch_array($query)){
echo $row[content];
}
?>
</li>
{if $n%5==0}<li class="bk20 hr"></li>{/if}
{/loop}
</ul>
<div id="pages" class="text-c">{$pages}</div>
{/pc}

其中,下面这段代码调用了对应的Content:


复制代码代码如下:
<?php $id = $r[‘id‘];
$sql = "SELECT `content` FROM `cmsyou_news_data` WHERE `id`=‘$id‘ LIMIT 0 , 1";
$query = mysql_query($sql);
while($row=mysql_fetch_array($query)){
echo $row[content];
}
?>

是直接用SELECT调用指定数据表的对应id内容。大家不放举一反三,多做尝试!有不同的方法欢迎留言探讨!

phpcms v9栏目列表调用每一篇文章内容方法1