WordPress WP_Term_Query 只取第一層分類或指定分類的字層分類

WP_Term_Query 只取第一層分類

只取得第一層分類,初始化參數中parent為0即可

$args = array(
  'taxonomy' => 'category',
  'orderby' => 'name',
  'order' => 'ASC',
  'parent' => 0,
  'hide_empty' => false,
);
$the_query = new WP_Term_Query($args);
$categories = $the_query->get_terms();
print_r($the_q[......]

Read more

WordPress multi level categories / taxonomy to Tree Array

取得無線級樹狀分類
我相信物件導向是Wordpress未來發展方向,所以本文使用 Class WP_Term_Query 取得所有分類,而不是使用 get_terms 方法,代碼如下:

$args = array(
  'taxonomy' => 'category',
  'orderby' => 'name',
  'order' => 'ASC',
  'hierarchical'  => true,
  'hide_empty' => false,
);
$the_query = new WP_Term_Query($args);
$c[......]

Read more

WordPress wp_redirect not working , Warning: Cannot modify header information …

開發WordPress 常調用 wp_redirect() 這方法重定向,有時候我們會得到下列錯誤

Warning: Cannot modify header information – headers already sent by

其主要原因是PHP header已發送,就無法用header方法去重定向,有PHP開發經驗的朋友應該了解,header重定向的作法,所以選對鉤子很重要,下面我們選擇template_redirect 這個Hook,順利解決上述問題,而且這勾也可以取得頁面資料。

add_action('template_redirect', 'v123_logged_red[......]

Read more

WordPress 使用全域 jQuery 判斷是否正在某一頁

在Page或Post中,檢視HTML,我們會看到在Body中有很多Class,page-id-4250或postid-47,這就是page 或 post 的 id,可以藉此判斷目前正在某一篇文章或頁面中,進而做下一步的動作

Body 大概長這樣,範例中 4250 為Page ID

<body data-rsssl=1 class="page-template-default page page-id-4250 page-parent logged-in  color-custom style-simple button-flat layout-full-width if-bord[......]

Read more

WordPress中插入 Google Analytics GA 追蹤碼

Wordpress中插入 Google Analytics GA 追蹤碼

網頁常常都會使用一些追蹤碼來分析網站流量,Google Analytics就提供一個簡單又強大的流量分析工具,如何申請及設定Google Analytics至取得GA 追蹤碼,本篇文章暫不討論,可參考網路文章:

Google Analytics 網站分析追蹤碼安裝

但是需要在網站中插入GA追蹤碼,由於Wordpress沒提供這樣功能,可用下面方法,插入GA追蹤碼。

編輯當前主題的functions.php文件,通常這檔案位置會在

wp安裝目錄/wp-content/themes/{{目前主題}}/f[……]

Read more

更改 WordPress 的 wp-content、plugin 預設路徑

這是一個基於安全性的修改,阻止比較笨的機器人掃描指定目錄是否存在
修改Wordpress安裝目錄下的 wp-config.php 檔

# 設定 wp-content 自訂路徑(最後無斜線)
define( 'WP_CONTENT_DIR', $_SERVER['DOCUMENT_ROOT'] . '/blog/wp-content' );

# 設定 wp-content 自訂路徑url(最後無斜線)
define( 'WP_CONTENT_URL', 'http://example/blog/wp-content');

# 設定 wp-content/plugin 自訂路徑[......]

Read more