織夢dedecms經驗

二級域名配置php

一、只有頂級欄目可使用二級域名 並且頂級欄目的存放目錄最好放在cms的根目錄html

二、將二級域名綁定到頂級欄目的文件夾sql

三、織夢後臺系統設置-核心設置-是否支持多站點。。。-選擇是數據庫

四、織夢後臺系統設置-基本設置-網頁主頁鏈接和站點根網址填上數組

五、在須要綁定二級域名的頂級欄目的高級選項中 選擇啓用多站點支持 並填好域名緩存

六、選擇應用到子欄目網絡

七、更新緩存 更新欄目 更新文檔curl

 ——————————————————————————————————————————函數

標籤內調用函數工具

{dede:sql sql="SELECT * FROM `jk_feedback` WHERE `ischeck`='1' limit 0,1;"}

<div>問:[field:msg function="getCommentAskOrAnswer(@me,0)" function="cn_substr(@me,30)"/]</div>
<div>答: [field:msg function="@me=getCommentAskOrAnswer(@me,1);@me=cn_substr(@me,60);" /] </div>

{/dede:sql}

 

時間格式

 [field:pubdate function="MyDate('Y-m-d',@me)"/]   用這樣的形式調用就可

 

——————————————————————————————————————————

分頁調用

在頁面用iframe 調用php分頁文件 a.php

a.php文件裏調用分頁類  寫好查詢語句 放置參數 而後display輸出模版(a.html

a.html裏是分頁模版(顯示分頁文章列表)

案例請看fenye文件夾

 ——————————————————————————————————————————

取文章地址

{dede:sql sql=」select * from archives」}

[field:id runphp='yes']

$id=@me;@me=";$url=GetOneArchive($id);@me=$url['arcurl'];

[/field:id]

{/dede:sql}

 

經過id取文章地址方法

在common.func.php裏已經有了GetOneArchive()方法;

該方法已經取得了文章的路徑和其餘文章信息 返回的是一個數組;

能夠將返回值直接改成返回文章路徑;

也就是return return $reArr['arcurl'];

 ——————————————————————————————————————————

增長自定義文檔屬性

須要改動的數據庫表及字段:archives表中的flag字段
另須要在arcatt表中增長定義的字母

好比咱們增長一個ID是「w」,屬性名稱是「網絡」的自定義屬性
注意:一經添加,ID是不能修改的,而屬性名稱能夠修改

默認是
'c','h','p','f','s','j','a','b'
咱們增長的屬性ID是w,則這個值改成
'c','h','p','f','s','j','a','b','w'

四、把上面的修改好了之後,打開表arcatt,以下圖所示  

五、在打開的arcatt表加入自定義的屬性,
函數這個地方不要進行任何的修改
sortid 值填寫一個數字,必須不能之前用的重複
att 就是屬性的值,這裏咱們是  w
attname 這個是屬性名稱,咱們這裏是 網絡

——————————————————————————————————————————

月排行周排行

<ul><!-- 周排行-->
{dede:arclist sort='hot' subday='7' row=10 titlelen=64}
<li class="e1"><span>[[field:typelink function='str_replace("a ","a class=ulink ",@me)'/]] </span>
<a href="[field:arcurl/]">[field:title/]</a></li>
{/dede:arclist}
</ul>

 

月排行引用的代碼以下:

 <ul><!-- 月排行-->
{dede:arclist sort='hot' subday='30' row=10 titlelen=64}
<li class="e1"><span>[[field:typelink function='str_replace("a ","a class=ulink ",@me)'/]] </span>
<a href="[field:arcurl/]">[field:title/]</a></li>
{/dede:arclist}
</ul>
 

———————————————————————————————————————————

ID遞增 [field:global name=autoindex/]使用方法

{dede:arclist row='8' att='3' type='p_w_picpath.'}

[field:litpic/]

[field:global name=autoindex runphp="yes"](@me!=8)? @me="|":@me="";[/field:global]

{/dede:arclist}

[field:global name=autoindex runphp="yes"] (@me%2==1)?@me="":@me="alt";[/field:global]

autoindex   itemindex 的使用心得區別  

channelartlist 標籤下使用 {dede:global name='itemindex' runphp='yes'}@me;{/dede:global}

自增1

arclist            標籤下使用 [field:global.autoindex/] 默認從1開始
channel         標籤下使用 [field:global.autoindex/] 默認從0開始
channelartlist 標籤下使用 {dede:global.itemindex/}  默認從1開始


arclist從0開始[field:global name=autoindex runphp="yes"]@me=@me-1;[/field:global]

channel從1開始[field:global name=autoindex runphp="yes"]@me=@me+1;[/field:global][field:typename/]

channelartlist從0開始{dede:global name=itemindex runphp='yes'}@me=@me-1;{/dede:global}

——————————————————————————————————————————

dedecms解決描述和關鍵字過短的方法

方法是直接修改表字段的類型

1.改變欄目的關鍵詞和描述字數: 
在系統工具---SQL命令行工具---運行SQL命令行:
                     alter table  dede_arctype change  column description  description  text;
                     alter table  dede_arctype change  column keywords  keywords  text;
這樣幾個解決欄目的關鍵詞和描述字數的限制,想要多少字數就多少字


2.改變文章內容的關鍵詞和描述字數:
一樣在,系統工具---SQL命令行工具---運行SQL命令行:
                     alter table  dede_archives change  column description  description  text;
                     alter table  dede_archives change  column keywords  keywords  text;

接下來修改dede 文件下的 article_add.php 和 article_edit.php
$description = cn_substrR($description,500);
$keywords = cn_substrR($description,120);
其中紅色的就是你想要字符數,分別是描述和關鍵詞。

——————————————————————————————————————————

DEDE快速實現列表頁讀取內容頁圖片方法

怎麼才能夠在織夢模板的建的站裏實現列表讀取文章頁的圖片呢?下面是方法:

百度和谷歌中搜索了一下只找到了從列表頁獲取文章內容第一張圖片的解決方法。最後本身也解決了列表頁獲取圖片集第一張圖片。今日和你們一併分享一下:
  1:在列表頁獲取文章內容頁第一張圖片
     在一般狀況下圖片的縮放圖是有文章第一張圖片生成的。縮放圖和文章第一張圖片直接存在必定的關係。咱們先看一下縮放圖和第一張圖片的路徑:
     縮放圖:
第一圖片:
咱們觀察能夠發現:兩張圖片的後七位是不一樣的:
咱們能夠經過函數刪除縮略圖字符串最後七位,而後再補上後綴.jpg
函數以下:
//將縮放圖轉變爲文章第一張圖片
function firstimg($str_pic)
{
$str_sub=substr($str_pic,0,-7).".jpg";//刪除縮略圖字符串最後七位,而後再補上後綴.jpg
return $str_sub;
}

將該函數添加到../ include/ common.func.php 
調用的方法是:[field:litpic function='firstimg(@me)'/]
2:在列表頁獲取圖片集中第一張圖片
   圖片集中的圖片獲取到圖片有一點麻煩,分析圖片集的數據庫表結構後發現,織夢將圖片集的描述、標題、圖片地址都存放到了字段(addonimages)中。
   咱們來看一下addonimages字段內的內容:
{dede:pagestyle maxwidth='800' pagepicnum='12' ddmaxwidth='200' row='3' col='4' value='2'/}
{dede:img ddimg='/uploads/allimg/100830/1-100S0140H8.jpg' text='美甲師 何玲' width='270' height='403'} /uploads/allimg/100830/1-100S0140H8.jpg {/dede:img}
【/uploads/allimg/100830/1-100S0140H8.jpg】
這個就是咱們須要的網址。只有想辦法將其過濾出來就能夠了。
看一下咱們的功能函數:
//取圖片集中的第一張圖片
function imgurlsfirstimg($imgurls)
{
$start=strpos($imgurls,'ddimg=')+6;//尋找開始標記
if ($start) $imgurls=substr($imgurls,$start);//刪除前面
$end=strpos($imgurls,'text=');//尋找結束標記
if ($end)   $imgurls=substr($imgurls,0,$end);//刪除後面
return $imgurls;
}
其中標記爲藍色的部分是截取的標記。
將該函數添加到../ include/ common.func.php
使用的辦法以下:
{dede:sql sql='select * from dede_archives, dede _addonimages where aid=id and dede _addonimages.typeid=16'} 
<Atitle="[field:title/]"href="/zuopin/"rel=[field:imgurlsfunction='imgurlsfirstimg(@me)'/]>[field:title/]</A>
{/dede:sql}
我使用的辦法是用sql語句直接讀取,你們能夠修改成符合本身的。

——————————————————————————————————————————

列表頁取欄目的簡介、關鍵詞、描述、名稱、等等

<meta name="keywords" content="{dede:field name='keywords'/}" />

將name改成所取內容的名字如:name=’description’

獲取欄目名稱{dede:field name=typename/}

獲取欄目路徑{dede:field name=arcurl/}

——————————————————————————————————————————

在欄目列表和文章頁面中得到當前欄目

找到include/inc_functions.php(此函數爲公共函數,當程序運行時自動加載)

在尾部添加新的函數以下:

//經過欄目ID獲取欄目的名稱

function GetTypeName($typeid){

$dsql = new DedeSql(false);

$row = $dsql->GetOne("select typename From dede_arctype where ID=$typeid; ");

return $row['typename'];

}

調用方法示例:

{dede:field name='typeid' function=」GetTypeName(@me)」/}

 

DeDeCMS縮略圖地址過長致使沒法顯示的解決方法

將表dede_archives 中litpic字段默認值由60改成100(不夠再加大)便可,能夠用phpmyadmin

 

 

調用body內容

{dede:arclist typeid='194' titlelen='140' addfields='body' channelid='1' row='1' flag='c'}
 <a href="[field:arcurl/]">
[field:body runphp="yes"]@me=html2text(@me);@me=cn_substr(@me,'540');
[/field:body]
</a> 
{/dede:arclist}

 

織夢模版全局變量 $refObj 

{dede:php}
   echo GetTypeUrl($refObj->Fields['id'],$refObj->Fields['typedir'],$refObj->Fields['isdefault'],$refObj->Fields['defaultname'],$refObj->Fields['ispart'],$refObj->Fields['namerule2'],'',$refObj->Fields['siteurl'],$refObj->Fields['sitepath']);
{/dede:php}
相關文章
相關標籤/搜索