phpcms v9模板製作教程

来源:http://www.cnblogs.com/zzzy0828/archive/2017/12/21/8082702.html
-Advertisement-
Play Games

phpcms v9模板製作教程(轉載) 第一節1、首先下載phpcms v9的集成安裝包並安裝,這裡就不詳細說明瞭。2、本地調試建議大家使用APMserver,或者wampserver等,可以到PHPCMS吧官方網站首頁鏈接下載。安裝好打開v9的根目錄“phproot→phpcms→template ...


phpcms v9模板製作教程(轉載)

第一節

1、首先下載phpcms v9的集成安裝包並安裝,這裡就不詳細說明瞭。

2、本地調試建議大家使用APMserver,或者wampserver等,可以到PHPCMS吧官方網站首頁鏈接下載。安裝好打開v9的根目錄“phproot→phpcms→templates”文件夾把“default”文件夾複製一份起名“redu”。

3、登陸v9後臺登錄地址:http://localhost/admin.php
用戶名:phpcms 密碼:phpcms

4、打開界面→模板風格→風格標識redu下的詳細列表下的content文件夾

1、首先修改首頁模板index.html
修改前向大家介紹下v9的工作模式,v9和他的前身phpcms 2008是一樣的都是“標簽調用頭部 +首頁部分+ 標簽調用底部”
所以按照從頭開始的順序
第一步打開heard.html
現在我們開始分析header.html的構造:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
上面是W3C網頁標準
<head>
<meta http-equiv="Content-Type" content="text/html; charset={CHARSET}" />{CHARSET}" =字元集 (gbk或者utf-8)
<meta http-equiv="X-UA-Compatible" content="IE=7" />
<title>{if isset($SEO['title']) && !empty($SEO['title'])}{$SEO['title']}{/if}{$SEO['site_title']}</title>
判斷語句 翻譯:如果設置了標題並且標題不為空,則顯示標題,否則顯示網站名稱

<meta name="keywords" content="{$SEO['keyword']}">
<meta name="description" content="{$SEO['description']}">
<link href="{CSS_PATH}reset.css" rel="stylesheet" type="text/css" />
<link href="{CSS_PATH}default_blue.css" rel="stylesheet" type="text/css" />
上面2行是外部css的調用{CSS_PATH}
<script type="text/javascript" src="{JS_PATH}jquery.min.js"></script>
<script type="text/javascript" src="{JS_PATH}jquery.sGallery.js"></script>
<script type="text/javascript" src="{JS_PATH}search_common.js"></script>
上面3行是網頁的js調用
</head>
<body>
<div class="body-top">
<div class="content">
{pc:content action="position" posid="9" order="id" num="10" cache="3600"}
<div id="announ">
<ul>
{loop $data $k $v}
<li><a href="{$v[url]}">{$v[title]}</a></li>
{/loop}
</ul>
</div>
{/pc}
<script type="text/javascript">
$(function(){
startmarquee('announ',22,1,500,3000);
})
</script>
<div class="login lh24 blue"><a href="{APP_PATH}index.php?m=content&c=rss&siteid={get_siteid()}" class="rss ib">rss</a><span class="rt"><script type="text/javascript">document.write('<iframe src="{APP_PATH}index.php?m=member&c=index&a=mini&forward='+encodeURIComponent(location.href)+'&siteid={get_siteid()}" allowTransparency="true" width="300" height="24" frameborder="0" scrolling="no"></iframe>')</script></span></div>
</div>
</div>
<div class="header">
<div class="logo"><a href="/"><img src="{IMG_PATH}v9/logo.jpg" /></a></div>


下麵是搜索部分

<div class="search">
<div class="tab" id="search">
{php $j=0}
{php $search_model = getcache('search_model_'.$siteid, 'search');}
{loop $search_model $k=>$v}
{php $j++;}
<a href="javascript:;" style="outline:medium none;" hidefocus="true" {if $j==1 && $typeid=$v['typeid']} class="on" {/if}>{$v['name']}</a>{if $j != count($search_model)}<span> | </span>{/if}
{/loop}
{php unset($j);}
</div> <div class="bd">
<form action="{APP_PATH}index.php" method="get" target="_blank">
<input type="hidden" name="m" value="search"/>
<input type="hidden" name="c" value="index"/>
<input type="hidden" name="a" value="init"/>
<input type="hidden" name="typeid" value="{$typeid}" id="typeid"/>
<input type="hidden" name="siteid" value="{$siteid}" id="siteid"/>
<input type="text" class="text" name="q" id="q"/><input type="submit" value="搜 索" class="button" />
</form>
</div>
</div>

搜索部分結束
<div class="banner"><script language="javascript" src="{APP_PATH}index.php?m=poster&c=index&a=show_poster&id=1"></script></div>
<div class="bk3"></div>
<div class="nav-bar">
<map>
{pc:content action="category" catid="0" num="25" siteid="$siteid" order="listorder ASC"}
<ul class="nav-site">
<li><a href="{siteurl($siteid)}"><span>首頁</span></a></li>
{loop $data $r}
<li class="line">|</li>
<li><a href="{$r[url]}"><span>{$r[catname]}</span></a></li>
{/loop}
</ul>
{/pc}
</map>
</div>
{if $top_parentid}
<div class="subnav">
{pc:content action="category" catid="$top_parentid" num="15" siteid="$siteid" order="listorder ASC"}
{loop $data $r}
<a href="{$r[url]}">{$r[catname]}</a><span> | </span>
{/loop}
{/pc}
{if $modelid}<a href="{APP_PATH}index.php?m=content&c=search&catid={$catid}">搜索</a>{/if}
</div>
{/if}
</div>


建議下載個opera瀏覽器 他的檢查頁面元素功能超贊!

{template "content","header"}

調用根目錄下phpcms/template/content/header文件
<!--main-->這個是模版註釋!建議一定要養成寫代碼加註釋的習慣

這個是div標簽,不知道什麼是div可以的去網上找些教程學習下,這個都不瞭解就沒必要繼續看了


<!--這裡是pc標簽{pc:content 參數名="參數值" 參數名="參數值" 參數名="參數值"}-->
{pc:content action="position" posid="2" order="listorder DESC" num="4"}

<!--顯示PC標簽中的數據-->

{loop $data $r}

{str_cut($r[title],36)}

{if $n==1}{/if}{str_cut($r[description],112)}

{/loop}
{/pc}

<!--結束標簽-->

 

<!--這裡還是pc標簽-->
{pc:content action="position" posid="1" order="listorder DESC" thumb="1" num="5"}

{loop $data $r}

{/loop}

{/pc}

 


推廣


{pc:block pos="index_block_1"}

{/pc}

 

圖片新聞
{pc:content action="position" posid="12" thumb="1" order="id DESC" num="10"}


{loop $data $r}

{str_cut($r[title],20)}

{/loop}

{/pc}

 

{loop subcat(0,0,0,$siteid) $r}
{php $num++}

 

{$r[catname]}更多>>


{pc:content action="lists" catid="$r[catid]" num="1" thumb="1" order="id DESC" return="info"}
{loop $info $v}

 

{str_cut($v['title'],28)}
{str_cut($v['description'],100)}

{/loop}
{/pc}


{pc:content action="lists" catid="$r[catid]" num="5" order="id DESC" return="info"}

 

{loop $info $v}

·{str_cut($v['title'],40)}
{/loop}

{/pc}


{if $num%2==0}
{/if}
{/loop}

 


公告


{pc:announce action="lists" siteid="$siteid" num="2"}


{loop $data $r}

{$r['title']}
{/loop}

{/pc}

 

 

專題更多>>


{pc:special action="lists" siteid="$siteid" elite="1" listorder="3" num="2"}
{loop $data $r}
{if $n!=1}
{/if}

 

{str_cut($r[title],'18')}
{str_cut($r['description'],50)}

{/loop}
{/pc}

 

 

熱點 | 評論 | 關註排行

 


{pc:content action="hits" catid="35" num="10" order="views DESC"}
{loop $data $r}

{$r[title]}
{/loop}
{/pc}

 

{pc:comment action="bang" num="10" cache="3600"}
{loop $data $r}

{$r[title]}
{/loop}
{/pc}

 

{pc:content action="hits" catid="35" num="10" order="views DESC"}
{loop $data $r}

{$r[title]}
{/loop}
{/pc}

 

 

 

調查問卷更多>>

 

 

 

更多>>友情鏈接申請鏈接

 


{pc:link action="type_list" siteid="$siteid" linktype="1" order="listorder DESC" num="8" return="pic_link"}
{loop $pic_link $v}


{/loop}
{/pc}

{pc:link action="type_list" siteid="$siteid" order="listorder DESC" num="10" return="dat"}

 


{loop $dat $v}
{if $type==0}
{$v[name]} |
{else}

{/if}
{/loop}

{/pc}

 


$(function(){
new slide("#main-slide","cur",310,260,1);//焦點圖
new SwapTab(".SwapTab","span",".tab-content","ul","fb");//排行TAB
})


{template "content","footer"}

養成書寫規範的DIV標簽

搜索引擎優化(seo)中,對代碼的優化也是一個很關鍵的步驟。為了更加符合SEO的規範,下麵是目前流行的CSS+DIV的命名規則:
DIV ID命名
頁頭:header
登錄條:loginBar
標誌:logo
側欄:sideBar
廣告:banner
導航:nav
子導航:subNav
菜單:menu
子菜單:subMenu
搜索:search
滾動:scroll
頁面主體:main
內容:content
標簽頁:tab
文章列表:list
提示信息:msg
小技巧:tips
欄目標題:title
友情鏈接:friendLink
頁腳:footer
加入:joinus
指南:guild
服務:service
熱點:hot
新聞:news
下載:download
註冊:regsiter
狀態:status
按鈕:btn
投票:vote
合作伙伴:partner
版權:copyRight
CSS ID的命名
外套:wrap
主導航:mainNav(globalNav)
子導航:subNav
頁腳:footer
整個頁面:content
頁眉:header
頁腳:footer
商標:label
標題:title

頂導航:topNav
邊導航:sideBar
左導航:leftsideBar
右導航:rightsideBar
標識:logo
標語:banner
菜單1內容:menu1Content
菜單1容量:menu1Container
子菜單:submenu
邊導航圖標:sidebarIcon
註釋:note
麵包屑:breadCrumb(即頁面所處位置導航提示)
容器:container
內容:content
搜索:search
登陸:login
功能區:shop(如購物車,收銀台)
當前的current
樣式文件命名
全站標簽預設樣式:general.css或global.css
佈局版式設計樣式:layout.css或container.css
通用樣式(如文字、表單等):style.css
專欄/頻道樣式:columns.css
列印輸出樣式:print.css
主題模板樣式:themes.css

如何利用v9仿製一個網站
一、準備工具1、
css手冊
2、phpcms手冊
3、dw cs5 沒有的可以用記事本
4、ps
5、屏幕尺子
6、好色鬼
7、網站下載器
8、各種瀏覽器 ie6 ie7 ie8 ie9 火狐 谷歌 Opera Safari 用ie 和火狐基本就夠了
9、有條件的可以準備個php手冊和html手冊
10、亦歌(這個挺好用的聽歌軟體,我每次寫代碼都會打開他聽歌)
11、測試環境沒有下個phpcm v9的集成包
12、還沒想到······想到了在寫(呵呵,為了多寫點·····哈)
二、準備素材
1、用網站下載器下載準備仿的網站文件
2、按照目標網站製作相應尺寸的圖片(如logo)有些需要改,有些不需要改(這裡也是為了多寫點···)

3、還沒想到還需要準備什麼······想到了在寫(呵呵,還是為了多寫點·····哈)
三、開始仿站
1、先打開亦歌聽音樂吧
2、打開需要仿的站,查看頁面源代碼!(在網頁空白區右建就能看到)
3、先找到網頁的css文件(下載下來放到根目錄\statics\css下改名reset.css)為什麼這麼做<link href="{CSS_PATH}reset.css" rel="stylesheet" type="text/css" />
{CSS_PATH}reset.css等於根目錄\statics\css下reset.css文件(如果用網站下載器下載了那麼在下載文件里找到css文件複製過去會更方便)
註:statics目錄下的文件部分是屬於後臺模版的,所以建議新建個目錄放入你自己寫好的css、js或者圖片文件{CSS_PATH}reset.css是後臺的css代碼,這裡千萬別改!改了後臺就跑偏了
4、編輯頭部文件用dwcs 5或記事本打開v9模版目錄下header.html文件。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 用類來實現時間輸入輸出 實參聲明 標準類的方法 ...
  • Collection [I] Collection 層次結構 中的根介面。Collection 表示一組對象,這些對象也稱為 collection 的元素。一些 collection 允許有重覆的元素,而另一些則不允許。一些 collection 是有序的,而另一些則是無序的。JDK 不提供此介面的 ...
  • 在異常界面點SpringObjectFactory.java查看源碼,在 上設置斷電,進行Debug,發現appContext的值為null。這是因為,我們在Spring中配置了Struts2,在項目啟動後Struts自動去Spring容器中拿對象,而此時Spring並沒有啟動,所以要讓Spring ...
  • 本篇文章基於"Java開發小技巧(二):自定義Maven依賴"中創建的父工程``project-monitor``實現,運用我們自定義的依賴包進行多工程依賴項目的開發。 ...
  • 判斷用戶輸入的是否至少含有N位小數。 1.當用戶輸入的是非數字時拋出異常,返回false。 2.當用戶輸入數字是,判斷其數字是否至少含有N位小數,如果不含有,返回false。 3.當用戶輸入的數字的小數位數大於等於N時,返回true。 原文鏈接:http://www.cnblogs.com/lieb ...
  • 1.2、火狐的profile文件記錄信息實現 1.4、萬能驗證碼、去掉驗證碼 萬能驗證碼、去掉驗證碼需要開發的配合 2、等待 2.1、time模塊 2.2、隱式等待 2.3、顯式等待 3、unittest單元測試框架 簡單的unittest框架代碼如下: 可生成html報告的unittest框架代碼 ...
  • 轉自:http://blog.chinaunix.net/uid-21411227-id-1826942.html 1. this指針的用處: 一個對象的this指針並不是對象本身的一部分,不會影響sizeof(對象)的結果。this作用域是在類內部,當在類的非靜態成員函數中訪問類的非靜態成員的時候 ...
  • 要定時或者周期性的執行任務,可以使用linux的crontab。Celery也提供了類似的Periodic Tasks功能。 Celery beat Celery使用celery beat作為任務調度器,周期性的啟動任務。 需要執行的任務預設是在beat_schedule配置選項中設置的。使用dja ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...