Bosszi

รับออกแบบวงจร รับทำวงจรสำหรับ ARDUINO ตามความต้องการ

Currently Viewing Posts in Wordpress

worldpress plugin ที่ควรติดตั้ง

  • All-in-One WP Migration สำหรับ สำรองข้อมูลทั้งหมด
  • Yoast SEO สำหรับทำ SEO
  • AddToAny Share Buttons สำหรับแชร์
  • Enlighter – Customizable Syntax Highlighter สำหรับใส่โค๊ด
  • Loginizer การตั้งค่า เพอร์มิชชั้น
  • Really Simple SSL สำหรับใบรับรอง SSl

สิ่งที่ควรรู้ Yoast

Keyphrase density: ปัญหาความหนาแน่นของคีเวิด
Focus keyphrase: ใส่ ยี่ห้อ และโมเดล ของงาน ต้องเป็น ข้อความเดียวกับย่อหน้าแรก
Link keyphrase: ที่ Focus keyphrase ไม่ควรมีคำเดียว
Image alt attributes: ใส่ข้อมูลที่รูปภาพด้วย
Text length: คำในเนื้อเรื่อง อาจจะสั้นไป หรือยาวไป
Meta description length: อาจจะสั้นไป หรือยาวไป
Previously used keyphrase: คุณเคยใช้ keyphrase นี้อีกครั้งก่อน อย่าใช้ keyphrase คุณมากกว่าหนึ่งครั้ง

ความหมายของคำ ใน WordPress

ความหมายของคำ ใน WordPress  บันทึกส่วนตัว

  • slug คือส่วนที่ต่อจาก URL
  • Sidebar ส่วนที่เป็นกล่องยาวๆ จะอยู่ซ้ายบ้าง ขวาบ้างแล้วแต่การจัด วิเจ็ต
  • Dashboard หน้ารวมหลังบ้าน
  • Plugins โปรแกรมเสริมความสามารถ
  • วิเจ็ต ใช้ในการปรับแต่งการแสดงผลหน้าเว็บ เป็นหัวข้อย่อยของธีม
  • ธีม คือรูปร่างหน้าตา ของเว็บไซต์
  • Pages เพจเปรียบเสมือนหัวข้อใหญ่ หรือหน้าที่เราจะรวมเอาหน้าโพสมาเก็บใว้ในนี้หลายๆโพส
  • Posts โพสคือเนื้อหาที่เราจะเขียนในแต่ละหน้าเพื่อไปแสดงในเพจที่เป็นเหมือนหัวข้อใหญ่ หรือเป็นหน้ารวม
  • Media ที่เก็บ จัดการ ไฟล์ รูปภาพ วีดีโอ
  • Appearance จัดหน้าตาของเว็บ

Function WordPress all

Function WordPress all  บันทึกส่วนตัว

การนำไฟล์จากภายนอกเข้ามาประมวลผล

include(plugin_dir_path(__FILE__)."repair-menu.php");   //เรียกไฟล์หน้า php ที่อยู่ในพาทเดียวกัน
include(plugin_dir_path(__FILE__)."job/repair-menu.php");   //เรียกไฟล์หน้า php ที่อยู่ในโฟเดอร์ชื่อ job

สร้างการแจ้งเตือน

add_action( 'admin_notices', 'sample_admin_notice__success' );

wp_head ใช้กำหนดส่วน head tag  <head></head> ที่ไฟล์ header.php ของธีม

function hook_css() {
    ?>
        <style>
            .wp_head_example {
                background-color : #f1f1f1;
            }
        </style>
    <?php
}
add_action('wp_head', 'hook_css');

wp_footer ใช้กำหนดส่วน ท้ายก่อน </body>

<?php
function your_function() {
    echo '<p>This is inserted at the bottom</p>';
}
add_action( 'wp_footer', 'your_function' );
?>

add_option() ฟั่งชั่นที่จะเอาค่าออฟชั่นไปเก็บในตาราง wp_options

add_option( $option, $value = '', $deprecated = '', $autoload = 'yes' )

register_activation_hook( ) เมือเปิดการใช้งานปลั๊กอิน ให้ไปที่ฟังชั่นบางอย่างเช่น สร้างดาต้าเบส จะทำงานเมื่อ plugin activated ฟังก์ชันอัตโนมัติเมื่อ Activate plugin

function my_plugin_activate() 
{
    /* activation code here */
}
register_activation_hook( __FILE__, 'my_plugin_activate' );

register_deactivation_hook( ) เมือถูกกดปิดการใช้งานปลั๊กอินให้มาทำงานในนี้ จะถูกทำงานเมื่อ plugin deactivated ฟังก์ชันอัตโนมัติเมื่อ deactivated plugin

function register_deactivation_hook( $file, $function ) {
    $file = plugin_basename( $file );
    add_action( 'deactivate_' . $file, $function );
}

wp_nonce_field(  ) คือ field ใส่ไว้ที่ form สำหรับการป้องกันการ reqeust จาก site ของตัวเอง และไม่ให้ ภายนอก request เข้ามาแนะนำว่าให้ควรใส่ไว้ใน form

function wp_nonce_field( $action = -1, $name = '_wpnonce', $referer = true, $echo = true ) {
    $name        = esc_attr( $name );
    $nonce_field = '<input type="hidden" id="' . $name . '" name="' . $name . '" value="' . wp_create_nonce( $action ) . '" />'; 
    if ( $referer ) {
        $nonce_field .= wp_referer_field( false );
    } 
    if ( $echo ) {
        echo $nonce_field;
    } 
    return $nonce_field;
}

 

Classes

wpdb เชื่อมต่อกับฐานข้อมูล เป็นคลาส ต่อกับฐานขอมูลได้ มีฟังชั่นสำเร็จรูปให้ใช้งาน

// 1st Method - Declaring $wpdb as global and using it to execute an SQL query statement that returns a PHP object
global $wpdb;
$results = $wpdb->get_results( "SELECT * FROM {$wpdb->prefix}options WHERE option_id = 1", OBJECT );

 

Database Original WordPress

Database Original WordPress  บันทึกส่วนตัว

เมื่อติดตั้ง WordPress แล้วยังไม่ได้ลงอะไรเพิ่มมาดูข้อมูลตาราง Database ก่อนว่ามีอะไรบ้าง

  • wp_commentmeta ไม่มีข้อมูลไดๆในตาราง
    – meta_id
    – comment_id
    – meta_key
    – meta_value
  • wp_comments จะมีข้อมูลมาเลย 1 แถว
    – comment_ID
    – comment_post_ID
    – comment_author
    – comment_author_email
    – comment_author_url
    – comment_author_IP
    – comment_date
    – comment_date_gmt
    – comment_content
    – comment_karma
    – comment_approved
    – comment_agent
    – comment_type
    – comment_parent
    – user_id
  • wp_links ไม่มีข้อมูลไดๆในตาราง
    – link_id
    – link_url
    – link_name
    – link_image
    – link_target
    – link_description
    – link_visible
    – link_owner
    – link_rating
    – link_updated
    – link_rel
    – link_notes
    – link_rss
  • wp_options จะมีข้อมูลมาเลย 25 แถว เก็บค่าเซตติ่งต่างๆ
    – option_id
    – option_name
    – option_value
    – autoload
  • wp_postmeta จะมีข้อมูลมาเลย 2 แถว
    – meta_id
    – post_id
    – meta_key
    – meta_value
  • wp_posts จะมีข้อมูลมาเลย 4 แถว เก็บ Page และ Post
    – ID
    – post_author
    – post_date
    – post_date_gmt
    – post_content
    – post_title
    – post_excerpt
    – post_status
    – comment_status
    – ping_status
    – post_password
    – post_name
    – to_ping
    – pinged
    – post_modified
    – post_modified_gmt
    – post_content_filtered
    – post_parent
    – guid
    – menu_order
    – post_type
    – post_mime_type
    – comment_count
  • wp_termmeta ไม่มีข้อมูลไดๆในตาราง
    – meta_id
    – term_id
    – meta_key
    – meta_value
  • wp_terms จะมีข้อมูลมาเลย 1 แถว
    – term_id
    – name
    – slug
    – term_group
  • wp_term_relationships จะมีข้อมูลมาเลย 1 แถว
    – object_id
    – term_taxonomy_id
    – term_order
  • wp_term_taxonomy  จะมีข้อมูลมาเลย 1 แถว
    – term_taxonomy_id
    – term_id
    – taxonomy
    – description
    -parent
    -count
  • wp_usermeta จะมีข้อมูลมาเลย 20 แถว
    – umeta_id
    – user_id
    – meta_key
    – meta_value
  • wp_users จะมีข้อมูลมาเลย 1 แถว นั้นก็คือ Admin นั่นเอง
    – ID
    – user_login
    – user_pass
    – user_nicename
    – user_email
    – user_url
    – user_registered
    – user_activation_key
    – user_status
    – display_name

สร้างเมนูหลังบ้าน add_menu_page

สร้างเมนูหลังบ้าน add_menu_page  บันทึกส่วนตัว

<?php
/**
 * Plugin Name: AAA
 * Description: BMI Calculator To Content
 * Plugin URI: https://www.bosszi.com/%e0%b8%95%e0%b8%b4%e0%b8%94%e0%b8%95%e0%b9%88%e0%b8%ad%e0%b9%80%e0%b8%a3%e0%b8%b2/
 * Author: Supoth Nakudom
 * Author URI: https://www.bosszi.com
 * Version: 1.0
 */
 
function add_menu() {	//ชื่อฟังชันที่เราจะเขียน
    add_menu_page(		// สร้าเมนูหัวข้อใหญ่
    'บัญชี bosszi', 				// Page Title ชื่อของไตเติ้ลเพจ 
    'ระบบบัญชี', 				 // Menu Title ชื่อที่จะให้แสดงในเมนู 
    'manage_options',		 // ตั้งค่าว่าสมาชิกกลุ่นไหนที่จะเห็นเมนูนี้ได้ Capabiliy ดูที่หนัวข้อ Roles and Capabilities
    'maim_menu01', 		// Menu_slug
    'maim_menu1', 		// function ที่เราจะใช้เงาน
    'dashicons-calculator', // ไอคอนด้านหน้าเมนู icon_url ถ้าไม่ใส่มันจะเอาเฟืองให้ https://iconify.design/icon-sets/dashicons/
    '1'   			// position ตำแหน่ง ลำดับของเมนู ให้ดูที่ตาราง https://developer.wordpress.org/reference/functions/add_menu_page/
                    // ถ้าไม่ใส่ระบบจะเลือกให้อัตโนมัติ
    );	
    add_submenu_page(			// สร้าเมนูหัวข้อย่อย
        "maim_menu01",  		//parent_slug ใส่เมนูหลัก https://developer.wordpress.org/reference/functions/add_submenu_page/
        "ทดสอบ sub menu", 		//page_title
        "ทดสอบ sub menu",		//menu_title
        "manage_options", 			//capability
        "sub-menu", 				//menu_slug
        "func_submenu" ,		//function
        ""								//position
    ); 
}
add_action("admin_menu", "add_menu"); //add_action("เมื่อมีสิ่งนี้เกิดขึ้นในระบบ", "ให้ไปเรียกชื่อฟังชันที่เราจะเขียน");
 
function maim_menu1(){
    echo 'This is a maim_menu1';
}

function func_submenu(){
    echo 'This is a submenu_menu1';
}

?>

 

add_action()

add_action()    บันทึกส่วนตัว

add_action( string $tag, callable $function_to_add, int $priority = 10, int $accepted_args = 1 )

  • string $tag                                ชื่อ Hook ที่จะเรียกใช้  Plugin API ของ WP
  • callable $function_to_add        ชื่อฟังชันที่เราเขียนขึ้นเพื่อเพิ่ม code เข้าไปใน hook ที่เราเรียก
  • int $priority = 10                      คือการจัดลำดับ ค่าเริ่มต้นคือ 10 ลำดับความสำคัญในการทำ Function นี้
  • int $accepted_args = 1             กำหนดจำนวนพารามิเตอร์ของฟังก์ชัน ค่าเริ่มต้นคือ 1
add_action("admin_menu", "bosszi_add_menu");
//add_action("API ของ WP", "ชื่อฟังชันที่เราจะเขียน");

 

Header Fields

Header Fields  บันทึกส่วนตัว

<?php
/**
 * Plugin Name: AAA
 * Description: BMI Calculator To Content
 * Plugin URI: https://www.bosszi.com/%e0%b8%95%e0%b8%b4%e0%b8%94%e0%b8%95%e0%b9%88%e0%b8%ad%e0%b9%80%e0%b8%a3%e0%b8%b2/
 * Author: Supoth Nakudom
 * Author URI: https://www.bosszi.com
 * Version: 1.0
 */
 

?>