WordPress jQuery 搜尋及替代文字

主題偷吃步 – jQuery 搜尋及替代文字

在設計WordPress時,常需要替換一些文字,但為了一點文字就去更改主題或子主題,有點殺雞用牛刀,況且為了這一點小東西直接去改主題並不是一個好選擇,除非永遠不去更新主題,否則主題更新後,問題又回來了,所以下方這段代碼算是偷吃步,用jQuery去替代文字就好,主題更新也不會有影響,雖然不正規,不過相當管用。

/*
   v123 DEV
   https://v123.tw
*/
jQuery(document).ready(function(e) {
	var textarea=jQuery('span.excerpt-hellip[......]

Read more

WordPress List all actions and filters

在插件開發的時候,有可能會去刪除或更動一些勾,但是又不可能全部的程式碼都看過,WordPress 把所有所有 actions 和 filters 都存在 $wp_filter 這個全域變數,我們可藉由列表這個變數,了解目前載入各種勾的情況,算是蠻幫助開發的。

列出所有 actions 和 filters

並不是很建議直接輸出所有勾的資料,記憶體可能會爆掉,可用下一個方法,輸出指定的Hook

/*
  List all actions and filters
  https://v123.tw
*/
add_action( 'wp_head', 'print_all_action_[......]

Read more

WordPress SEO 換網址後一定要做的3件事

WordPress 換網址 SEO

可能因為某些原因,會需要更換WP網址,但之前寫的文章SEO好不容易做起來,大部分的頁面搜尋引擎也都收錄了,這樣不是太浪費了,SEO的部分等於一切重來,雖然換網址真的對SEO很傷,但沒辦法的時候我們只能將傷害降到最低。

第一步、設定固定網址

下圖,新網站的”固定網址“設置,

第二步、設定轉址

做完第一步,再來就是要將舊網域的網址轉至新網域的網址,但參數不變,讓每一篇文章都可以搬家到新網址

http://old-domain.com/example/轉到http://new-domain.com/example/

設[……]

Read more

WordPress get_children() Not Working with orderby Parameter

get_children() 頁面排序不起作用

無法由Wordpress後台面板的排序欄位進行排序

解決方法:

請將orderby這個參數的值改為menu_order,並加入order這個參數即可,

示例如下:

$args = array(
	'post_parent' => $id,
	'order'       => 'ASC',
	'orderby'     => 'menu_order',
	'post_type'   => 'page', 
	'post_status' => 'publish',
);
$childr[......]

Read more

WordPress get same level post id of current post

取同層級頁面id

/**
	取同層級頁面id
	bool $with_parent = true ; 包含父層id
	return array
	
	https://v123.tw
*/
function v123tw_get_same_level_post_id_of_current_post($with_parent=false){
	if(!$id = get_the_ID())return array();
	if($pid = wp_get_post_parent_id( $id ))$id = $pid;
	if(!$id)return array();[......]

Read more

WordPress 插件或主題載入 CSS & JS 檔案

將插件或主題載入 CSS & JS 檔案

CSS與JS在網站中可說是不可或缺的資源,我們在進行插件開發的時候,會面臨到如何載入CSS&JS,WordPress 設計了一個勾 wp_enqueue_scripts ,專門處理載入CSS&JS資源,再利用wp_enqueue_script & wp_enqueue_style 載入,但是載入會有先後順序之分,以下範例介紹,如何設定依賴的資源。

在插件中:

在插件中用 plugins_url()  來取得當前插件的路徑:

Plugin 載入 JS

載入Ja[……]

Read more

WordPress WP_Term_Query 類,取分類程式產生器

我們可以用 Class WP_Term_Query 取得分類資料,詳細取得方式可參考此篇:

WordPress 只取第一層分類

在初始 WP_Term_Query 這物件時,我們需要帶入相關參數,一個一個去了解其實蠻麻煩的,WP_Term_Query Generator 提供線上產生器,彙整很多選項,我們可以依據不同的屬性選擇頁籤,選擇我們要的值,就可以產生出相對應的語法

複製產生出來的程式去用就好了,非常方便

[……]

Read more

WordPress 取所有子分類id

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=[......]

Read more

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