DedeCMS の記事ページの前および次のリンクに記事の概要を追加するにはどうすればよいですか?
DedeCMS システムのデフォルトでは、前後の記事へのリンクにタイトルのみが表示されますが、記事の要約などの他の情報を表示したい場合もあります。以下にその方法を紹介します。
推奨学習: 梦Weavercms
デフォルトでは、DedeCMS システムは記事の前と次のリンクにタイトルのみを表示します。しかし、記事の概要など、他の情報を表示したい場合もあります。
インクルード ディレクトリで arc.archives.class.php ファイルを見つけて、「GetPreNext」関数を検索し、
$query = "Select arc.id,arc.title,arc.shorttitle,arc.typeid,arc.ismake,arc.senddate,arc.arcrank,arc.money,arc.filename,arc.litpic, t.typedir,t.typename,t.namerule,t.namerule2,t.ispart,t.moresite,t.siteurl,t.sitepath from `jcode_archives` arc left join jcode_arctype t on arc.typeid=t.id ";
を次のように変更します。
$query = "Select arc.id,arc.title,arc.shorttitle,arc.typeid,arc.ismake,arc.senddate,arc.arcrank,arc.money,arc.filename,arc.litpic, arc.description,t.typedir,t.typename,t.namerule,t.namerule2,t.ispart,t.moresite,t.siteurl,t.sitepath from `jcode_archives` arc left join jcode_arctype t on arc.typeid=t.id ";
実際には、arc.description のみが存在します。これは記事の概要であり、記事の説明とも呼ばれます。
jcode_archives と jcode_arctype の jcode_ は、私のテーブル構造のプレフィックスであることに注意してください。このプレフィックスを独自のものに変更する必要があります。
これで、データベースから記事の説明が削除されました。次のステップは、ページに説明を表示することです。接続テキストを表示するコードは、本来は次のようなものです。検索すると見つかります。実際には、上記のコードの近くにあります:
if(is_array($preRow)) { $mlink = GetFileUrl($preRow['id'],$preRow['typeid'],$preRow['senddate'],$preRow['title'],$preRow['ismake'],$preRow['arcrank'], $preRow['namerule'],$preRow['typedir'],$preRow['money'],$preRow['filename'],$preRow['moresite'],$preRow['siteurl'],$preRow['sitepath']); $this->PreNext['pre'] = "上一篇:<a href='$mlink'>{$preRow['title']}</a> "; $this->PreNext['preimg'] = "<a href='$mlink'><img src="{$preRow['litpic']}" alt="{$preRow['title']}"/></a> "; } else { $this->PreNext['pre'] = "上一篇:没有了 "; $this->PreNext['preimg'] ="<img src="/templets/default/images/nophoto.jpg" alt="对不起,没有上一图集了!"/>"; } if(is_array($nextRow)) { $mlink = GetFileUrl($nextRow['id'],$nextRow['typeid'],$nextRow['senddate'],$nextRow['title'],$nextRow['ismake'],$nextRow['arcrank'], $nextRow['namerule'],$nextRow['typedir'],$nextRow['money'],$nextRow['filename'],$nextRow['moresite'],$nextRow['siteurl'],$nextRow['sitepath']); $this->PreNext['next'] = "下一篇:<a href='$mlink'>{$nextRow['title']}</a> "; $this->PreNext['nextimg'] = "<a href='$mlink'><img src="{$nextRow['litpic']}" alt="{$nextRow['title']}"/></a> "; } else { $this->PreNext['next'] = "下一篇:没有了 "; $this->PreNext['nextimg'] ="<a href='javascript:void(0)' alt=""><img src="/templets/default/images/nophoto.jpg" alt="对不起,没有下一图集了!"/></a>"; } }
さて、 「各 a タグの後に div を追加」で記事の説明を表示します。div には記事の説明が含まれます:
if(is_array($preRow)) { $mlink = GetFileUrl($preRow['id'],$preRow['typeid'],$preRow['senddate'],$preRow['title'],$preRow['ismake'],$preRow['arcrank'], $preRow['namerule'],$preRow['typedir'],$preRow['money'],$preRow['filename'],$preRow['moresite'],$preRow['siteurl'],$preRow['sitepath']); $this->PreNext['pre'] = "上一篇:<a href='$mlink'>{$preRow['title']}</a> <div>{$preRow['description']}</div> "; $this->PreNext['preimg'] = "<a href='$mlink'><img src="{$preRow['litpic']}" alt="{$preRow['title']}"/></a> <div>{$preRow['description']}</div> "; } else { $this->PreNext['pre'] = "上一篇:没有了 "; $this->PreNext['preimg'] ="<img src="/templets/default/images/nophoto.jpg" alt="对不起,没有上一图集了!"/>"; } if(is_array($nextRow)) { $mlink = GetFileUrl($nextRow['id'],$nextRow['typeid'],$nextRow['senddate'],$nextRow['title'],$nextRow['ismake'],$nextRow['arcrank'], $nextRow['namerule'],$nextRow['typedir'],$nextRow['money'],$nextRow['filename'],$nextRow['moresite'],$nextRow['siteurl'],$nextRow['sitepath']); $this->PreNext['next'] = "下一篇:<a href='$mlink'>{$nextRow['title']}</a> <div>{$preRow['description']}</div> "; $this->PreNext['nextimg'] = "<a href='$mlink'><img src="{$nextRow['litpic']}" alt="{$nextRow['title']}"/></a> <div>{$preRow['description']}</div> "; } else { $this->PreNext['next'] = "下一篇:没有了 "; $this->PreNext['nextimg'] ="<a href='javascript:void(0)' alt=""><img src="/templets/default/images/nophoto.jpg" alt="对不起,没有下一图集了!"/></a>"; } }
これを実行すると、記事の概要は表示できますが、形式が乱雑になる可能性があります。必要に応じてスタイルを変更します。
以上がDedeCMSの記事ページの前と次のリンクに記事概要を追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。