我們可以用 Class WP_Term_Query 取得分類資料,詳細取得方式可參考此篇:
在初始 WP_Term_Query 這物件時,我們需要帶入相關參數,一個一個去了解其實蠻麻煩的,WP_Term_Query Generator 提供線上產生器,彙整很多選項,我們可以依據不同的屬性選擇頁籤,選擇我們要的值,就可以產生出相對應的語法
複製產生出來的程式去用就好了,非常方便
[……]
我們可以用 Class WP_Term_Query 取得分類資料,詳細取得方式可參考此篇:
在初始 WP_Term_Query 這物件時,我們需要帶入相關參數,一個一個去了解其實蠻麻煩的,WP_Term_Query Generator 提供線上產生器,彙整很多選項,我們可以依據不同的屬性選擇頁籤,選擇我們要的值,就可以產生出相對應的語法
複製產生出來的程式去用就好了,非常方便
[……]
1. 先取出第一層分類,請參考下列文章
WordPress 只取第一層分類
2. 用 get_term_children(); 所有子分類id
/* 取所有仔分類ID https://v123.tw */ foreach($categories as $cat){ echo 'name='.$cat->name.'<br/>'; $term_children = get_term_children( $cat->term_id , 'category' ); if($term_children){ echo 'child_id=[......]
只取得第一層分類,初始化參數中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[......]
取得無線級樹狀分類
我相信物件導向是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[......]
註冊完成自動登入
Auto Login After Registration in WordPress
<?php public function auto_login($user_id){ $user = wp_set_current_user($user_id); wp_set_auth_cookie($user_id); if ( is_wp_error($user) ){ echo $user->get_error_message(); }else{ wp_safe_redirect( UP()->logged_ur[......]
開發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[......]
在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[......]
網頁常常都會使用一些追蹤碼來分析網站流量,Google Analytics 就提供一個簡單又強大的流量分析工具,如何申請及設定Google Analytics至取得GA 追蹤碼,本篇文章暫不討論,可參考網路文章:
但是需要在網站中插入GA追蹤碼,由於Wordpress沒提供這樣功能,可用下面方法,插入GA追蹤碼或「全域網站代碼gtag.js」。
在 Google Analytics 找到追蹤碼
這是一個基於安全性的修改,阻止比較笨的機器人掃描指定目錄是否存在
修改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 自訂路徑[......]