Month: July 2013

Using Static Context in CodeIgniter

Posted by – July 8, 2013

前些時候在專案開發時寫了一支 API,其中大部份的方法是以 static 方式呼叫的。

最近想把這支程式放到 CodeIgniter 裡當 Library 用。第一次在 CI 呼叫 static method,用起來還挺簡潔的。

<?php
  $this->load->model('user');
  $user = User::get_by_email_address('qoding@example.com');

  // print all of the comments by the user
  echo "<h2>Comments by $user->name</h2>";
  foreach ($user->comments() as $comment) {
    echo "<p>$comment->body</p>";
  }
?>

 

Mac OS X: How to verify a Hash digest?

Posted by – July 3, 2013

Mac OS 內建了一些校驗文字或檔案 Hash 值的指令,不過我常用的只有 md5。這天需要用 SHA1 的時候一整個想不起來要用什麼指令... XD

來彙整一下這些指令好了...

先從基本的 md5 開始。

計算檔案的 md5:

$ md5 example.jpg
MD5 (example.jpg) = e9f598ee0208e6757dc583303a05847a

計算字串的 md5:

$ md5 -s "password"
MD5 ("password") = 5f4dcc3b5aa765d61d8327deb882cf99

計算檔案的 sha1:

$ shasum example.jpg
61350660b5c4554d846cca893c09eb05e61cb223  example.jpg

其他雜湊公式:

$ openssl sha1 --help

 

WordPress: Use Custom Fields As References

Posted by – July 2, 2013

一直想在每篇文章的底下加個 Reference 的欄位,畢竟每篇文章的誕生都是參考了許多前人的經驗彙整而成,如果不能留下 References 來源實在是對不起這些樂於分享的前輩們,對於花時間找來的資料也無法留下蛛絲馬跡。

這天終於有空來思考一下怎麼做這個功能。

我以前有寫過 WordPress Theme 的經驗,打算用 WP 內建的 Custom Field 搭配 Theme 來實現這個功能。

WordPress 3.x 的文章編輯功能底下會一塊 Custom Fields 區域,可以讓使用者自行填入額外的資訊。這些資訊預設並不會出現在畫面上。

wordpress_post_custom_fields

不過這些資訊可以透過 WP API 叫出來,這邊示範用 get_post_custom_values() 來達成。將以下程式碼貼在 theme 的 single.php 檔案中,位置就隨各人嘗試了,畢竟每個 theme 都長得不一樣。

<div data-role="references">
<?php $refs = get_post_custom_values('reference'); ?>
    <h3>References:</h3>
    <ul>
    <?php
        foreach ($refs as $ref) {
            $arr_refs = explode("\n", $ref);
            foreach ($arr_refs as $re) {
                echo '<li><a href="'.$re.'" target="_blank" style="font-size: .8em;">'.$re.'</a></li>';
            }
        }
    ?>
    </ul>
</div>

reference 這個欄位名稱是自己取的,參考資料只簡單地 Enter 分行而已。改天再想想怎麼強化。最後呈現的結果會像底下這樣...