<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>liuxq&#039;s blog &#187; 分页</title>
	<atom:link href="http://www.liuxq.cn/tag/%e5%88%86%e9%a1%b5/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.liuxq.cn</link>
	<description>从今天开始，坚定不移地做个优秀的人！</description>
	<lastBuildDate>Wed, 28 Jul 2010 17:16:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>解决PHPCMS2008内容页分页[page]的问题</title>
		<link>http://www.liuxq.cn/2010/01/534/</link>
		<comments>http://www.liuxq.cn/2010/01/534/#comments</comments>
		<pubDate>Tue, 19 Jan 2010 16:07:38 +0000</pubDate>
		<dc:creator>liuxq</dc:creator>
				<category><![CDATA[CMS|CSS]]></category>
		<category><![CDATA[phpcms2008]]></category>
		<category><![CDATA[[page]]]></category>
		<category><![CDATA[分页]]></category>

		<guid isPermaLink="false">http://www.liuxq.cn/?p=534</guid>
		<description><![CDATA[这个问题我原来以为是没有的,但后来经过测试发现在PHPCMS2008各个版本中都存在,当然此问题仅当内容页URL为动态时才会发现,如果为静态生成的话则不会有此问题.
我先大体说一下这个[page]出问题的情景:
比如以下为两份内容的源代码
内容A:解决PHPCMS2008内容页分页[page]解决PHPCMS2008内容页分页[page]解决PHPCMS2008内容页分页
内容B:[page]解决PHPCMS2008内容页分页[page]解决PHPCMS2008内容页分页[page]解决PHPCMS2008内容页分页
大家认真看内容A和内容B,其实他们在URL动态打开时的分页总数是一样(分页数量没有错误),但是在内容分页第1页显示的内容就不一样了,内容A是可以正常显示第1页的;而内容B的第1页则显示为空白,到第2页才显示第1页的内容.这就是今天要解决的问题(注:经测试,此问题在静态生成时不存在).
现在我们仔细观察上面内容A和内容B的不同之处,发现内容B中[page]有3个,而且第1个是在具体内容的前面,问题就在这里.
按照官方程序的设计来说,正确的分页代码插入应该是:内容[page]内容[page]内容.所以大家要熟记这个分页插入规则,不要把[page]放到具体内容的前面.
那有没有办法,兼容这两种情况呢.当然可以.只要对show.php这个文件进行些许修改即可.以下winliuxq(liuxq.cn)就向大家提供兼容解决方案:
打开根目录的show.php
1.找到"$contents = array_filter(explode('[page]', $content));",在其下面添加两行:
	$cont_p=str_cut($content,'7','');//提取内容代码中前7个字符
	$cont_pn=substr_count($cont_p, "[page]");//判断前7个字符中是否存在[page]这串代码
2.将"$content = $contents[$page-1];"修改为以下代码:
	if(!$cont_pn)
	{
		$content = $contents[$page-1];
	}
	else
	{
		$content = $contents[$page-0];
	}
好了,问题得到解决了.有此烦恼的朋友现在就试试吧.
]]></description>
			<content:encoded><![CDATA[<p>这个问题我原来以为是没有的,但后来经过测试发现在PHPCMS2008各个版本中都存在,当然此问题仅当内容页URL为动态时才会发现,如果为静态生成的话则不会有此问题.<br />
我先大体说一下这个[page]出问题的情景:</p>
<p>比如以下为两份内容的源代码<br />
内容A:解决PHPCMS2008内容页分页[page]解决PHPCMS2008内容页分页[page]解决PHPCMS2008内容页分页<br />
内容B:[page]解决PHPCMS2008内容页分页[page]解决PHPCMS2008内容页分页[page]解决PHPCMS2008内容页分页</p>
<p>大家认真看内容A和内容B,其实他们在URL动态打开时的分页总数是一样(分页数量没有错误),但是在内容分页第1页显示的内容就不一样了,内容A是可以正常显示第1页的;而内容B的第1页则显示为空白,到第2页才显示第1页的内容.这就是今天要解决的问题(注:经测试,此问题在静态生成时不存在).</p>
<p>现在我们仔细观察上面内容A和内容B的不同之处,发现内容B中[page]有3个,而且第1个是在具体内容的前面,问题就在这里.<br />
按照官方程序的设计来说,正确的分页代码插入应该是:内容[page]内容[page]内容.所以大家要熟记这个分页插入规则,不要把[page]放到具体内容的前面.</p>
<p>那有没有办法,兼容这两种情况呢.当然可以.只要对show.php这个文件进行些许修改即可.以下winliuxq(liuxq.cn)就向大家提供兼容解决方案:<br />
打开根目录的show.php<br />
1.找到"$contents = array_filter(explode('[page]', $content));",在其下面添加两行:<br />
	$cont_p=str_cut($content,'7','');//提取内容代码中前7个字符<br />
	$cont_pn=substr_count($cont_p, "[page]");//判断前7个字符中是否存在[page]这串代码<br />
2.将"$content = $contents[$page-1];"修改为以下代码:<br />
	if(!$cont_pn)<br />
	{<br />
		$content = $contents[$page-1];<br />
	}<br />
	else<br />
	{<br />
		$content = $contents[$page-0];<br />
	}</p>
<p>好了,问题得到解决了.有此烦恼的朋友现在就试试吧.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.liuxq.cn/2010/01/534/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHPCMS2008内容页分页显示全部的解决办法</title>
		<link>http://www.liuxq.cn/2009/12/498/</link>
		<comments>http://www.liuxq.cn/2009/12/498/#comments</comments>
		<pubDate>Thu, 24 Dec 2009 08:07:35 +0000</pubDate>
		<dc:creator>liuxq</dc:creator>
				<category><![CDATA[CMS|CSS]]></category>
		<category><![CDATA[phpcms]]></category>
		<category><![CDATA[分页]]></category>
		<category><![CDATA[解决方案]]></category>

		<guid isPermaLink="false">http://www.liuxq.cn/?p=498</guid>
		<description><![CDATA[问题表现描述以及解决后的显示图示见以下链接:
http://www.liuxq.cn/2009/12/478/
下面直接提供liuxq[www.liuxq.cn]的解决办法,很简单,只要修改一下/include/url.class.php这个文件即可.
打开这个文件,找到并将" function show_pages($page, $pagenumber, $pageurls) "这一行到" function update($contentid,$url) "之间的代码全部替换成以下代码:
{
  $pages = '';
  $multipage .= '&#60;span&#62;共'.$pagenumber.'页&#60;/span&#62;';
  $n = 9;//每页显示的页码数
  $i = 0;
  if ($pagenumber &#60;= $n)
   {
            $start_page = 1;
         [...]]]></description>
			<content:encoded><![CDATA[<p>问题表现描述以及解决后的显示图示见以下链接:<br />
<a href="http://www.liuxq.cn/2009/12/478/">http://www.liuxq.cn/2009/12/478/</a></p>
<p>下面直接提供liuxq[www.liuxq.cn]的解决办法,很简单,只要修改一下/include/url.class.php这个文件即可.</p>
<p>打开这个文件,找到并将" function show_pages($page, $pagenumber, $pageurls) "这一行到" function update($contentid,$url) "之间的代码全部替换成以下代码:</p>
<p>{<br />
  $pages = '';<br />
  $multipage .= '&lt;span&gt;共'.$pagenumber.'页&lt;/span&gt;';<br />
  $n = 9;//每页显示的页码数<br />
  $i = 0;<br />
  if ($pagenumber &lt;= $n)<br />
   {<br />
            $start_page = 1;<br />
            $end_page = $pagenumber;<br />
            }<br />
   else<br />
   {<br />
    $i = floor($page/$n);<br />
                if($page &gt;= 5)<br />
    {<br />
     if($page+2 &gt;= $pagenumber)<br />
     {<br />
     $start_page = $page - 6;<br />
     }<br />
     else{<br />
     $start_page = $page - 4;<br />
     }<br />
    $end_page = ($page + 4) &gt;= $pagenumber ? $pagenumber : $page + 4;<br />
    }<br />
    else<br />
    {<br />
    $start_page = 1;<br />
    $end_page = 8 &gt;= $pagenumber ? $pagenumber : 8;<br />
    }<br />
             }<br />
            for($i=$start_page; $i&lt;=$end_page; $i++)<br />
  {<br />
   $pages .= $page == $i ? '&lt;span&gt;'.$i.'&lt;/span&gt;' : '&lt;a href="'.$pageurls[$i][1].'" target="_self"&gt;'.$i.'&lt;/a&gt;';<br />
  }<br />
  $firstpage =min($page, 1);<br />
  $lastpage =max($page,$pagenumber);<br />
  $prepage = max($page-1, 1);<br />
  $nextpage = min($page+1, $pagenumber);<br />
  if($page&gt;1 &amp;&amp; $page &lt; $pagenumber)<br />
  {<br />
   $pagelist=$multipage.'&lt;a href="'.$pageurls[$firstpage][1].'" target="_self"&gt;首页&lt;/a&gt;'.'&lt;a href="'.$pageurls[$prepage][1].'" target="_self"&gt;上一页&lt;/a&gt;'.$pages.'&lt;a href="'.$pageurls[$nextpage][1].'" target="_self"&gt;下一页&lt;/a&gt;&lt;a href="'.$pageurls[$lastpage][1].'" target="_self"&gt;尾页&lt;/a&gt;';<br />
  }<br />
  elseif($page+1 &gt; $pagenumber)<br />
  {<br />
   $pagelist=$multipage.'&lt;a href="'.$pageurls[$firstpage][1].'" target="_self"&gt;首页&lt;/a&gt;'.'&lt;a href="'.$pageurls[$prepage][1].'" target="_self"&gt;上一页&lt;/a&gt;'.$pages;<br />
  }<br />
  else<br />
  {<br />
   $pagelist=$multipage.$pages.'&lt;a href="'.$pageurls[$nextpage][1].'" target="_self"&gt;下一页&lt;/a&gt;&lt;a href="'.$pageurls[$lastpage][1].'" target="_self"&gt;尾页&lt;/a&gt;';<br />
  }<br />
  return $pagelist;<br />
 }<br />
//重新改造结束  <a href="http://www.liuxq.cn">www.liuxq.cn</a></p>
<p>改造完成,如果是动态URL的话,前台刷新一下页面就能重新看到新的分页样式了,当然,分页的CSS样式需要自己写下了.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.liuxq.cn/2009/12/498/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHPCMS内容页分页第一页不显示的解决方法</title>
		<link>http://www.liuxq.cn/2009/10/190/</link>
		<comments>http://www.liuxq.cn/2009/10/190/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 16:47:55 +0000</pubDate>
		<dc:creator>liuxq</dc:creator>
				<category><![CDATA[随笔]]></category>
		<category><![CDATA[phpcms]]></category>
		<category><![CDATA[分页]]></category>

		<guid isPermaLink="false">http://www.liuxq.cn/2009/10/190/</guid>
		<description><![CDATA[打开show.php //在根目录里面
找到$content = $contents[$page];
修改为$content = $contents[$page-1];
事实证明,在没有分页的情况下,上述代码仍然不会出错.
好使.呵呵
]]></description>
			<content:encoded><![CDATA[<p>打开show.php //在根目录里面<br />
找到$content = $contents[$page];<br />
修改为$content = $contents[$page-1];</p>
<p>事实证明,在没有分页的情况下,上述代码仍然不会出错.<br />
好使.呵呵</p>
]]></content:encoded>
			<wfw:commentRss>http://www.liuxq.cn/2009/10/190/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
