如何做網站模版
提問問題
列表
-
如何利用Thinkphp框架開發移動端接口詳解
查看答案>>
-
公眾號這種格式的頁面是怎么做的?點開一個鏈接里面都是文章,還有分
查看答案>>
-
如何修改用織夢做的網站的主頁模板
查看答案>>
-
網頁制作中如何使用PSD模版
查看答案>>
-
網頁制作中如何使用PSD模版
查看答案>>
如何利用Thinkphp框架開發移動端接口詳解
方案一:給原生APP提供api接口使用TP框架時 放在common文件夾下文件名就叫function.php123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180 <?php/*** Created by zhangkx* Email: [email protected]* Date: 2015/8/1* Time: 23:15*/ /****** api開發輔助函數 *******/ /*** @param null $msg 返回正確的提示信息* @param flag success CURD 操作成功* @param array $data 具體返回信息* Function descript: 返回帶參數,標志信息,提示信息的json 數組**/function returnApiSuccess($msg = null,$data = array()){$result = array('flag' => 'Success','msg' => $msg,'data' =>$data);print json_encode($result);} /*** @param null $msg 返回具體錯誤的提示信息* @param flag success CURD 操作失敗* Function descript:返回標志信息 ‘Error',和提示信息的json 數組*/function returnApiError($msg = null){$result = array('flag' => 'Error','msg' => $msg,);print json_encode($result);} /*** @param null $msg 返回具體錯誤的提示信息* @param flag success CURD 操作失敗* Function descript:返回標志信息 ‘Error',和提示信息,當前系統繁忙,請稍后重試;*/function returnApiErrorExample(){$result = array('flag' => 'Error','msg' => '當前系統繁忙,請稍后重試!',);print json_encode($result);} /*** @param null $data* @return array|mixed|null* Function descript: 過濾post提交的參數;**/ function checkDataPost($data = null){if(!empty($data)){$data = explode(',',$data);foreach($data as $k=>$v){if((!isset($_POST[$k]))||(empty($_POST[$k]))){if($_POST[$k]!==0 && $_POST[$k]!=='0'){returnApiError($k.'值為空!');}}}unset($data);$data = I('post.');unset($data['_URL_'],$data['token']);return $data;}} /*** @param null $data* @return array|mixed|null* Function descript: 過濾get提交的參數;**/function checkDataGet($data = null){if(!empty($data)){$data = explode(',',$data);foreach($data as $k=>$v){if((!isset($_GET[$k]))||(empty($_GET[$k]))){if($_GET[$k]!==0 && $_GET[$k]!=='0'){returnApiError($k.'值為空!');}}}unset($data);$data = I('get.');unset($data['_URL_'],$data['token']);return $data;}} 查詢單個果品詳細信息 /*** 發布模塊** 獲取信息單個果品詳細信息**/public function getMyReleaseInfo(){//檢查是否通過post方法得到數據checkdataPost('id');$where['id'] = $_POST['id'];$field[] = 'id,fruit_name,high_price,low_price,address,size,weight,fruit_pic,remark';$releaseInfo = $this->release_obj->findRelease($where,$field);$releaseInfo['remark'] = mb_substr($releaseInfo['remark'],0,49,'utf-8').'...';//多張圖地址按逗號截取字符串,截取后如果存在空數組則需要過濾掉$releaseInfo['fruit_pic'] = array_filter(explode(',', $releaseInfo['fruit_pic']));$fruit_pic = $releaseInfo['fruit_pic'];unset($releaseInfo['fruit_pic']);//為圖片添加存儲路徑foreach($fruit_pic as $k=>$v ){$releaseInfo['fruit_pic'][] = 'http://'.$_SERVER['HTTP_HOST'].'/Uploads/Release/'.$v;}if($releaseInfo){returnApiSuccess('',$releaseInfo);}else{returnApiError( '什么也沒查到(+_+)!');}} findRelease() 方法的model /*** 查詢一條數據*/public function findRelease($where,$field){if($where['status'] == '' || empty($where['status'])){$where['status'] = array('neq','9');}$result = $this->where($where)->field($field)->find();return $result;} app端接收到的數據(解碼json之后) {"flag": "success","message": "","responseList": {"id": "2","fruit_name": "蘋果","high_price": "8.0","low_price": "5.0","address": "天津小白樓水果市場","size": "2.0","weight": "2.0","remark": "急需...","fruit_pic": ["http://fruit.txunda.com/Uploads/Release/201508/55599e7514815.png","http://fruit.txunda.com/Uploads/Release/201508/554f2dc45b526.jpg"]}} app端接收到的數據(原生json串)代碼如下: {"flag":"success","message":"","responseList":{"id":"2","fruit_name":"\u82f9\u679c","high_price":"8.0","low_price":"5.0","address":"\u5929\u6d25\u5c0f\u767d\u697c\u6c34\u679c\u5e02\u573a","size":"2.0","weight":"2.0","remark":"\u6025\u9700...","fruit_pic":["http:\/\/fruit.txunda.com\/Uploads\/Release\/201508\/55599e7514815.png","http:\/\/fruit.txunda.com\/Uploads\/Release\/201508\/554f2dc45b526.jpg"]}}方案二:另外我們還可以通過ThinkPHP實現移動端訪問自動切換主題模板,這樣也可以做到移動端訪問ThinkPHP的模板主題機制,如果只是在PC,只要需修改 DEFAULT_THEME (新版模板主題默認是空,表示不啟用模板主題功能)配置項就可以方便的實現多模板主題切換。但對于移動端與PC端,也許你會設計完全不同的主題風格,且針對不同的來路提供不同的渲染方式,其中一種比較流行的方法是“響應式設計”,但就本人經歷而言,要實現完全的“響應式設計”并不是那么容易,且解決兼容問題也是個難題,假設是大型站點,比如:淘寶、百度、拍拍這些,響應式設計肯定是滿足不了需求的,而是需要針對手機訪問用戶提供單獨的手機網站。ThinkPHP 完全能夠實現,而且非常的簡單。與TPM的智能模版切換引擎相同,只要對來路進行判斷處理就行了。一、將 ismobile() 加入到{項目/Common/common.php} 1234567891011121314151617181920212223242526272829303132function ismobile() {// 如果有HTTP_X_WAP_PROFILE則一定是移動設備if (isset ($_SERVER['HTTP_X_WAP_PROFILE']))return true; //此條摘自TPM智能切換模板引擎,適合TPM開發if(isset ($_SERVER['HTTP_CLIENT']) &&'PhoneClient'==$_SERVER['HTTP_CLIENT'])return true;//如果via信息含有wap則一定是移動設備,部分服務商會屏蔽該信息if (isset ($_SERVER['HTTP_VIA']))//找不到為flase,否則為truereturn stristr($_SERVER['HTTP_VIA'], 'wap') ? true : false;//判斷手機發送的客戶端標志,兼容性有待提高if (isset ($_SERVER['HTTP_USER_AGENT'])) {$clientkeywords = array('nokia','sony','ericsson','mot','samsung','htc','sgh','lg','sharp','sie-','philips','panasonic','alcatel','lenovo','iphone','ipod','blackberry','meizu','android','netfront','symbian','ucweb','windowsce','palm','operamini','operamobi','openwave','nexusone','cldc','midp','wap','mobile');//從HTTP_USER_AGENT中查找手機瀏覽器的關鍵字if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT']))) {return true;}}//協議法,因為有可能不準確,放到最后判斷if (isset ($_SERVER['HTTP_ACCEPT'])) {// 如果只支持wml并且不支持html那一定是移動設備// 如果支持wml和html但是wml在html之前則是移動設備if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === false || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html')))) {return true;}}return false;}二、在{項目/Lib/}創建一個 CommonAction.php,假設你的項目已公共控制器,則無需創建,直接加在里面就行了。 12345678910Class CommonAction extends Action{Public function _initialize(){//移動設備瀏覽,則切換模板if (ismobile()) {//設置默認默認主題為 MobileC('DEFAULT_THEME','Mobile');}//............你的代碼.......}}
公眾號這種格式的頁面是怎么做的?點開一個鏈接里面都是文章,還有分
微信公眾號頁面模板功能需要通才能使用微信頁面模版功能給公眾號創建行業網頁功能插件暫通原創聲明功能微信公眾號申請通原創聲明功能通比較難需要邀請通主申請給家推薦簡單 使用第三功能實現比我用 網站螞蟻Page頁面模板限制微信公眾號類型任何微信公眾號都使用需認證需通支付需通原創 功能強特別簡單
如何修改用織夢做的網站的主頁模板
\DedeAMPZ\WebRoot\Default\templets\default,找到你安裝的根目錄,然后按照我給你的路徑,找到index.htm,這個是主頁,如果你對HTML和css熟悉,你應該打開就看得懂了,里面凡是帶dede的,說明都是織夢的調用標簽,你可以不用理會
我直接修改模板里面的html和css代碼就可以了對嗎?那我怎么查看修改后的效果呢?
如果是在本地調試的,直接輸入127.0.0.1,就可能看到效果
網頁制作中如何使用PSD模版
其實標準的網制作完成的工作實際是:psd to html,一般情況下,我們會拿到美工的psd,這時候不同的人會有不同的做法: 1.打開fireworks將圖片切割導出為html。 2.直接在dreamweaver之類的工具去拖拉布局,導入相關的圖片,flash資源。 3.先在ps中完成切圖后,在文本編輯器中看著效果圖一步步的制作。 以上是大多被采用的方法,但都不好: 第一種方法最為不好,這樣的代碼根本不具維護性和可讀性。 第二種方法也不好,代碼難免會有冗余,做出來的東西基本需要排查一遍。 第三種方法也不好,因為你需要看效果圖一點點的拼,也就是說寫html標簽的時候,你在不斷的假設這塊要怎么去顯示。 正確的做法是: 1.拿到psd后,先不要做別的,直接在文本編輯器中將網頁的框架寫出來,不要假設這塊將來css要去怎么渲染,完全自然化的標簽,不加任何的css。 2.寫完之后在各個瀏覽器運行之后確保大體定位都沒有問題。 3.書寫總體css,這里的css只負責大塊的定位及樣式。 4.切出需要的圖片資源,在寫好的框架中一點點的去構造,不斷的調試,最終為成品。 5.最后,為自己的代碼添加注釋,在css,html中都要合適的為自己的代碼添加注釋。 要想做出能靈活切換皮膚,讓css主導表現,還有很多要注意的地方,但大體的流程就是這樣的,當然我們一開始不能直接就做到先寫html,但起碼要有這個意識,循序漸進。。。謝謝熱心會員"linxz"提供實際經驗,我貼上來供大家參考:PSD出網站從兩個大點考慮一、一個獨立的頁面1、分析這個頁面,先在腦袋中或者草稿紙上描繪大概的結構2、根據設計稿的的情況,分析背景圖的分布、ICO圖的分布等3、切割相應的圖片,導出、合并圖片4、在編輯器中寫整體結構XHTML代碼,包括頁面中出現的所有元素的結構5、編寫CSS樣式中的整體以及模塊代碼6、細節調整7、收工,瀏覽器驗證是否正確二、由多個頁面組成的小站點或者大站點1、瀏覽所有設計稿,統一規劃站點模塊、圖片、文件分布2、開始第一點的操作,但規劃站點的內容分布很重要整體考慮點:圖片的合并,減少請求量結構的合理性,語義化樣式的簡潔,便于后期維護多為后期的維護以及程序開發著想,如何簡單實現效果
參考資料:
http://www.wzsky.net/html/Website/Experience/107671.html
網頁制作中如何使用PSD模版
其實標準的網制作完成的工作實際是:psd to html,一般情況下,我們會拿到美工的psd,這時候不同的人會有不同的做法: 1.打開fireworks將圖片切割導出為html。 2.直接在dreamweaver之類的工具去拖拉布局,導入相關的圖片,flash資源。 3.先在ps中完成切圖后,在文本編輯器中看著效果圖一步步的制作。 以上是大多被采用的方法,但都不好: 第一種方法最為不好,這樣的代碼根本不具維護性和可讀性。 第二種方法也不好,代碼難免會有冗余,做出來的東西基本需要排查一遍。 第三種方法也不好,因為你需要看效果圖一點點的拼,也就是說寫html標簽的時候,你在不斷的假設這塊要怎么去顯示。 正確的做法是: 1.拿到psd后,先不要做別的,直接在文本編輯器中將網頁的框架寫出來,不要假設這塊將來css要去怎么渲染,完全自然化的標簽,不加任何的css。 2.寫完之后在各個瀏覽器運行之后確保大體定位都沒有問題。 3.書寫總體css,這里的css只負責大塊的定位及樣式。 4.切出需要的圖片資源,在寫好的框架中一點點的去構造,不斷的調試,最終為成品。 5.最后,為自己的代碼添加注釋,在css,html中都要合適的為自己的代碼添加注釋。 要想做出能靈活切換皮膚,讓css主導表現,還有很多要注意的地方,但大體的流程就是這樣的,當然我們一開始不能直接就做到先寫html,但起碼要有這個意識,循序漸進。。。謝謝熱心會員"linxz"提供實際經驗,我貼上來供大家參考:PSD出網站從兩個大點考慮一、一個獨立的頁面1、分析這個頁面,先在腦袋中或者草稿紙上描繪大概的結構2、根據設計稿的的情況,分析背景圖的分布、ICO圖的分布等3、切割相應的圖片,導出、合并圖片4、在編輯器中寫整體結構XHTML代碼,包括頁面中出現的所有元素的結構5、編寫CSS樣式中的整體以及模塊代碼6、細節調整7、收工,瀏覽器驗證是否正確二、由多個頁面組成的小站點或者大站點1、瀏覽所有設計稿,統一規劃站點模塊、圖片、文件分布2、開始第一點的操作,但規劃站點的內容分布很重要整體考慮點:圖片的合并,減少請求量結構的合理性,語義化樣式的簡潔,便于后期維護多為后期的維護以及程序開發著想,如何簡單實現效果
參考資料:
http://www.wzsky.net/html/Website/Experience/107671.html