使用EaglePHP打造自己的網站(非PHP程式員的菜鳥使用手冊)

來源:互聯網
上載者:User

此篇文章和我的部落格網站的文章幾乎一致,並且我的網站上的文章會持續更新,如果需要看最新的內容要去我的網站。(更新2塊地方太累)

對eaglePHP進行修改,形成了我現在的網站,我網站的地址,可以比較比較修改前和我的網站的區別。再來個網站(2013-1-30):

上篇Apache2.2+MySql5.5+PHP5.4的安裝和配置(windows)說了怎麼配置php環境,這篇文章講怎麼使用開源php的構架---eaglephp。

本篇文章介紹如何使用開源部落格代碼

1.首先登入http://www.eaglephp.com/pub/下載原始碼(右上方),截至我下載時,最新版本是v2.0,

我們再安裝eaglephp!

2.匯入資料庫到MySQL中

使用一切配置好後,在瀏覽器中輸入localhost就會出現安裝嚮導。請輸入正確的mysql的使用者名稱(預設有root管理使用者名,我們又可以自己建立)和password

【進階:

如果發生意外,你想重新安裝(或者原先網站崩潰,但你儲存了資料庫.sql檔案,如果是壓縮的解壓縮後也可以獲得eaglephp.sql檔案),可以刪除EaglePHP2.0\Data\_install下的INSTALL.LOCK檔案,eaglephp就會引導你重新安裝!這時你可能遇到另一個問題,那就是如果之前安裝時你選擇添加表首碼比如eag_。這裡有2種方法,仍選一種

方法1.你安裝時可以選擇不添加表首碼(不填那一項)。然後安裝,出現錯誤不用管,然後開啟EaglePHP2.0\Conf下的DbConfig.php檔案把'dbprefix' => ''改為'dbprefix' => 'eag_',重新載入伺服器,這樣網站又能運作。

方法2.你安裝時依舊選擇添加同一個首碼,比如eag_,安裝好後,進入phpmyadmin下,點擊eagle資料庫,全選所有表,對選中項修改表首碼(這些選項都在頁面最下方)把eag_eag_改成eag_重新載入就沒問題了。】

【進階:

MySQL的命令列操作(以備不時之需)

在開始中找到MySQL 5.5 Command Line Client.exe

mysql>dropdatabase eaglephp; //刪除原來的eaglephp資料庫,第一次安裝不用做做這個。

mysql>createdatabase eaglephp;//建立新的資料庫

mysql>useeaglephp;//進入這個資料庫中,一定要寫這句

myslq>source I:\EaglePHP\Pub\install\data\eaglephp.sql

(可能不在這個檔案夾裡,但EaglePHP檔案夾裡肯定有eaglephp.sql這個檔案)

//匯入資料庫檔案內容

這時則匯入了。如果失敗了就關掉,重新匯入一次!(我這裡必須這樣做)然後進入檔案夾C:\ProgramData\MySQL\MySQLServer 5.5\data\eaglephp下看到匯入好的資料!】

如果之前都沒有問題,那麼在瀏覽器中輸入localhost則,出現了EaglePHP的頁面。熟悉一下後,我們登入後台!

使用者名稱是admin,密碼是123456。還有另一個使用者名稱guset及密碼123456,對應了訪客。自然,我們進去後要把admin的密碼改掉! (進入後,右上方就有”修改密碼的按鈕,點擊修改即可!”)

先熟悉一下這個後台管理頁面,它被稱為CMS後台管理。一方面確實強大,另一方面,也顯得複雜。好的下面一起看看有哪些重要功能!

顯然,”添加新聞”、”添加分類”、”相簿管理”等是一些常用的功能。下面一個一個開始使用,看看效果!

(1)添加新聞

輸入標題和內容,點擊右下角的添加!發現必須選擇”類型” 才行,缺少欄位時,eaglePHP用了紅色標註,這點很方便。隨便選一個,然後發現出現錯誤,錯誤大概這樣描述[2012-07-19 16:40:34]SQL[256]Field 'img'doesn't have a default value[SQL]:INSERT INTO`news`(`title`,`type`,`rank`,`auth`,`source`,`clicknum。。。。

也就是說img欄位不可為空了,這個是mysql版本造成的(boss開發的mysql版本是5.5.16,我的是5.5.20),設定img欄位可為空白就行了。我們得進入資料庫修改下。開啟phpMyAdmin(之前文章說明了如何安裝),點擊news表(可能有一個eag_的表頭,你應該能認出來),再點擊上方的結構,點擊修改,對彈出來的框往右拉,找到“空”這個複選框,打勾,儲存。

這時你肯定急切的想看到網頁是否更新,但F5重新整理後沒有任何變化,此時我們需要在後台系統中選擇”應用中心”à系統管理à緩衝更新—>清空緩衝數(少了‘據’這個字把)。這樣再次重新整理,首頁和對應的頁面就會出現新加入的文章!

添加圖片:

eaglePHP添加圖片看上去只能通過串連的方式添加,這是為了節省大小。但我們你可以把映像存到剪貼簿中,直接黏貼到文章中也可以顯示。眾所周知QQ的截屏功能是不錯的。(如果ctrl+v不行,就右鍵黏貼,這取決於瀏覽器是否支援)下面詳細描述片的添加,截止目前為止(eaglePHP2.0),第一張圖片必須通過上傳方式,而不能通過剛才說的複製黏貼的記憶體方式匯入映像。

從控制項視窗中找到圖片這個控制項,點擊上傳

再點擊添加檔案,支援jpg,jpeg,gif,pgn格式,可以看到都是壓縮格式的圖片,為了節約網路空間。我是建議使用jpg檔案,一般情況下他比png圖片更小。(我這個文章中的圖片也都是jpg格式的)

添加了幾個檔案後,再點擊開始上傳。圖片會按順序上傳顯示出來,我們再提取第一張圖片為縮圖!

清空緩衝後,我們來看看:

果然縮圖顯示效果不錯,雖然是靜態圖片,但已經很不錯了。即使你上傳動態圖片gif作為縮圖,依舊沒用。但如果gif動態圖片不作為縮圖,則可以良好的顯示。說明目前eaglePHP還沒完善支援縮圖的gif圖片。

重新整理緩衝後,我們開啟剛才添加圖片的網頁,發現多了一個表徵圖

這裡應該會eaglePHP沒有處理好,我們可以修改文章刪除這個未成功載入的圖片,不會影響縮圖的顯示。

對於圖片添加做個總結:圖片最好通過控制項上傳!如果你是用qq的截屏功能,添加圖片,但不能作為第一張映像,但這樣的圖片添加會很占空間,不建議使用。(具體知識學習影像處理的同學會懂一些)

(2)添加視頻

我們開啟一個優酷視頻,點擊收藏左側的下三角,看到flash地址,點擊複製,此時地址就複製到系統的剪貼簿中。

進入eaglePHP檔案進行編輯:按ctrl+v填上地址,注意最後副檔名是.swf

然後我們可以看到視頻被載入了!

如果要刪除,按Backspace鍵刪除即可,如果不能刪除,選擇添加或者修改後再開啟這個檔案按Backspace,就和word中編輯文字一樣簡單。

如果要看效果,記得清空緩衝哦~

(3)添加圖片

要添加圖片首先要”添加相簿”,相簿添加好後,再上傳圖片,圖片可以一次上傳多張(使用人人傳過圖片的話,你應該瞭解怎麼操作來選中多個檔案),也可以一個一個的添加,最後點擊”上傳”按鈕,把圖片傳入這個相簿中。圖片上傳後,卻不用清空緩衝也能看到。eaglePHP的圖片顯示效果可是很美麗的!

(4)廣告管理

廣告管理就對應了首頁最上方的不斷變化的圖片,顯然這是網站最重要的地方。eaglePHP支援圖片顯示,並且點擊圖片後可以跳轉到另一個連結。這些廣告你可以刪除掉,也可以不讓它暫時顯示,這些選擇確實不錯。至於怎麼串連到自己的網站頁面,我還沒試過,等我的網站上線後,有了自己的網域名稱,我試試看。

(5)評論管理

這裡可以統一管理網民對你任何文章的回複,並且是按照最新回複時間拍好的。當然只支援文字回複,但已經十分方便!我們以管理員身份回複後,不用清空緩衝,直接重新整理頁面就可以看到回複了。這裡比較強大的是,我們在CMS後台管理中可以改動別人回複的文字,也可以看到評論人的郵箱地址等內容。雖然回複對於網站管理者容易看到最新的回複,但對於上網瀏覽的使用者發現站主是否回複自己的留言,eaglePHP還沒有這個功能。我覺得可以預設發個郵箱給他,如果他不想知道有沒有回複,可以給個假郵箱地址即可。

(6)音樂管理

目前很多音樂都很難下到了(找不到完全的連結地址),如果要加入音樂可以考慮在一些免費空間中申請網盤,把歌曲存入,再擷取歌曲連結地址即可!eaglePHP給的例子是在http://s1.mjbox.com申請一個空間,再上傳幾首歌上去,再擷取外鏈,但外鏈的時間只有一個星期左右,很容易到期。

經過嘗試,我發現http://www.airsina.net/webupload/還是不錯的,起碼它的外鏈可以儲存3個月。但還有更給力的!

那就是windows live,但也稍微要5~10分鐘學習時間,http://tieba.baidu.com/p/1735575571 (或者我的串連http://blog.csdn.net/guoming0000/article/details/7764709)詳細介紹了如何使用微軟的雲空間來擷取永久外鏈,經過我的實踐,確實可行!大小是7G。但下載速度可能不是非常流暢,有待考證。(學校網速太快,沒有參考價值)

另外必須注意的是,v1.8的音樂名字必須為中文名字,名字中有英文或者數字都不行!而歌手名字無所謂!

(7)修改頁下內容

在EaglePHP\App\Home\View\Include\foot.tpl中可以修改

注意還有改成自己的qq哦,也就是把408865477這個qq號換成自己的。如果你不想要他,那就刪掉

,自然包括這二個括弧。

同樣修改網頁最上面一行的內容,就是有留言反饋,往期微博等的串連的則開啟同一路徑下的head.tpl檔案進行修改~

(8)修改分類(也就是網頁首頁的分類)


這一步是非常重要的,需要你自己去熟悉。一般都父節點,子節點(或者說主目錄、父目錄),即使主目錄名字被刪掉,子目錄下存放的文章也沒有事情的,所以不用擔心更改頁面主目錄時,會丟失內容。

(9)更換no_img的表徵圖

自己試試看吧

(10)設定微博秀!

EaglePHP的微博是群主的微博,自然得換成自己的微博了!我目前知道新浪微博支援‘微博秀’(開啟新浪微博à帳號à我的工具à微博小工具à微博秀),找到這個玩意,自己設定下,然後點擊複製代碼,擷取內嵌程式碼。在檔案subContent.tpl中替換掉boss的代碼!

(11)修改頁面分類上的”案例”和”收藏”

這二個東西真心用不到,在(7)中我們說過head.tpl這個檔案,可以看到有一行

  • 案例

    沒錯就是他顯示案例這個分類的,我們把它注釋掉!如下:

    中,這個就是html中的注釋方法。

    (12)頁面排版效果

    主要在EaglePHP2.0\Pub\home\css下的base.css中有定義

    我覺得網站logo不夠大,我們改一下它的大小,檔案中搜尋header這個關鍵詞,他就是logo大小的樣式,我改成如下形式:

    #header h1 {float:left; display:inline;margin-left:8; margin-top:5px; width:241px; height:80px; overflow:hidden;background:url(../imgs/logo.png) no-repeat 0 0; text-indent:-9999px;line-height:normal; }

    #header h1 a { display:block; width:239px;height:78px; overflow:hidden; }

    #header h2 { display:none; }

    第一個是顯示大小,第二個是串連範圍的大小,你可以試試看就明白。

    使用的一些問題

    我又發現新聞圖片和分類欄相隔比較遠,於是把height=96改成86,這樣緊湊點了,但不能太小,否則搜尋欄會出現移動。(代碼在#header h1的上一行)

    #header { position:relative; height:66px;z-index:999999; }

    右側欄的風格設定在檔案pub\home\css\index.css中,特別是subContent,tabContent等

    (13)關閉後台中的天氣預報

    再使用eaglePHP時,每次進入後台管理,經常會發生問題!多次實驗發現是天氣載入的原因,這個天氣本來是蠻好的,但嘗嘗因為它的載入失敗,導致我們無法進行後台管理,這讓人十分不開心。在EaglePHP2.0\App\Admin\View\Index或者EaglePHP1.8\App\Admin\View\Index下找到檔案index.tpl,看到176行左右有個

    結構,其中有”選擇市”等一些文字,注釋掉!從176到190行左右使用<-- --="">

    (14)根據文章更新時間對博文進行排序預設的排序方式是以建立時間排序的(create_time),如果要以更新時間(一般情況下,以這個時間更有意義一些。特別是在有些文章進行後續大範圍的更新上,十分有用。如果這時它不能顯示到最新的列表,讓人不開心)要做到這個開啟App\Home\Model\NewsModel.class.php檔案對其中的"或許新聞列表"的函數public function getList($perpage = 15)進行修改,可以找到$news_list的定義,我們把那行話改成這樣!(懂SQL的一眼就明白了)$news_list = $this->field('id,title,type,description,img,create_time,update_time')->where($sql)->order('rank ASC,update_time DESC')->limit("{$page->offset},{$perpage}")->select(array('cache'=>true));然後文章就會按照update_time進行排序。而文章列表的時間還是以create_time作為顯示的,如果你不希望這樣,可以對App\Home\View\Include下的mainContent.tpl進行修改把create_time換成update_time即可。
    我改成

    {{$news_list[loop].update_time|date_format:"%Y-%m-%d %H:%M"}}

    這樣效果就是2013-1-30 12:12這樣子。

    資料庫相關:

    1.MYSQL資料表名稱修改 RENAME TABLE tb_name TO new_name;

    使用用EaglePHP

    1.無法更新—>清空緩衝

    eaglePHP 15:36:01
    前端已經對分類及文章列表的查詢結果集做了緩衝處理,後台操作資料後,需要在應用中心 - 系統管理 - 清空緩衝。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.