本文的目的是介绍dedecms列表页隔行插入样式的详细情况,特别关注dedecms分页标签的相关信息。我们将通过专业的研究、有关数据的分析等多种方式,为您呈现一个全面的了解dedecms列表页隔行插入
本文的目的是介绍dedecms 列表页 隔行 插入样式的详细情况,特别关注dedecms分页标签的相关信息。我们将通过专业的研究、有关数据的分析等多种方式,为您呈现一个全面的了解dedecms 列表页 隔行 插入样式的机会,同时也不会遗漏关于dede 列表页 上一页下一页 只要链接、DEDECMS JSON数据生成 DEDECMS JSON接口制作、dedecms list 判断 每隔3次输出内容、dedecms sql标签中调用其它变量值功能修改的知识。
本文目录一览:- dedecms 列表页 隔行 插入样式(dedecms分页标签)
- dede 列表页 上一页下一页 只要链接
- DEDECMS JSON数据生成 DEDECMS JSON接口制作
- dedecms list 判断 每隔3次输出内容
- dedecms sql标签中调用其它变量值功能修改
dedecms 列表页 隔行 插入样式(dedecms分页标签)
dedecms 每隔5行加样式
dedecms默认列表是标题和摘要,其他的都是标题列表。
如果呈单一的文字列表出现的话,隔几条数据增加一段空白或插入一段横线,可以让列表更清晰明了。
下面这个可以用在任何地方的列表
{dede:arclist row=’20′ } <li><a href=”[field:arcurl/]“>[field:title/]</a></li> [field:global name=autoindex runphp="yes"](@me % 5 == 0)?@me=”<li class=\”bline\”></li>”:@me=”";[/field:global] {/dede:arclist}
如果在列表页
{dede:list pagesize=’20′} <li><a href=”[field:arcurl/]“>[field:title/]</a></li> [field:global name=autoindex runphp="yes"](@me % 5 == 0)?@me=”<li class=\”bline\”></li>”:@me=”";[/field:global] {/dede:list}
方法是一样的,这中间可以改变5的数值,和插入的CSS,从而改变多少条文章之后插入CSS以及它的表现形式。
[field:title function(@me ,35)/] dede字符截取
用下面这个循环判断:
[field:global runphp=''yes'' name=autoindex] $a="row01''"; $b="row02''"; if ((@me%2)==0) @me=$a; else @me=$b; [/field:global] |
这个效果是列表页间行变色 [field:autoindex runphp=''yes'']@me=$GLOBALS[''autoindex'']+1;[/field:autoindex] 自定义开始值
dede 列表页 上一页下一页 只要链接
修改include中的arc.listview.class.PHP
然后修改静态那个就行了
查找“//获得上一页和主页的链接”
//获得上一页和主页的链接 if($this->PageNo != 1) { $prepage.="".str_replace("{page}",$prepagenum,$tnamerule).""; $indexpage="".str_replace("{page}",$tnamerule).""; } else { $indexpage=" |
使用
{dede:Pagelist listitem="pre" listsize="5"/}
{dede:Pagelist listitem="next" listsize="5"/}
上面那些只有一页的时候的判断语句也清空吧
DEDECMS JSON数据生成 DEDECMS JSON接口制作
json数据格式可以方便不同站点之间进行数据调用引用,当然我们的DEDECMS也可以实现全站数据生成JSON供其他站点调用,代码很简单,主要用到include/json.class.php。
织梦本身是自带json标签的,调用办法:
{dede:json url='' cache=300}
[field:id/]-[field:title/]<br/>
{/dede:json}
这个标签调用例子在织梦手册里已经给我们提供了,url是一个远程json接口地址,这个接口文件json.php代码 里面,*后的返回必须是把数据通过json_encode($feeds)系统函数,进行json编码后,通过echo或print()函数来打印出来,这二点是必须的,然后,在前台我们就可以通过$.ajax()或$.getjson()来获取数据。织梦系统给我们提供了一个json类,在include/json.class.php文件里面,也就是是说,我们在对php文件转换json编码,就有了二种办法:
1.直接用php系统给我们提供的系统函数,json_encode(),我建立大家用这个,即简单又省事,既然,php系统给我们提供了,我们可以不用织梦系统提供的。
2.就是用织梦系统提供的,encode(),在使用前,首先引入json.class.php,即:
require_once(DEDEINC.'/json.class.php');
$json = new Services_JSON(SERVICES_JSON_SUPPRESS_ERRORS);
echo $json->encode($reval);
$reval这个变量是我们从数据库或其它地方得到的,一般是一个二维数组,例如下:
Array (
[0] => Array ( [id] => 95 [title] => 原图设计)
[1] => Array ( [id] => 113 [title] => ssssssssssss)
[2] => Array ( [id] => 111 [title] => hjhj )
[3] => Array ( [id] => 110 [title] => ssssssssssss)
)
经echo 以后,显示的内容如下所示。
[
{"id":"95","title":"\u539f\u521b"},
{"id":"113","title":"ssssssssssss"},
{"id":"111","title":"hjhj"},
{"id":"110","title":"ssssssssssss"}
]
这是经过encode()或用json_encode()后,显示的内容。即,用中括号括起来的,几个json数据,这个数据回给请求的$.ajax()或$.getjson(),并由其对这个数据进行处理,显示我们相要的结果。
知道了原理,接下来就是详细实现办法,如下:
首先新建一个PHP文件,命名为json.php(也可以新建个文件夹命名为api,然后PHP命名为index.php,这样调用的时候就只需要你的域名/api这样的方式调用),用于作为被调用的API接口,代码如下:
<?php
$cfg_NotPrintHead = false;
header("Content-Type: text/html; charset=utf-8");
include_once (dirname(__FILE__)."/../include/common.inc.php");
error_reporting(E_ALL || ~E_NOTICE);
require_once(DEDEINC.'/json.class.php');
$reval = array();
$dsql->SetQuery("SELECT id,title FROM `dede_archives` ORDER BY id DESC LIMIT 0,10");
$dsql->Execute('me');
while ($row = $dsql->GetArray('me')) {
$row['title'] = gb2utf8($row['title']);
$reval[] = $row;
}
$json = new Services_JSON(SERVICES_JSON_SUPPRESS_ERRORS);
echo $json->encode($reval);
?>
这里代码有进行了GBK转UTF8的操作,所以兼容GBK版的DEDECMS
调用办法:
{dede:json url='域名/json.php' cache=300}
[field:id/]-[field:title/]<br/>
{/dede:json}
把调用代码放到你你需要的地方就行
本文章网址:http://www.ppssdd.com/code/10237.html。转载请保留出处,谢谢合作!dedecms list 判断 每隔3次输出内容
{dede:list pagesize='12' runphp='yes'} [field:global name=autoindex runphp="yes"](@me%3==0)? @me='输出':@me='';[/field:global] {/dede:list}
花了好几个小时才解决,简直坑T,T
本文章网址:http://www.ppssdd.com/code/12681.html。转载请保留出处,谢谢合作!dedecms sql标签中调用其它变量值功能修改
织梦cms的代码除了自身的功能以外在源码标签调用以及自定义模型等方面确实很差,下面是是用sql标签调用匹配其他参数的代码修改:
一般在新闻页使用sql标签匹配另外一个参数我们会按照以下这样写,但结果输出为空:
{dede:sql sql="select title from `dede_archives` where `title` like '%~pername~%'" db='default'}
<li><a href='[field:arcurl/]'>[field:title/]</a> </li>
{/dede:sql}
dedecms源码标签默认编译的结果就是select title from `dede_archives` where `title` like '~%pername%~' 并没有传递进来pername的参数。
此时我们需要对织梦cms的函数进行以下修改:
$sql = str_replace($conditions[0][$key], "'".addslashes($refObj->Fields[$value])."'", $sql);
修改为:(只需把引号去掉就可以实现了)
$sql = str_replace($conditions[0][$key], addslashes($refObj->Fields[$value]), $sql);
或者我们可以复制一份include/taglib/sql.lib.php重命名为likesql.lib.php并将对应代码修改,这样我们可以不影响{dede:sql sql=""}标签而用新的{dede:likesql sql=""}来实现模糊搜索。
本文章网址:http://www.ppssdd.com/code/13636.html。转载请保留出处,谢谢合作!我们今天的关于dedecms 列表页 隔行 插入样式和dedecms分页标签的分享就到这里,谢谢您的阅读,如果想了解更多关于dede 列表页 上一页下一页 只要链接、DEDECMS JSON数据生成 DEDECMS JSON接口制作、dedecms list 判断 每隔3次输出内容、dedecms sql标签中调用其它变量值功能修改的相关信息,可以在本站进行搜索。
本文标签: