顯示具有 wordpress 標籤的文章。 顯示所有文章
顯示具有 wordpress 標籤的文章。 顯示所有文章

2011年10月8日

備份用 linux 指令

將遠端 www.xxx.tw 電腦之目錄備份至近端 A 電腦 /home/yyy 目錄
rsync -av --delete 帳號@www.xxx.tw:/var/www/ /home/yyy

將 /var/www 壓縮至 *.tar.gz
tar czvf /home/存檔目錄/檔名-`date +%Y%m_%H%M`.tar.gz /var/來源目錄

其中
   `date +%Y%m_%H%m` 這個字串會自動產生日期+時間的檔案.tar.gz

詳細指令選項說明, 可參見: Rsync 指令參數


例如:
同步備份資料 (記得最後要加 / )


rsync -avtu /source/ /destination/

其中
-a archive
-v verbose
-t keep time stamp 保持原有的時間標記
-u skip newer file in destination 若目標子目錄中有較新的檔案, 則跳過同步
--delete 刪除傳送端已經不存在,而目的端存在的檔案

-a, --archive archive mode 權限保存模式,相當於 -rlptgoD 參數.



 


2011年10月4日

phpmyadmin 的下載儲存之檔案名稱樣式

__DB__-%G_%m%d_%H%M

使用此樣式, 下載資料庫備份 *.sql 檔時, 不用每次再自已填年月日等檔名

註:
__DB__: 資料庫名稱
%G: 年 (4位數)
%m: 月 (2位數)
%d: 日 (2位數)
%H: 時 (2位數)
%M: 分 (2位數)

2011年3月23日

把 WP Content Slide 變成「側邊欄輪播」 (siderbar slide) 顯示

親自測試於 WP 版本: 3.1
我是在儘量不要寫 PHP 程式碼的情況下. 組合了幾個 wordpress 的 plugin 達成此側邊欄輪播功能 (或許有其它 plugin 可以有同樣的效果, 知道的人請通知一聲...)
image
需要的 plugins:

1. WP Content Slide

在 wordpress 中的 plugin 名字是 Content Slide Plugin。這個 plugin 的啟用, 需要用要一點點 WP 的程式碼才能順利顯示 (下文中會說明)。
裝好之後, 要修改 WP Content Slide Options: image width (寛度) 、height (高度),也可以設標題字的大小。
image
再來是設圖片轉換效果; Squares per width/height 是馬賽克效果的切割數 (下圖例中的是切成 5X5 格來顯示轉換效果); 格子太多, 會轉換地比較慢。另外就是要不要顯示圖片下方的黑色小方塊, 用來直接看某一張圖片。
image

接著是「圖片來源」的設定
image
看你是要用網內的文章分類 (category) 來輪播, 還是給一些圖片的網址
image
若選「Yes, Custom Images」, 則最多可輪播 5 張圖片, 設定方式如下
image
若選「No, Using Posts from a Category」, 則還有一個很重要的選項設定, 就是要顯示哪一類的文章t: Select a Category: 你如果已有訂定一些分類, 即可在以下的畫面看到其它的分類。
image
設定好要記得按「Save Settings」。

2. Shortcode Exec PHP

這個 plugin 是用來簡單地在 wordpress 執行 PHP 碼, 可用 short code 的方式重覆使用; 下面是它的編輯畫面: 第1 個是原始範例, shortcode 是用中括號 [hello_world]; 第2個則是我自己寫的, 配合前述的 Content Slide Plugin 來使用, shortcode 是 [sld], 等一下在第 3 個步驟中的 plugin 要用到的。
image
[sld] 的程式碼貼在下方, 以利讀者使用。
[code]
if(is_front_page())
{
if(function_exists('wp_content_slider')) { wp_content_slider();}
}
[/code]

is_front_page()

其中的第1行是判斷是否在首頁的 WP 內建函數 ;

if(function_exists('wp_content_slider'))

則是判斷 Content Slide Plugin 來有沒有安裝;

wp_content_slider()

這個則是用來顯示  Content Slide Plugin。

3. Widget Entries

第 3 個用的是「Widget Entries」, 這個 plugin 可以運用簡單的 PHP碼, 自行創造方便使用於各種 theme 中的 widget; 編輯 widget 的畫面很像傳統的 wordpress post, 所以它應該可以搭配其它 widget 做出很有趣的側邊欄。
自行命名一個 widget, 我的例子是叫「myWidgets1」, 然後填入內容文字區。注意,不要在「預覽」模式下填; 請改選「HTML」後, 再填入 [sld] (如下圖)
image

4. 將你自建的 widget 加入側邊欄

最後一個步驟, 就是回到 WP 佈景主題下的模組, 將 widget entry 拉到你想要放的 Siderbar 中。這樣就完成了!!! (不要勾選 Show post title 比較好, 因為它會把 title 顯示在圖片下方)。

image

2011年3月7日

wordpress 在 ubuntu 10.04 下的內建圖片編輯功能 (image editor)

wordpress 在 ubuntu 10.04 下的內建圖片編輯功能 (image editor)是不能用的, 必需在架好 wordpress 之後, 再自行用 synaptic 加安裝 php5-gd (會自動同時安裝 libt1-5), 安裝完之後,重啟 apache2
   sudo /etc/init.d/apache2 restart
就可以在上傳圖片時 (或媒體庫) 的畫面圖片下方, 看到 “編輯” 這個按鈕了!

To enable (built-in) ”image editor“ in wordpress under ubuntu 10.04, you have to install "php5-gd" module (automatically along with "libt1-5")。

2011年3月3日

Wordpress 的上傳檔案大小限制

Wordpress 的上傳檔案大小限制為 2M, 不夠的話, 在 ubuntu 下要修改

sudo gedit  /etc/php5/apache2/php.ini

然後在 php.ini 中修改以下的設定 (等號後的數字只是參考, 請依你自己的需要更改)


max_execution_time = 300
max_input_time = 600
memory_limit = 160M
post_max_size = 500M
upload_max_filesize = 600M

(注意: upload_max_filesize 要大於 post_max_size 的數值)

最後別忘了重新啟動 apache, 在 ubuntu 終端機中下指令

sudo /etc/init.d/apache2 restart

2010年12月20日

Better RSS Widget for Wordpress

*source: Better RSS Widget
Better RSS Widget 這個 wordpress 的外掛還滿好用的, 它可以將 RSS 放在 sidebar 或正文 (post) 當中, 不過放在 sidebar 好像會讓網頁開啟變慢...

short code 的用法
[better-rss feed=http://careercycu.wordpress.com/feed/ show_date=1 show_summary=1 excerpt=100 items=5]
參見 Support 討論頁

2010年12月15日

控制 wordpress 文章的中文摘要 (expert) 字數

在 function.php 中加入以下的 php 碼

[code]
function utf8_trim($str) {

    $len = strlen($str);

    for ($i=strlen($str)-1; $i>=0; $i-=1){
        $hex .= ' '.ord($str[$i]);
        $ch = ord($str[$i]);
        if (($ch & 128)==0) return(substr($str,0,$i));
        if (($ch & 192)==192) return(substr($str,0,$i));
    }
    return($str.$hex);
}
function mul_excerpt ($excerpt) {
     $myexcerpt = substr($excerpt,0,500);
     return utf8_trim($myexcerpt) . '... ';
}

add_filter('the_excerpt', 'mul_excerpt');
add_filter('the_excerpt_rss', 'mul_excerpt');
[/code]

wordpress 要怎樣才會有 特色圖片

有時裝上某些 theme 會有 "設定特色圖片" (thumbnail) 但有些沒有...
在 主題編輯器下 (theme editor) 的 function.php 中加入下列一行 PHP 指令, 即會跑出 "設定特色圖片" 選項了!

add_theme_support('post-thumbnails');

2010年12月11日

安裝 wordpress 在 ubuntu 10.04

上次發現將 wordpress 安裝在 ubuntu 10.04 上, 媒體檔案上傳時,就可以用中文檔名 (在 windows 平台上不行),但要安裝佈景主題 (theme) 或外掛 (plugin) 時,竟要輸入 “Connection Information“ :

Hostname:127.0.0.1
FTP Username:
FTP Password:
Connection Type:
等資訊。這在安裝在 windows 平台時是沒見過的。看起來是要 ubuntu 上裝一個 FTP server。
在 Google 一番之後,我安裝了 vsftp, 並修改了 /etc/vsftpd.conf 這個預設的資訊檔, 裡面多半採用預設值即可,只有一個特別要注意的是

#local_umask=022

要特別加上 # 號,否則會出現:

Could not create directory. /var/www/wp-content/XXX ...

這種問題。本以為是目錄權限設定不好,但弄了很久,才猜到可能是上述的 FTP 上傳後 unmask 的問題,加上#之後,果然就正常了!

註:
1. vsFTP 帳號用原來的 ubuntu 帳號即可
2. 重新啟動 vsFTP 的指令:

sudo /etc/init.d/vsftpd start
3. 其它參考指令
netstat -ntulp |grep 21
netstat -ntulp |more
sudo /etc/init.d/apache2 restart

4. /etc/vsftpd.conf 檔中的重要內容
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
#local_umask=022
#anon_upload_enable=YES
#anon_mkdir_write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
#connect_from_port_20=YES
#chown_uploads=YES
#chown_username=whoever
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem

2010年11月10日

Wordpress MU 的設定

程式名稱:WordPress MU
官方網站:http://mu.wordpress.org/
程式下載:按這裡
備註事項:從WordPress3.0起整合於WordPress,所以直接下載WordPress。
假設你己裝好 Apache, PHP5, mySQL
  註: 要開始設定 WP, 首先要連上的網址是:
       http://xx.xx.xx.xx/wp-admin/
       才會啟動以上的設定程序

1. 要先安裝 WP 的單人版 (可參見: 如何架設安裝WordPress部落格?)
2. 裝好後, 修改 WP 目錄中的 wp-config.php, 在以下
    /* That’s all, stop editing! Happy blogging. */
    的上方加入一行:
define('WP_ALLOW_MULTISITE', true);
請另在「/var/www/wp-content」目錄下新建一個資料夾「blogs.dir」並設定資料夾屬性為「777」,讓用戶可上傳檔案。

3. 重新整理部落格後台,點擊左方【工具】 (Tools)→「網誌網路」(Network),進入後請將網誌網路的標題和聯絡信箱設定好,並點擊﹝安裝﹞(Install)。
  重新安裝一次 WP 時, 要刪除原在在 mySQL 中已建好的 schema (資料庫), 再重新建 schema)

4.  在剛剛改過的 wp-config.php 中相同的位置, 加入以下:
即在這一行 define('WP_ALLOW_MULTISITE', true); 的下方, 加入
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', false ); $base = '/';
define( 'DOMAIN_CURRENT_SITE', 'xxx.xxx.xxx' );
define( 'PATH_CURRENT_SITE', '/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );
 5. 在 wp-config.php 相同的子目錄下,新增一個 .htaccess 檔, 再貼上
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule  ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule  ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
6. 這樣應該就可以啟動 Wordpress MU 了, 如果子網站無法連結, 應該是 Apache 的 rewrite 功能未開啟

7. 開啟 Apache 的 rewrite 功能
先啟動 rewrite 模組, 在終端機中下指令:
sudo a2enmod rewrite
(在 ubuntu 中, Apache 的預設安裝路徑是 /etc/apache)
然後修改 /etc/apache2/sites-available 中的 default 檔, 將其中的 AllowOverride NONE, 改成 AllowOverride All, 如下

         
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all

     
   

8. 重新啟動 apache, 在終端機中下指令

sudo /etc/init.d/apache2 restart
這樣應該就完成了!


==如果無法內建安裝外掛、佈景==
(試過 wp 4.2 on Mint 7)
在 wp-config.php 中的最後,加上幾行如下,即可啟動內建安裝:


if(is_admin()) {
add_filter('filesystem_method', create_function('$a', 'return "direct";' ));
define( 'FS_CHMOD_DIR', 0751 );
}


另見: Wordpress 的上傳檔案大小限制



參見:


=== see also ===
Re: Where is Apache installed on Ubuntu?
Apache config files are in /etc/apache
Apache log files are in /var/log/apache
Apache libs are in /usr/lib/apache
Other files can be in /usr/share/apache, /var/lib/apache