Buy Reviews
Powered by MaxBlogPress  

Archive for the ‘php應用’ Category

php drupal 搜尋內容的警告

星期四, 三月 4th, 2010

2010-03-04_143925

主因是Trackback的6.x-1.2跟Spam的6.x-1.0不相容,好像Trackback參考舊的Spam模組,並且會用到spam_tracker資料表的probability欄位,但是Spam的6.x-1.0已沒有這個欄位,所以只能等待Trackback作者可以更新,我看了一下它的開發版本,已經將trackback.module裡的

define(‘TRACKBACK_WITH_SPAM’, module_exists(’spam’));

改成

define(‘TRACKBACK_WITH_SPAM’, FALSE);

這樣就不會有這個錯誤,只是就程式碼的意思來看,好像是要防trackback有垃圾的,所以改了之後,是不是可以防就不得而知了!

subscribe-to-comments 2.1.2 繁體中文語言包

星期五, 十二月 18th, 2009

subscribe-to-comments 是一個非常實用的wordpress 外掛,John Chow在他的free book有推薦使用,允許讀者通過郵件訂閱評論,以保持跟讀者的良好關係。
目前該外掛的版本是2.1.2,可以在最新發布的WordPress 2.3版本下正常工作,我把它安裝在2.8.6的版本上目前似乎也沒有問題。

作者及外掛位址:subscribe-to-comments
外掛下載位址:Subscribe To Comments 2.1.2
漫步提供了簡體中文的語言包下載,包含 mo 及 po 文件,我將它改成繁體中文語言包來下載:subscribe-to-comments

使用方法:
1. 修改wp-config.php 的語言配置項, ‘define (‘WPLANG’, ‘zh_TW’)’ 這是修改後的代碼。
2. 解壓mo 文件到’/wp-content/plugins’ 根目錄下,不要解壓到subscribe-to-comments 外掛目錄下,經ㄚ琪測試,解壓到’/wp-content/plugins’ 根目錄下才有效,可能是外掛的原因。

PicasaWeb API 如何用php寫呢?

星期三, 十一月 18th, 2009

這是在藍色小舖看到的一個懸賞話題,因為我在Blogger有部落格nokia 5800ㄚ琪的Blogger部落格Health Spa,而且有在使用投影片的功能,那是抓Picasa相簿的,我的工作達人則是抓Flickr的,Flickr的api應該也有人在試,這個問題讓我想試試看,Google的這個相簿的api怎樣使用。

用Google可以找到Picasa 網頁相簿 Data API,是中文的喔,但是如果你要檢視最近發佈的用戶端程式庫和範例程式碼,就開始是英文的了,想說繁體的中文翻譯還沒出來喔,看來Google可以找我去做翻譯的工作喔!

內容非常的豐富,但我只針對PHP client library (v1.0)這個部份稍做測試,要在PHP使用PicasaWeb API就需要先裝好Google Data PHP Client Library,其他的AMP環境當然已經假設裝好了,安裝的步驟如下:

  1. 1.下載 Google Data Client Library files.
  2. 2.解壓縮下載的檔案,可以看到四個子資料夾:
    • demos — Sample applications
    • documentation — Documentation for the client library files
    • library — The actual client library source files.
    • tests — Unit-test files for automated testing.
  3. 新增library為PHP的路徑,在 Getting Started with the Google Data PHP Client Library這頁裡有提到三個方法,我就先行修改設定php.ini,也有一些步驟:
    1. 1.用最愛的編輯器開啟php.ini檔。
    2. 2.找到參考PHP路徑的這一行,開頭應該是include_path.
    3. 3.加入你儲存Zend Framework的路徑到列表中,並依照你的作業系統來操作:
      /path1:/path2:/usr/local/lib/php/library

      在Windows則是像這樣:

      \path1;\path2;\php\library
    4. 4.儲存並關閉檔案。
    5. 重新啟動Apache,然後可以在demos找到一個叫InstallationChecker.php的PHP Installation Checker script,順利的話你會看到這樣的畫面:
    6. 2009-11-18_152326
    7. 另外裡面有一隻Photos.php的程式,我猜應該就是跟Picasa相簿有關的程式,就大概看了一下程式碼,很多不過很有結構,所以可以好好的當作範例來玩:
    8. 一開始會出現Please login to your Google Account.這樣的連結,就給它點進去,然後有個要求登入的畫面:
    9. 2009-11-18_111115
    10. 當然你要有Google的帳號,不然玩屁啊!
    11. 2009-11-18_111133
    12. 出現授予存取權限的按鈕給你按!然後就有一些簡單的連結功能可以點選使用:
    13. 2009-11-18_135444
    14. 還不錯玩喔!有需要再詳細解說程式碼!

XAMPP apache

星期一, 十一月 9th, 2009

XAMPPㄚ琪是自從去年五月多進入新的公司後,因為公司的權限卡得很緊,長官又有時間的要求,所以那時就找上XAMPP 1.6.6a來裝的,我唯一看上它的一點就是可以只用解壓縮的方式,就可以在Windows系列的本機localhost上跑,這對不懂Apache、MySQL、PHP的初學使用者可以說是真easy!

那時的版本就有很多工具可以使用了,如下:

Apache 2.2.8
MySQL 5.0.51a
PHP 5.2.5 + PHP 4.4.8 + PEAR
PHP-Switch win32 1.0 (please use the "php-switch.bat")
XAMPP Control Version 2.5 from www.nat32.com   
XAMPP Security 1.0   
SQLite 2.8.15
OpenSSL 0.9.8g
phpMyAdmin 2.11.4
ADOdb 4.96
Mercury Mail Transport System v4.52
FileZilla FTP Server 0.9.25
Webalizer 2.01-10
Zend Optimizer 3.3.0a
eAccelerator 0.9.5.2 for PHP 5.2.5  (comment out in the php.ini)

*系統需求也不會很高:
  + 64 MB RAM (RECOMMENDED)
  + 200 MB free fixed disk
  + Windows 98, ME
  + Windows NT, 2000, XP (RECOMMENDED)

到現在新版的1.7.2已經在八月出來了,相對應的工具有

  • Apache 2.2.12 (IPv6 enabled) + OpenSSL 0.9.8k
  • MySQL 5.1.37 + PBXT engine
  • PHP 5.3.0
  • phpMyAdmin 3.2.0.1
  • Webalizer 2.21-02 + GeoIP lite
  • FileZilla FTP Server 0.9.32
  • msmtp 1.4.17
  • 看來已經有很大的差異了,應該趕快更新一下才好!
  • 對於現在常用Vista的人來說,也有一些注意的事項,有興趣的人可以上他的繁體網頁瀏覽
  • 要下載檔案可以進入
  • EXE (RAR-Sfx)
    44 MB
    RAR 自動解壓縮檔
    MD5 checksum: 14c2e3e35f9792b9aec674548472348b

    ZIP
    84 MB
    ZIP 壓縮檔
    MD5 checksum: 087af5c2e6a936dd90587e0bacc3aef3

    下載這兩種不同的XAMPP Windows 1.7.2安裝方式!

拜請好兄弟好朋友好姊妹投票

星期一, 十月 5th, 2009

之前ㄚ琪參加台江漁人港、養生保健、輕鬆攝取營養的好夥伴徵文活動,結果今天收到了一封電子報摘要內容如下:

10_01

結果老闆說要用投票的方式票選,就像人肉在鉆板上任人宰割了,為一圓ㄚ琪升級伺服器的夢想,懇請惠賜一票!

10_09

主旨就寫魚鬆徵文評比好了

信件內容寫下你心目中最好的部落客,就是』輕鬆攝取營養的好夥伴-ㄚ琪』

評分:5分

還有填妥你的姓名、電話及地址,寄到tjfishman.service@gmail.com即可參與投票,老闆說會送你們禮物,就麻煩你們了!

突然發現WordPress的title有問題

星期二, 九月 29th, 2009

剛剛在<strong>沒有比<b>較好,赫然發現直接在主題輸入 ,竟會產生

2009-09-29_133553

看來在張貼文章的時候,程式不會自動將<strong>及<b>這種HTML標籤作處理,需要自己手動處理輸入成&lt;strong&gt;沒有比&lt;b&gt;較好,這樣才行!

<strong>沒有比<b>較好

星期二, 九月 29th, 2009

今天看到phil ringnalda的這一篇<strong> is not a better <b>,說明了早期WordPress的預設的佈景中,在postmetadata這一段在分類與幾個comments之間有一個|,他說這是“No, really, dude, I mean it: vertical bar!”。
於是乎我就搜尋一下現有的WordPress佈景中是否還有這樣的字串,好在是沒有了,但是對連這麼一個元素都這麼考究的話,ㄚ琪真是佩服!

Wordpress 佈景設計示意圖

星期三, 九月 9th, 2009

這張圖提供了山寨化的架構藍圖,不錯用!

如何做像John Chow那樣的滑動重點文章

星期一, 九月 7th, 2009

看到John Chow的首頁是不是有5篇文章的圖片及說明在那邊滑來滑去,ㄚ琪從原始碼看到,很有可能是jquery.jcarousel.pack.js,這個javascript檔在運作,所以就Google了一下,發現Jesse,的這一篇Featured Post Slider Like The Pros Using jCarousel How To得到很大的幫助,特別情商Jesse允許我翻成中文,供華人同胞使用。

以下是譯文:

最近我在寫關於文章的重點及其對你的SEO工作的重要性,要完成這個需求我在站上使用一個外掛稱作featured content gallery,它是有效的但卻很臃腫、很慢並且跟我在我的站上所測試的很多其他的東西相衝,所以我開始結束這個測試並尋找更有效、更快並且乾淨的的方式來顯示我的重點內容,我搜尋了網路結果沒有找到我想要的,所以我決定自己動手來解決我自己的問題。

現在我已經可以在這個站上執行,而且我將分享如何操作,這樣有這樣需求的人就可以找到並且從中獲益,這個靈感是來自 johnchow.com顯示他的重點文章的方式,所以我開始看它如何在他的站上如何作,這個引導我找到jCarousel以及其他的歷史,只要按照下面的步驟你就可以在你的WordPress使用這個解決方案來讓你的部落格很有威力,就像我在AdminDaily.com這裡所做的這樣。

  1. 下載 jCarousel 按這裡
  2. 解壓縮zip檔,然後將javascript檔 jquery.jcarousel.pack.js上傳到你的伺服器上根目錄下的js資料夾中,(ㄚ琪加註:根據JohnChow的原始碼,其實我另外下載了jquery-1.2.6.pack.js,好像要這樣才能go)
  3. 照著下面的指示新增檔案及修改你的佈景,在做這之前一定要先備份,如果你不備份,錯了,你會死得很慘,哈哈!

首先,我們要新增一個featured.php,然後放在你的wp-content/themes/你要用的佈景/includes的資料夾下,這個檔案有下面的程式,我會個別解釋涵是的每個部份。

在檔案的最上面,我們需要見一個容器給重點文章滑塊用,所以你有一個開頭的div及開頭的無序列表像這樣:

<div id=』featured』>
<ul id=』posts』>

在下面,我們將使用自訂的WordPress查詢來獲得我們想要的文章,開始一個counter計數器來追蹤文章編號,然後開始迴圈來顯示我們的文章,在這個例子裡,我會從Featured類別使用最後5篇文章,你改成你喜歡的。(ㄚ琪註:我又自己改程式為最多人點閱的為重點文章)

<?php $my_query = new WP_Query(‘category_name=Featured&showposts=5′); ?>
<?php $count = 0; ?>
<?php while ($my_query->have_posts()) : $my_query->the_post(); ?>
<?php $count++; ?>

繼續往下面走,我們將要含括程式碼,這個程式碼是迴圈要顯示每篇文章用的,再說一次這只是個範例你可以改成適合你的特殊需求,這是我用在我站上的也是我需要的。

就如你所見,上面的程式碼會從Featured類別查詢最後5篇文章,然後使用while迴圈敘述顯示每篇文章,然後結尾有一個endwhile敘述,假如你想要看看每一段的程式碼,就像這樣:

<li id=』post-<?php echo $count ?>』>
<a href=』<?php the_permalink() ?>』><img src=』<?php echo get_post_meta($post->ID, ‘thumbnail’,true) ?>』 alt=』<?php the_title(); ?>』 /></a>
<h3><a href=』<?php the_permalink() ?>』><?php the_title(); ?></a></h3>
<div>
<p><?php echo get_post_meta($post->ID, ‘feat_txt’,true) ?></p>
</div>
<div></div>
<a href=』<?php the_permalink() ?>』>read more &raquo;</a>
</li>
<?php endwhile; ?>
</ul>

最後,我們加入最後的吳續列表到最後,這會顯示編號按鈕來點擊以顯示文章在滑塊中,編號從1到5,像這樣:

<ul>
<li><a href=』#post-5″>5</a></li>
<li><a href=』#post-4″>4</a></li>
<li><a href=』#post-3″>3</a></li>
<li><a href=』#post-2″>2</a></li>
<li><a href=』#post-1″>1</a></li>
</ul>
</div>

按這裡 來下載完整的featured.php檔來儲存你的的複製上 :-)

目前為止都很簡單吧?現在我們移到我們的佈景檔案這裡作編輯,首先我們要先開始動header.php檔,在這個檔案裡我們需要增加 jCarousel程式,這個程式是我們之前上傳到根目錄下的 js資料夾中的,然後新增特別的函式來控制頁面滑塊的動作,我們也需要限制這個在首頁這裡來節省頁面載入的時間,可以在前面這裡用if (is_home())敘述,要完成這個,只要放下面的程式碼在你的header.php檔的</head>標籤前。 (很明顯的要更改src的部份來配合你的網域)

<?php if ( is_home() ) { ?>
<script src=』http://your.<a href=』http://admindaily.com/recommends/godaddy』 style=』" target=』_blank』 rel=』nofollow』 onmouseover=』self.status=’domain’;return true;』 onmouseout=』self.status=』』>domain</a>.com/js/jquery.jcarousel.pack.js』 type=』text/javascript』></script>
<script type=』text/javascript』>
function mycarousel_initCallback(carousel) {
jQuery(‘#featured .list li a’).bind(‘click’, function() {
carousel.scroll(jQuery.jcarousel.intval(jQuery(this).text()));
return false;
});
};
jQuery(document).ready(function() {
jQuery(『#posts』).jcarousel({
wrap: 『both』,
auto: 10,
scroll: 1,
initCallback: mycarousel_initCallback,
buttonNextHTML: null,
buttonPrevHTML: null
});
});
</script>
<?php } ?>

接下來,我們含括 featured.php檔在你想要顯示的地方使用php include 敘述像這樣:

<?php include (TEMPLATEPATH . ‘/includes/featured.php’); ?>

你可能會想要 featured.php含括在你的index.php佈景檔中,但是歡迎你調整你的品味來修改。

現在我們有上傳檔案,需要修改的東西也好了,我們只要修改我們佈景的css檔新增一些樣式元素,這個部份是最要注意的,我放在這裡的程式碼適合用在我的站上來顯示我要的,你勢必修改這樣式才能適合你的需要,除非你的需要跟我的網站有一樣的寬度及顏色,在這裡另外要注意的,你必須檢查任何相衝的的元素來確認不會跟你現在站上的配置搞混 (只要改變featured.php的名稱及css檔的內容即可)

#featured {
width:100%;
height: 199px;
margin:0 0 25px;
font:1.25em/1.5 georgia,serif;
overflow: hidden;
}
#featured:after {
content:』.』;
display:block;
height:0;
font:0/0 serif;
clear:both;
visibility:hidden;
}
#featured h3 {
font:1.47em/1.1 georgia,serif;
margin:0 0 10px;
color:#1e1e1e;
}
#featured h3 a {
color:#4a8393;
}
#featured h3 a:visited {
color:#4a8393;
}
#featured h3 a:hover,
#featured h3 a:focus {
text-decoration:underline;
}
#posts {
width:636px;
clear:both;
overflow:hidden;
}
#posts li {
float:left;
width:636px;
width/**/:/**/626px;
padding:0 10px 0 0;
}
#posts li.first {
margin:0;
}
#featured .thumb {
float:left;
border:1px solid #d7d7d7;
margin:5px 10px 11px 0;
}
#featured p {
padding:0 0 10px;
}
#featured .more-link {
float:right;
font-size:1.2em;
padding:0 10px;
margin:0 -10px -10px 0;
position:relative;
color:#fff;
background:#404040;
border:1px solid #333333;
}
#featured .list {
float:left;
display:inline;
position:relative;
font-size:.88em;
line-height:2.1;
font-family:arial,sans-serif;
z-index:5;
color:#333;
width:527px;
padding: 0px;
margin:-30px 0 0 0px;
background:#ffffff;
border-bottom: 1px solid #eeeeee;
}
#featured .list li {
float:right;
}
#featured .list li a {
float:left;
color:#333;
background:#f6f6f6;
border:1px solid #eaeaea;
border-right:none;
padding:0 8px;
}
#featured .list li a:visited {
color:#444;
}
#featured .list li a:hover,
#featured .list li a:focus {
color:#fff;
border:1px solid #333333;
border-right:none;
background:#404040;
text-decoration:none;
}
#featured .jcarousel-container {
width:646px;
width/**/:/**/636px;
padding:6px 0 0 10px;
margin:0px;
background:#ffffff;
position:relative;
float:left;
display:inline;
}
#featured .jcarousel-clip {
z-index:2;
position:relative;
overflow:hidden;
width:636px;
}
#featured .jcarousel-list {
z-index:1;
overflow:hidden;
position:relative;
top:0;
}
.oops {
clear:both;
font-size:0;
line-height:0;
width:100%;
overflow:hidden;
display:block;
}

現在我們已經作完了,我們幾乎可以儲存所有的檔案並且開始使用jCarousel顯示這非常cool的重點文章滑動功能,現在要做的就是新增或編輯文章,將文章加到Featured類別,並且在每篇文章裡作一些簡單的設定來提供重點文章滑塊需要的資訊,只要每篇文章照著下面的步驟你就可以顯示你想要的文章在滑塊中。

  1. 新增新的或編輯現有的文章到Featured類別裡 (假如你沒有這個類別就新增它)
  2. 在新增自訂欄位這裡點擊輸入新的名稱,新增一個自訂欄位叫 feat_txt,這樣來顯示你要在滑塊中顯示的文字 (我建議大約20-30個字左右)
  3. 新增另一個圖檔的欄位叫thumbnail,用來顯示你要在重點文章滑塊中顯示的圖檔,並在欄位內容中放入你的圖檔完整 url,在我提供的這篇教學中我使用135px * 135px大小的尺寸來顯示圖檔。

2009-09-07_163051

就是這樣了,假如你有任何問題,請不要猶豫在這裡留言,我會很高興進我所能我會很高興進我所能來幫你。

ㄚ琪因為在使用JohnChow跟這裡的教學混用的時候,會造成滑塊的文章位置錯誤,造成顯示有問題,後來經Jesse的指點,修改樣式元素的名稱,雖然一開始沒有看到正確的顯示,但是後來到別的電腦上看,發現式正常的,才想到可能瀏覽器有cache的問題,所以無法正常顯示,所以將瀏覽器的cache清除,重新執行也就可以正確顯示了!這是山寨化很成功的第一步喔!

山寨版JohnChow佈景工程

星期一, 九月 7th, 2009

這一陣子我將工作達人的new_eve換了,換成想跟很會賺錢的John Chow一樣的佈景,後來發現他是使用JohnChowV6,這個佈景該從哪裡下載?
查了一下style.css的原始碼,發現了一些端倪:
/*
Theme Name: JohnChow 3.0
Description: Premium Theme for JohnChow dot Com
Author: UniqueBlogDesigns
Author URI: http://UniqueBlogDesigns.com
*/
看到佈景的作者是UniqueBlogDesigns,所以就去他的網站看看,發現他的佈景是要錢的,最便宜的一種使用要69元美金喔,換算成台幣大概二千多吧!我想ㄚ琪應該是很窮買不起這個佈景吧!那只好自己打造了!
我是從default的這個預設佈景加上幾個JohnChow的css檔,來改的,另外也需加上幾個plugin,改造後的版面如下:

IE6

2009-09-07_135026

Firefox:

2009-09-07_135508

樣子有點像了,有些版面是我比較不想模仿的,我就沒有照著作,首頁的完成度大概有90%了吧!至於其他的頁面我再慢慢改,還有一些加進的plugin,其實之間也碰到很多的問題,容我之後再報!