WordPress Contact Form 7 (CF7) 新增自訂義欄位

Contact Form 7 這插件應該不用我多說了,是WordPress百萬級插件,但他的表單欄位有限,是一些常用的欄位,這樣怎麼能應付刁鑽的客戶呢?本篇介紹幾種方式新增自訂義欄位

  1. 透過 CF7 shortcode 來建立自訂義欄位。
  2. 透過 CF7 的 wpcf7_form_elements 這個 filter 新增自訂欄位HTML。
  3. 透過 WP shortcode 新增自訂欄位HTML。

透過 CF7 shortcode 來建立自訂義欄位。

Contact Form 7 提供的 shortcode API 跟 WordPress 不同,Contact Form[……]

Read more

jQuery TypeError: $(…). is not a function 簡單的解決方法

WordPress 開發插件,使用jQuery的時候出現下列錯誤

TypeError: $(…). is not a function

在 WordPress 中調用 jQuery 選擇器(Selector)不能使用金錢符號  $  ,原因我也不知道

要使用 jQuery 作為選擇器 (Selector)

但有些是以前寫的,要把它們運用在WordPress上前要把所有金錢符號  $  都改掉,有點麻煩,也可能會造成未知的Bug,因此,可以使用以下方法簡單解決這問題

解決方法:

於 jQuery 載入完[……]

Read more

WordPress Load css or script in Footer

主題或外掛載入 CSS 或 JS 檔案

一般情況下,會在 Head 中載入 CSS & JS 檔,可參考此篇:
WordPress 插件或主題載入 CSS & JS 檔案

於 Footer 中載入 CSS 或 JS 檔案

放在 footer 中主要有兩種情況,不那麼重要的檔案,放在 Footer 中最後載入,可以增加頁面開啟的速度,另外一種就是主題或插件把 style 直接 output 在頁面中,我們在 Head 中載入的 CSS 無法覆蓋這些樣式,所以放到 Footer 以覆蓋這些樣式。

範例:

[……]

Read more

WordPress 文章不分頁顯示全部,不使用WP_Query(),使用pre_get_posts

不限制顯示文章筆數(文章不分頁)

在自訂頁面上顯示所有文章,我們可以用 WP_Query()  輕易達成, 在 posts_per_page 參數設為 -1 即可,但有時我們需要在主題頁面上顯示所有文章,但又不想再跟資料庫要一次資料,多少會影響效能,或是開發插件,並不會去動到主題,所以就沒辦法使用 WP_Query()  ,所以可以改使用 pre_get_posts  這個鉤子,去修改Main Query 參數,下方針對兩種方法作介紹。

使用 WP_Query()

pre_get_posts_fun

使用這個鉤子,要[……]

Read more

$wpdb get SQL string 取得mySQL查詢字串

$wpdb 取得MySQL查詢字串

WordPress 提供了 wpdb 這 Class 有很多方法可以操作資料庫,如果是用 wpdb 的內建方法來處理查詢,有時除錯會想看最終組出來送到資料庫的查詢字串,只要 echo $wpdb->last_query ,就可以取得囉。

範例:

參考:

[……]

Read more

WPML 筆記

常數

  ICL_LANGUAGE_CODE當前語言的Code
ex:zh-hant、ja、en

Functions

獲取預設語言碼

由翻譯文章取得主要與言文章id

$element_id
(int) (Required) The ID of the post type (post, page, attachment, custom post) or taxonomy term (tag, category, custom taxonomy) to filter
$element_type
(string) (Required) The typ[……]

Read more

WordPress thumbnail default size 預設縮圖尺寸表

WordPress 預設縮圖尺寸表

尺寸名 (字串)大小尺寸說明thumbnail小150 x 150 強制裁剪尺寸medium中等300 x 300 最大高度300像素medium_large中大768 x 無限高 WP4.4增加large 大1024 x 1024 最大高度1024像素full完整尺寸原始大小 

WooCommerce 預設縮圖尺寸表

尺寸名 (字串)大小尺寸說明shop_thumbnail小180 x 180強制裁剪尺寸shop_catalog中300 x 300強制裁剪尺寸shop_[……]

Read more

WordPress get_post_type() is Null

主題或插件中有時我們會用同一支程式重複使用,比如說主題的Banner,通常不會每一個頁面寫一次,而是每個頁面都會 include banner.php 檔案,這樣的好處是維護比較方便讓程式的再利用,但在banner.php中,不可能所有頁面banner全都一樣,所以在banner.php需要設定一些判斷條件,依據不同條件做不同的事。

範例:

<?php
$post_type = get_post_type( get_the_ID() );
if ( in_array( $post_type , array('page','post','custom_post_type_nam[......]

Read more

WordPress Fix TypeError: p.easing[this.easing] is not a function

Fix TypeError: p.easing[this.easing] is not a function

function v123_dev_main_scripts() {
        wp_enqueue_script('jquery');
        wp_enqueue_script('jquery-ui-core');
	wp_enqueue_script('jquery-effects-core');
}
add_action('wp_enqueue_scripts', 'v123_dev_main_scripts');

 [……]

Read more