星期五, 29 3 月, 2024

程式 PROG

程式技術, WordPress改造

登入 https://life.origthatone.com/wp-admin/edit.php 然後登入帳密 登入後點選 屬於目前登入使用者 如果要修改文章就直接點選文章,如果新文章就點選 新增文章 開啟後 點選 先寫標題 新增區塊 文字用 ->傳統編輯器 圖片用 一班區塊->圖片 移到區塊下方中間會出現一個 + 可以新增下一個區塊 點在文字區塊的右上方會出現 ... 按下去有選單可以移除區塊 點圖片則出現在左上角
1. 開啟 Google 兩階段驗證功能 https://www.google.com/landing/2step/ 設定完手機號碼後, 之後所有登入 google 帳號都需要驗證兩次, 密碼以及傳送到手機的驗證碼.注意: 設定完畢, 所有登入google帳號的程式皆會被登出 2. 申請應用程式密碼接著到 https://security.google.com/settings/security/apppasswords申請一組應用程式密碼, 請選擇 郵件 這組密碼就是 Google SMTP 密碼, 請抄記下來 接著以 WordPress 外掛 WP Mail SMTP 來送信 接著填入 SMTP 傳送參數,最重要的是剛剛那組 Google SMTP 密碼 測試送信看看 收到信了
電子郵件Option 頁面元件 主要是要讓你的網站讓顧客留下訂閱訊息並經由發送確認信確認電子郵件是否正確後,再由系統定時跟訂閱者發送客製的網站消息 運作方式 客戶在網頁上進行訂閱 訂閱輸入完成 在網站訂閱管理上會多一筆未確認者 此時訂閱者會收到一封確認信 訂閱者進行確認 在網站訂閱管理上未確認者轉變為已訂閱 電子郵件Option 的設定方式 先安裝外掛 MailPoet 啟動後進行設定,請注意:所有E-Mail格式必須符合國際規範,否則MailPoet會顯示錯誤 Enable sign-up confirmation 是指是否進行發確認信確認,其中 Email...
因為WordPress結帳時預設名在前姓在後,不太相符於國人的習慣,不過除了可以自行於主題目錄下的Functions.php添寫外掛程式調整順序外也可以安裝外掛視覺化調整順序及隱藏欄位,但本章介紹的是乾脆合併在結帳欄位姓成為一欄. 原理很簡單,就是結帳時客戶已經登入就把客戶的姓+名拉進來蓋掉結帳欄位的姓欄位,方法是直接在主題目錄下的functions.php尾巴添加以下程式碼. /** 1. 判斷會員是已登入,如果有登入才會撈取會員姓氏 2. 使用 wp_get_current_user 取得登入會員的資料 3. 取得 user_lastname,user_firstname 3. 使用 jQuery 把名跟姓放進 billing_last_name 的值 value 裡面 */ add_filter('woocommerce_before_checkout_billing_form','apply_username_field',10); function apply_username_field() { if ( is_user_logged_in() ) { $current_user = wp_get_current_user(); //如果帳單姓不是空的 if ($current_user->billing_last_name!='') { //如果帳單姓已經整合名了 if (strrpos($current_user->billing_last_name.'^',$current_user->billing_first_name))...
安裝 Ultimate Member 外掛,進入設置畫面後他會自己幫你新增一個會員頁面 把這個會員頁面加入選單中就可以讓登入者上傳及維護個人圖像
WordPress 預設就是一個文章的一個部落格網站,但自從 WooCommerce 開發了一款電商外掛後,只要安裝並啟用之後就立刻進升為電商購物網站,所有的一切基本功能他都已經完成,可以直接上架開店了. 而 WooCommerce 預設的版面都還很陽春,都還需要自行客製修改,例如原始結帳畫面就醜不拉機 但 WooCommerce 也有提供付費美美的外掛供使用者選購,畢竟他也是營利機構要賺錢. 當然也也許多善心人士寫了不少的外掛供你免費安裝,但此類外掛大多還是隱藏一些進階功能讓你付費啟用,有些付費的外觀例如The7, Divi 安裝後也幫使用者美化加強了不少WooCommerce 的功能,在其各自的外觀下會多一個 woocommerce 的目錄夾,就是這些外觀商繼承WooCommerce 外掛進來改善的,例如外觀The7的結帳就改得還不錯,當然細節還是要你自行調整. 但如果你不想花錢,一切都要自己來,當然這樣也可以.那就要了解 WordPress 的架構,及WooCommerce 的EVENT及API,以下是原廠的技術文件https://docs.woocommerce.com/wc-apidocs/hook-docs.html及函數http://hookr.io/plugins/woocommerce/3.0.6/functions/如果沒有範例相信初學者也不知如何下手,所幸有這個網站提供許多客製範例https://businessbloomer.com/blog/WooCommerce 購物車雖然做得很完善,跨國及不同類別不同運費及販售軟體提供下載無運費等都可以設定,但對於台灣來講,超商取貨及超商取貨付款的行為他就沒有規劃到,依原使架構即使選擇超商取貨,選定超商後地址還是必輸欄位,這個對於買家來講造成困擾導致可能放棄購買.因此針對這個問題國外WordPress Blog網站沒有任何範例只能自己硬著頭皮下去改. 選擇超商取貨時,不提供地址無法結帳 我們發現WooCommerce 在進結帳畫面前會去執行 woocommerce_checkout_fields EVENT然後帶入結帳所有欄位的物件 woocommerce_checkout_fields在 class-wc-checkout.php 的位置,有心可以從頭到尾trace這隻結帳程式,而成為專家,但目前就以解決當前問題為優先。既然WooCommerce...
眾所周知 WordPress 是一個可以自行程式化的部落格環境,最簡單的外掛是寫在主題目錄下的 functions.php,但是主題會隨時更新版本,而更新之後的卻會把原來自行客製的 functions.php 給還原造成白工,這個時候就要運用WordPress 的OOP繼承出一個新的 子主題,子主題完全繼承自原主題然後可以自行加東西,跟程式語言的OO一模一樣,如此一來無論原主題怎麼更新,子主題也會自動跟著更新功能,但卻不會影響自行客製的功能.繼承方式很簡單,直接在主題根目錄 wp-content/themes/ 下新建一個子主題目錄,以 storefont 為例新增一個子主題目錄storefont-child然後在裡面建立一個新檔案style.css,在檔案開頭放主題名稱然後是繼承自哪一個主題或子主題,看起來就像這樣: /* Theme Name: Storefont child Template: storefront Theme URI: https://one.origthatone.com Description: 拿來玩玩看 Author URI: https://life.origthatone.com Author: 林啟民 Version: 0.1 */ 說明 Theme Name: (必需) 子主題的名稱。Template : (必需) 父主題的目錄名,區別大小寫。注意: 當你更改子主題名字時,要先換成別的主題。 Theme URI : (可選) 子主題的主頁。Description : (可選) 子主題的描述。比如:我的第一個子主題,真棒!Author URI : (可選) 作者主頁。Author : (可選) 作者的名字。Version : (可選) 子主題的版本。比如:0.1,1.0,等。 請參考 WordPress 子主題官方文件 造好時就會像是這樣
add_filter 程式碼 1 2 3 4 5 6 789 function add_filter($tag, $function_to_add, $priority = 10, $accepted_args = 1) { global $wp_filter, $merged_filters; $idx = _wp_filter_build_unique_id($tag, $function_to_add, $priority); $wp_filter = array('function' => $function_to_add, 'accepted_args' => $accepted_args); unset( $merged_filters ); return true; } add_action 程式碼
這篇文章介紹下如何在WooCommerce中添加 按鈕並直接跳轉到結算頁面。 有兩種產品模式 單一產品 及 變化產品要分開處理 單一產品 因為直接在外掛及外觀添加程式碼,但是版本自動更新後會被自動還原,因此必須新增外掛theme-customisations-master.zip https://github.com/woocommerce/theme-customisations 修改單一產品:找到外掛目錄 /wordpress/wp-content/plugins/woocommerce/templates/single-product/add-to-cart/simple.php FTP下載後開啟檔案,找到以下程式碼片段: <button type="submit" name="add-to-cart" value="<?php echo esc_attr( $product->get_id() ); ?>" class="single_add_to_cart_button button alt"><?php echo esc_html( $product->single_add_to_cart_text() ); ?></button> 在其上面添加以下程式碼: <!--新增按鈕--> ...