www.91084.com

GVKun编程网logo

dedecms怎么调用指定栏目下的相关新闻(dedecms调用页面)

9

在本文中,您将会了解到关于dedecms怎么调用指定栏目下的相关新闻的新资讯,同时我们还将为您解释dedecms调用页面的相关在本文中,我们将带你探索dedecms怎么调用指定栏目下的相关新闻的奥秘,

在本文中,您将会了解到关于dedecms怎么调用指定栏目下的相关新闻的新资讯,同时我们还将为您解释dedecms调用页面的相关在本文中,我们将带你探索dedecms怎么调用指定栏目下的相关新闻的奥秘,分析dedecms调用页面的特点,并给出一些关于dedecms 调用指定栏目,指定作者,指定自定义字段、DEDECMS不调用隐藏栏目下新闻的办法、dedecms任意页面调用指定栏目内容的方法、dedecms使用SQL代码调用指定栏目tag标签的实用技巧。

本文目录一览:

dedecms怎么调用指定栏目下的相关新闻(dedecms调用页面)

dedecms怎么调用指定栏目下的相关新闻(dedecms调用页面)

 

{dede:likeart titlelen=’24′ row=’10′}

<li><a title=”[field:title function='htmlspecialchars(@me)'/] ” href=http://www.dede58.com/a/dedejq/”[field:arcurl /]“>[field:title /]</a></li>

{/dede:likeart}

注:此为dede官方的调用源码,但至今不清晰调用依据!

指定栏目调用

{dede:arclist typeid='栏目ID' row='10' titlelen='20'}
[field:textlink/]
{/dede:arclist}

下面是我自己要达到的效果:

指定栏目(ID=4)相关文章(keyword要调用关键词或title)的调用

{dede:arclist typeid='4' row='10' titlelen='20' keyword=''}
[field:textlink/]
{/dede:arclist}

代码1



效果1:

dedecms怎么调用指定栏目下的相关新闻


 

代码2:



效果2:

dedecms怎么调用指定栏目下的相关新闻



到这里你如果是只是单一Keywords的话那就可以了。下面的关键是我的Keywords要去调用:即keyword='{dede:field name='keywords’/}'  或者我调用标题

keyword='{dede:field name='title'/}

不过这种很少用,因为是调用源码。没人愿意所有的新闻都调用同一个关键词吧!

博主推荐办法:

--------------------------------------------------------------------------------------

放在新闻源码页内
{dede:field name=’keywords’ function=’ShowKeyWordArc(0,32,10,0,”@me”)’/}
就表示是取所有栏目内的相关新闻(与当前新闻的关键词相关),标题长度*大32,*多显示10条,不显示缩略图

{dede:field name=’keywords’ function=’ShowKeyWordArc(0,32,10,0,”高三语文”)’/}
可以找到标题里,含有“高三 语文”,或者含有“高三”或“语文”的新闻
例如,这一段:
相关新闻
{dede:likeart titlelen=’24′ row=’10′}
[field:textlink/]< >
{/dede:likeart}
就改成:
相关新闻
{dede:field name=’keywords’ function=’ShowKeyWordArc(0,32,10,0,”@me”)’/}

根据关键词来相关新闻,就用户体验以及网站优化来说都是特别好的
**不好的地方就是生成静态的时候会慢很多

本文章网址:http://www.ppssdd.com/code/12687.html。转载请保留出处,谢谢合作!

dedecms 调用指定栏目,指定作者,指定自定义字段

dedecms 调用指定栏目,指定作者,指定自定义字段

百度知道里看到有人提问,帮写了一个。

 

模板里调用sql:

1
2
3
4
5
6
{dede:sql sql="select a.id,a.title,a.writer,a.pubdate,a.typeid,b.aid,b.sex from dede_archives a LEFT JOIN dede_addonarticle b on b.aid=a.id where a.typeid='7' and a.writer=~writer~ and b.sex='男' order by a.pubdate desc LIMIT 0,5"}
            文章ID:[field:id/]
"[field:id function='GetoneDocUrl(@me)'/]">[field:title/]
          {/dede:sql}

a.typeid=7   调用ID为7的栏目  如果不需要指定栏目ID  那么你可以把 a.typeid='7' and  删掉

a.writer=~writer~  调用当前文章的作者,调用指定的作者,可以这样写a.writer='admin'  这样就是指定调用admin这个作者的文档

b.sex=男  设置性别,也就是自定义字段。如果你的自定义字段不是sex 那么你只要把sql里的b.sex 改成你的字段,例如 name 改成b.name

LIMIT 0,5  设置要调用的条数,我这里写的是5条,自行修改.

指定调用2个栏目的话  可以把where a.typeid='7'  修改为 where a.typeid='7' and a.typeid='8'

这样就指定调用栏目ID 为 7和8的栏目

GetoneDocUrl 函数 放到incluce/extend.func.PHP 文件中,这个函数是用来调用文档的静态URL的。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
function GetoneDocUrl($aid)
{
    global $dsql;
include_once(DEDEINC."/channelunit.func.PHP");
    $aid = trim(ereg_replace('[^0-9]',''PHP plain"php variable">));
 
$chRow ->Getone("Select arc.*,ch.maintable,ch.addtable,ch.issystem From `dede_arctiny` arc left join `dede_channeltype` ch on ch.id=arc.channel where arc.id='$aid' ");
 
if(!is_array($chRow)) {
        return $reArr;
    }
else {
(empty['maintable'])) ] = 'dede_archives';
}
 
'issystem']!=-1)
{
        $nquery = " Select arc.*,tp.typedir,tp.topid,tp.namerule,tp.moresite,tp.siteurl,tp.sitepath
                    From `{]}` arc left join `dede_arctype` tp on tp.id=arc.typeid
where arc.id='$aid' ";
}
else
{
PHP spaces"php keyword">as ismake,0 money,monospace; Box-sizing: content-Box !important; padding: 0px !important; color: blue !important; border-radius: 0px !important; border: 0px !important; bottom: auto !important; float: none !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; min-height: auto !important; word-break: break-all !important; background: none !important;">'' filename,tp.sitepath
'addtable']}` arc left join `dede_arctype` tp on tp.id=arc.typeid
where arc.aid=";
}
 
$arcRow ->Getone($nquery);
 
$Url = GetFileUrl($arcRow'typeid'],monospace; Box-sizing: content-Box !important; padding: 0px !important; color: blue !important; border-radius: 0px !important; border: 0px !important; bottom: auto !important; float: none !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; min-height: auto !important; word-break: break-all !important; background: none !important;">'senddate''title''ismake''arcrank''namerule''typedir''money''filename''moresite''siteurl''sitepath']);
$Url;
}
 

DEDECMS不调用隐藏栏目下新闻的办法

DEDECMS不调用隐藏栏目下新闻的办法

 

DEDE网站的建设过程中经常需要调用全站的*新新闻(主要是在首页源码中),按默认的配置,DEDE程序会自动调用网站中所有已发布的文档,包括被我们设置成隐藏的栏目。但是既然我们隐藏了这些栏目就是不想访客能轻易看到,因此不能将这些隐藏栏目里的新闻暴露出来,这里教你怎么修改
找到以下文件:/include/taglib/arclist.lib.php ;
点击“CTRL+F”快捷键,查找以下这行代码:if($orwhere!='') $orwhere = " WHERE $orwhere ";
将这行代码改为:if($orwhere!='') $orwhere = " WHERE $orwhere and tp.ishidden != 1 ";
这样网站前后就会屏蔽这个栏目下的所有新闻了. 本文章网址:http://www.ppssdd.com/code/10424.html。转载请保留出处,谢谢合作!

dedecms任意页面调用指定栏目内容的方法

dedecms任意页面调用指定栏目内容的方法

我们在使用Dedecms织梦建站的时候,经常把内容写到栏目内容中作为单页使用,比如公司简介、联系我们等等单页都可以写到栏目内容中,我们要调用的时候要怎么实现呢?小编为您整理了两种方法:

 

1、通过sql语句实现调用,写法如下:

 

{dede:sql sql='Select content from dede_arctype where id=1'}

[field:content function="cn_substr(Html2text(@me),340)"/]

{/dede:sql}

 

你需要修改的地方:

 

id=1' 意思是 id=栏目ID号,340是你要截取的字符数量,也就是最多截取170个汉子,html2text(@me)是过滤HTML字符,把HTML标记排除掉不显示。

 

2、第二种方法,直接通过type标签实现,写法如下:

 

{dede:type typeid=1}[field:content function="cn_substr(Html2text(@me),340)"/]{/dede:type}

 

但是这种写法的话,首先要修改一个文件,文件位置在/include/taglib/type.lib.PHP,在大约24行,找到如下代码,加入红色部分(原来的写法里面是没有写栏目内容的调用):

 

$row = $dsql->Getone("SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,content,moresite,siteurl,sitepath  FROM `dede_arctype` WHERE id='$typeid' ");

dedecms使用SQL代码调用指定栏目tag标签

dedecms使用SQL代码调用指定栏目tag标签

在使用织梦dedecms建站中,很有可能需要用到在首页根据调用某个栏目下的TAG,也就是是按栏目调出TAG,这里就需要用到DEDE 的sql运行功能
{dede:sql sql="select * from dede_archives a left join dede_taglist t on a.id=t.aid where a.typeid='22' limit 4"}
   PHP?[field:tag/]" target="_blank" title="[field:tag /]" >[field:tag="" ]<="" a> {/dede:sql}

这里typeid=‘22’可以改成你实际要调用的栏目ID,limit 4这个是调用多少个TAG出来

以上的代码是随便哪里都可以用
如果是要再栏目页调用,还有一个代码
[field:id runPHP=yes]  
    $tsql = new Dedesql(false);  
    $tags = '';  
    $tsql->SetQuery("Select i.tagname From dede_tag_list t left join dede_tag_index i on i.id=t.tid where t.aid='@me'");  
    $tsql->Execute('t');  
    while($row = $tsql->GetArray('t',MysqL_ASSOC)){  
    $tags .= "PHP?/".urlencode($row[" tagname'])."'>".$row['tagname']."<="" a>";=""       }  
    @me=$tags;  
    [/field:id]

如果是DEDE5.7 及之后的版本,可以直接在栏目页用
PHP?/".urlencode($row[" tagname'])."'>".$row['tagname']."<="" a>";=""  [field:id function=GetTags(@me)/] 
就能直接调用,但是调用出来是不带链接的,如果需要链接,请注释掉include\helpers\archive.helper.PHP文件的130行: $tags .= ($tags=='' ? $row['tag'] : ','.$row['tag']);
  用下面语句替换,当然你也可以加入自己的样式:$tags .= "PHP?/".urlencode($row[" tag'])."="" '>".$row['tag']."<="" a>="" ";<="" pre="">

关于dedecms怎么调用指定栏目下的相关新闻dedecms调用页面的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于dedecms 调用指定栏目,指定作者,指定自定义字段、DEDECMS不调用隐藏栏目下新闻的办法、dedecms任意页面调用指定栏目内容的方法、dedecms使用SQL代码调用指定栏目tag标签的相关信息,请在本站寻找。

本文标签: