顯示具有 WordPress Plugin 標籤的文章。 顯示所有文章
顯示具有 WordPress Plugin 標籤的文章。 顯示所有文章

星期二, 9月 17, 2024

[WP X WPML] 啟動自訂post type支援多語言編輯

很常見會使用ACF工具自訂文章類型與分類,透過WPML外掛也很容易將它們支援多國語言。

如下設定: 




星期三, 9月 28, 2016

星期一, 9月 26, 2016

[WordPress] TinyPNG外掛: 省空間的好幫手lol

最近虛擬主機的空機開始不足了,
感覺應該被幾個wp的站台用掉太多圖片空間,找了一下wp的圖片外掛,
原來TinyPNG也有出wordpress外掛,
在你安裝好TinyPNG外掛之後,
可以到TinyPNG申請開發者API KEY

https://tinypng.com/developers



就可以享受每個月五百張的額度。
另外壓縮圖片對於搜尋引擎最佳化(SEO)來說有正面的影響。

星期日, 8月 07, 2016

[Wordpress] 取出指定user meta值的用戶清單


這次想要在wordpress的帳號管理的查詢功能新增自已的user meta key查詢。
使用到的Hook分別為如下:

  • restrict_manage_users ACTION:

這個Action可以替users表格上面的filter區塊自訂我們要的html 語法,這次要做的效果一樣弄一個下拉式選單就OK了。送出後你會發現網址QueryString會加了我們指定的值

// Adds a dropdown to filter users based on a meta field
function add_recommand_filter_into_user_table() {

    global $pagenow;

    if (is_admin() && $pagenow == 'users.php') {
        $optNone = '';
        $optYes = '';
        $optNo = '';
        if(isset($_GET['recommand'])){
          if(strcmp($_GET['recommand'],'1') == 0){
            $optYes  = 'selected="selected"';
          }else{
            $optNo  = 'selected="selected"';
          }
        }else{
           $optNone  = 'selected="selected"';
        }

        echo '';
    }
}
add_action('restrict_manage_users', 'add_recommand_filter_into_user_table');



  • pre_get_users FILTER:


這個Filter簡言之就是要處理我們新增的action所送出的值為何,然後可以重改變動query物件的meta參數
// Updates user query based on filtering criteria
function query_recommand_query_from_user_table($query) {
 
    global $pagenow;

    if (is_admin() && $pagenow == 'users.php' && isset($_GET['recommand'])) {
        $recommandValue = wp_strip_all_tags($_GET['recommand']);
       
       if(strcmp($recommandValue,'') != 0){
          $meta_query = array(
            array(
           'key' => RECOMMAND_KEY,
           'value' => $recommandValue
           )
         ); 
   
         $query->set('meta_key', RECOMMAND_KEY);
         $query->set('meta_query', $meta_query);
        }   
    }
 
}

add_filter('pre_get_users','query_recommand_query_from_user_table');


參考


  1. http://wordpress.stackexchange.com/questions/189077/how-to-get-users-by-a-custom-field-by-user-meta-data
  2. http://www.davemccourt.com/wp-user-filtering/

星期一, 8月 01, 2016

[Wordpress] 擴充User management 的表格欄位

如果你想要自已擴充全部帳號(users.php)頁面,只需要透過二個hook機制就可以快速完成。
所以你就可以自已加欄位加按鈕,做更多客製化操作啦。


  • 使用filter hook: manage_users_columns來擴充欄位
  • 使用action hook: manage_users_custom_column來修改欄位值

範例


參考

https://www.tipsandtricks-hq.com/adding-a-custom-column-to-the-users-table-in-wordpress-7378

[Wordpress] 如何ajax來呼叫 php function

記錄一下如何在wp操作ajax function呼叫php function,意思就是你可以透過hook機制寫自已的api嚕

官網的sample說明


  • action命名規則wp_ajax_[你的方法]
  • action function 命名規則 [你的方法]_callback
tips: 請注意你的方法命名不可以長的不一樣,會無法對應呼叫

add_action( 'wp_ajax_my_action', 'my_action_callback' );

function my_action_callback() {
 global $wpdb; // this is how you get access to the database

 $whatever = intval( $_POST['whatever'] );

 $whatever += 10;

        echo $whatever;

 wp_die(); // this is required to terminate immediately and return a proper response
}

在頁面render一個jquery的方法(因為是範例所以方法很簡單,page_load之後就打)可以搭配admin_enqueue_scripts來整理你自已外掛所需的js
 jQuery(document).ready(function($) {

  var data = {
   'action': 'my_action',
   'whatever': 1234
  };

  // since 2.8 ajaxurl is always defined in the admin header and points to admin-ajax.php
  jQuery.post(ajaxurl, data, function(response) {
   alert('Got this from the server: ' + response);
  });
 });

參考

https://codex.wordpress.org/AJAX_in_Plugins

[Wordpress] wp_enqueue_script / wp_enqueue_style 在wp自訂你的js與css檔

wp_enqueue_script 允許我們快速的在wp的頁面加入js函式庫,
反之 wp_enqueue_style讓我們加入樣式檔。

你可以寫法functions.php做全域的載入或至到外掛模組佈景主題裡面做客製化的載入唷

範例

以下範例教你怎麼加入bootstrap框架

function reg_scripts() {
    wp_enqueue_style( 'bootstrapstyle', get_template_directory_uri() . '/css/bootstrap.min.css' );
    wp_enqueue_style( 'bootstrapthemestyle', get_template_directory_uri() . '/css/bootstrap-theme.min.css' );
    wp_enqueue_script( 'bootstrap-script', get_template_directory_uri() . '/js/bootstrap.min.js', array(), true );
}
add_action('wp_enqueue_scripts', 'reg_scripts');

參考


  1. https://digwp.com/2009/06/including-jquery-in-wordpress-the-right-way/
  2. http://stackoverflow.com/questions/26583978/how-to-load-bootstrap-script-and-style-in-functions-php-wordpress
  3. https://codex.wordpress.org/zh-cn:%E5%87%BD%E6%95%B0%E5%8F%82%E8%80%83/wp_enqueue_script

星期三, 4月 27, 2016

[快快樂樂學WordPress] 記錄一些wordpress plugin需要用的資料

Google到的Wordpress plugin教學蒐集

//好像很老的玩家lol
http://blog.wpjam.com/article/write-plugin-by-yourself/

//官方
http://codex.wordpress.org/Writing_a_Plugin
http://codex.wordpress.org/Adding_Administration_Menus
http://codex.wordpress.org/Plugin_API

星期一, 3月 21, 2016

[WordPress] Woocomerce login hook筆記

記錄一下woocommerce hook的筆記

//一般wp_login的hook
function so_26675676_your_function($user_login, $user) {
 // your code
}
add_action('wp_login', 'so_26675676_your_function', 10, 2);


//woocommerce login hook,你可以自訂_wp_http_referer參數
add_filter( 'woocommerce_login_redirect', 'krex_redirect'); add_filter( 'woocommerce_registration_redirect', 'krex_redirect'); function krex_redirect( $redirect_to ) { if ( ! empty( $_REQUEST['_wp_http_referer'] ) ){ $ref = wp_unslash( $_REQUEST['_wp_http_referer'] ); } return $ref; }


//shortcode
[woo_social_login redirect_url="轉頁的網址"]

/*----------------------------------------------------
------------------------*/
// redirects for login / logout
/*----------------------------------------------------------------------------*/
add_filter('woocommerce_login_redirect', 'login_redirect');

function login_redirect($redirect_to) {

 $location = $_SERVER['HTTP_REFERER'];
wp_safe_redirect($location);
exit();

}

add_action('wp_logout','logout_redirect');

function logout_redirect(){

$location = $_SERVER['HTTP_REFERER'];
wp_safe_redirect($location);
exit();

}

  • https://www.skyverge.com/blog/advanced-woocommerce-social-login/
  • https://github.com/woothemes/woocommerce/commit/014e31952828377bf7a1ebf4e812a43d0bcefa67#commitcomment-3351995

[Wordpress Plugin] 多國語言插件

好用但要付錢的WPML多國語言插件 :D
有提供一些變數的常數
ConstantDescriptionExample
ICL_LANGUAGE_CODECode for the current languagefr
ICL_LANGUAGE_NAMEName of current language, in the current languageFrançais
ICL_LANGUAGE_NAME_ENName of the current language name in EnglishFrench

REF
https://wpml.org/
https://wpml.org/documentation/support/wpml-coding-api/

星期五, 7月 10, 2015

[Wordpress] Limit Login Attempts 設定使用者登入太多次的鎖定外掛

如果要預防使用者一直嘗試登入電腦,可以透過 Limit Login Attempts
來限制使用者可以登入錯誤的次數,不過外掛已經有二年未更新了XD

https://wordpress.org/plugins/limit-login-attempts/

星期六, 10月 11, 2014

[WordPress plugin] 顯示所有產品類別title過長的問題

今天發現使用顯示產品類別的short code中的title好像會長出很多換行空白,
因為就順便找一個原始碼的呼叫方式,進入點可以從這個檔案 includes/class-wc-shortcodes.php 開始, 所以就順利找到對應的產品列表原始碼位置 templates/content-product_cat.php 更詳細的資訊可以透過 http://oik-plugins.eu/woocommerce-a2z/ 來協助你追原始碼 :D

星期日, 10月 05, 2014

[WordPress Plugin] Woocomerce 顯示產品分類到首頁

Woocommerce內建提供簡單的語法讓使用者可以在自訂的頁面顯示產品分類
找到這篇討論串的解法: https://wordpress.org/support/topic/show-only-top-level-product-category-on-home-page


***
[product_categories number="12" parent="0"]
Set the parent paramater to 0 to only display top level categories.

如果要秀全部的分類的話,把number設 number="" 即可
***
經過測試是可以正常執行的,官方shortcode的文件裡面也找的到這行指令XD (RTFM)
顯示的效果如下:
當然預設的指令碼只會顯示如上圖的效果,如果模更進階的顯示的話,Wootheme提供你額外付錢的外掛:D,效果就比較靈活,如下圖所示。


有這樣需求的朋友可至此購買 










星期一, 8月 25, 2014

[WordPress] 改wordpress的相關手法筆記

本篇記錄一下簡單幫朋友建置wp的心得

修改siteurl

在資料表wp_options裡面有siteurl的欄位,修改後就能變更網站的固定網址


修改主標題選單

header.php的位置,每次升級themes前請小心header.php被更新後還原

content/themes/<你下載的佈景主題目錄>/header.php

判斷使用者有沒有登入的function


WooCommerce修改側欄選單的項目

外觀->小工具

從可用小工具拖拉WooCommerce到Sidebar即可

WooCommerce修改商品頁先顯示分類


WooCommerce->設定->Tab商品->Shop Page Display->改為顯示子類別



星期一, 3月 31, 2014

[WordPress 外掛] Adminer瀏覽資料庫的好工具

如果不想要裝phpmyadmin的services的話,可以裝另一個好用的Adminer for Wordpress。

外掛的簡短說明:
Adminer(formerly phpMinAdmin) is a full-featured MySQL management tool written in PHP. Current used version of Plugin Adminer: 1.3.0

安裝後工具裡面就會有一個 Adminer


下載位址:
http://wordpress.org/plugins/adminer/


星期六, 3月 29, 2014

[WordPress 外掛] wp-fb-autoconnect 整合Facebook 單點登入

由於Facebook佔有可怕的用戶數,
因此現在的網站服務都希望讓使用者不用在重新填寫註冊即能成為會員。
這類的技術可稱為單點登入(Single Sign On, SSO),
wp-fb-autoconnect 外掛可以快速滿足我們的需求。

先前準備


使用前需先申請一個Facebook 應用程式
https://developers.facebook.com/apps


填入應用程式資料: 顯示名稱與類別即可


之後填入安全驗證碼即可成功建立完成

[WordPress 外掛] Pie Register 使用者註冊神器

每個網站一定都需要會有使用者註冊功能。
搜尋了一下google,發現有 Pie Register 這個好用的神器,
包含避免垃圾帳號註冊、驗證信通知、欄位驗證、帳號邀請碼等等。

安裝完畢後,側欄選單即可看到Pie Register的功能列了。


別忘了在設定->一般設定,打開成員資格設定!!



下載位址:
http://wordpress.org/plugins/pie-register/

也有網友依簡體中文的檔案改寫了繁體中文版,
有需要的話就下載我已經安裝好的這包吧
https://drive.google.com/file/d/0BwHz8c9SZ2F2ZUFnX1RXT0R6TVk/view?usp=sharing




星期四, 3月 27, 2014

[WordPress 外掛] codestyling-localization 協助你快速建立外掛的多國語言檔

下載了woocommerce之後發現有的地方的中文化尚未完全,
查了一下,原來有支援多國翻譯的工作外掛:codestyling-localization

安裝過後會在工具裡面多了一個本地化的功能,接下來就可以看到你想要翻譯的外掛目前的語言資訊!!




下載位址:
http://wordpress.org/plugins/codestyling-localization/installation/

星期日, 3月 23, 2014

[WordPress 外掛] 本地端手動安裝WooCommerce

不透過FTP Server來安裝wp外掛

下載wooCommerce
http://www.woothemes.com/woocommerce/

將檔案放至你的wp的外掛資料夾
wordpress->wp-content->plugins->woocommerce

登入後台,點選安裝外掛,啟用woocommerce即可

安裝後會新增相關的woocommerce的資料表,如下圖

其他你感興趣的文章

Related Posts with Thumbnails