Các hàm thông dụng trong wordpress

Xin chào các bạn, các bạn thấy trong bảng tin wordpress rất nhiều thông tin phức tạp không gọn gàng, nhìn hơi giả dối, vậy làm sao xóa bớt những thứ không cần thiết và thiết kế lại bảng tin đẹp hơn thì hôm nay Win Win Media giới thiệu . Dưới đây là hình ảnh bảng tin ban đầu

Các hàm thông dụng trong wordpress
Ban đầu bảng cấm wordpress chưa chỉnh sửa

Xóa các widget mặc định của WordPress

Đầu tin là chúng ta cần xóa các widget mặc định của wordpress Vui lòng thêm đoạn mã dưới đây vào file functions. php of theme you nhé

hàm hk_remove_dashboard_widgets() {
$wp_meta_boxes toàn cầu;

remove_meta_box( ‘dashboard_primary’,’dashboard’,’side’ ); . comBlog
remove_meta_box( ‘dashboard_plugins’,’dashboard’,’normal’ );
remove_meta_box( ‘dashboard_right_now’,’dashboard’, ‘normal’ );
remove_action( ‘welcome_panel’,’wp_welcome_panel’ );
remove_action( ‘try_gutenberg_panel’, ‘wp_try_gutenberg_panel’);
remove_meta_box(‘dashboard_quick_press’,’dashboard’,’side’);
remove_meta_box(‘dashboard_recent_drafts’,’dashboard’,’side’);
remove_meta_box(‘dashboard_secondary’,’dashboard’,’side’);
remove_meta_box(‘dashboard_recent_comments’,’dashboard’,’normal’);
remove_meta_box(‘dashboard_activity’,’dashboard’, ‘normal’);

bỏ đặt( $wp_meta_boxes[‘dashboard’][‘normal’][‘core’][‘dashboard_site_health’] );

Ở các bài trước của sê-ri PHP dành cho Nhà phát triển WordPress chắc chắn bạn đã làm việc qua PHP khá nhiều rồi phải không, bạn cũng đã biết rất nhiều vấn đề về cơ bản trong PHP. Vì vậy, ở bài viết này, hãy áp dụng các kiến ​​thức đó vào việc xử lý một số hàm thông tin ứng dụng trong WordPress mà khi bạn lập trình với nó, bạn sẽ sử dụng rất nhiều, xin nhắc lại, rất nhiều

Lưu ý. Nếu bạn cần biết thêm nhiều mã trong WordPress, bạn có thể xem các bài viết WordPress Nâng cao

bloginfo() và get_bloginfo()

bloginfo() và get_bloginfo() là hàm lấy dữ liệu chung của website WordPress của bạn như tên website, đường dẫn website, phiên bản WordPress đang sử dụng,…Sở dĩ có hàm

1 là do hàm get chỉ hỗ trợ trả về, còn

2

Cấu hình sử dụng.

3

Trong đó, tham số hiển thị là tham số khai báo thành phần cần lấy ra, nó có tham số như sau

  • 4. Name of website setting in Setting -> General
  • 5. Set value Site Address in Settings -> General
  • 6. Giá trị địa chỉ WordPress trong Settings -> General
  • 7. Giá trị của phần Dòng giới thiệu trong Cài đặt -> Chung
  • 8. Giá trị của phần Email quản trị trong Cài đặt -> Chung
  • 9. Giá trị bộ ký tự trong Cài đặt -> Đọc

  •     if( get_bloginfo(‘name’) ) :
            bloginfo(‘name’);
        endif;
    ?>
    0. Phiên bản WordPress đang sử dụng

  •     if( get_bloginfo(‘name’) ) :
            bloginfo(‘name’);
        endif;
    ?>
    1. Mã ngôn ngữ của trang web đang sử dụng

  •     if( get_bloginfo(‘name’) ) :
            bloginfo(‘name’);
        endif;
    ?>
    2. Path to file style. css of theme being active

  •     if( get_bloginfo(‘name’) ) :
            bloginfo(‘name’);
        endif;
    ?>
    3. Đường dẫn của chủ đề thư mục đang hoạt động

  •     if( get_bloginfo(‘name’) ) :
            bloginfo(‘name’);
        endif;
    ?>
    4. Đường dẫn trỏ đến tệp xmlrpc. php trên trang web

  •     if( get_bloginfo(‘name’) ) :
            bloginfo(‘name’);
        endif;
    ?>
    5. Đường dẫn của trình cấp Atom trên trang web

  •     if( get_bloginfo(‘name’) ) :
            bloginfo(‘name’);
        endif;
    ?>
    6. Đường dẫn của trình RDF cấp trên trang web

  •     if( get_bloginfo(‘name’) ) :
            bloginfo(‘name’);
        endif;
    ?>
    7. Đường dẫn RSS cấp trên trang web

  •     if( get_bloginfo(‘name’) ) :
            bloginfo(‘name’);
        endif;
    ?>
    8. Đường dẫn của trình RSS2 cấp trên trang web

  •     if( get_bloginfo(‘name’) ) :
            bloginfo(‘name’);
        endif;
    ?>
    9. Đường dẫn cấp Atom của bình luận trên trang web
  •     echo ‘
    ’;
        var_dump( $post );
    ?>
    0. Đường dẫn cấp RSS2 của bình luận trên trang web

Ví dụ sử dụng

Hiển thị tên trang web

hoặc sử dụng get_bloginfo()

or used get_bloginfo() in check check it has no data


    if( get_bloginfo(‘name’) ) :
        bloginfo(‘name’);
    endif;
?>

Object $post

Đối tượng $post nó sẽ chứa toàn bộ dữ liệu của các bài đăng truy vấn trên trang web gửi về cơ sở dữ liệu. Ví dụ khi bạn ra trang chủ thì mặc định trang web sẽ có truy vấn để lấy danh sách các bài viết mới nhất, hoặc khi vào một mẫu bất kỳ như nội dung bài viết, trang, danh mục,. then it will have a private query to get data about

Read more. Tìm hiểu Truy vấn và Vòng lặp trong WordPress

Bây giờ ví dụ bạn thử đổ đối tượng $post vào tệp index. php của chủ đề

    echo ‘
’;
    var_dump( $post );
?>

Kết quả sẽ trả về kiểu như thế này (nếu bạn đang thiết lập trang chủ hiển thị các bài viết mới nhất)

object(WP_Post)#121 (24) {
  ["ID"]=>
  int(1)
  ["post_author"]=>
  string(1) "1"
  ["post_date"]=>
  string(19) "2015-06-10 15:24:53"
  ["post_date_gmt"]=>
  string(19) "2015-06-10 15:24:53"
  ["post_content"]=>
  string(86) "Welcome to WordPress. This is your first post. Edit or delete it, then start blogging!"
  ["post_title"]=>
  string(12) "Hello world!"
  ["post_excerpt"]=>
  string(0) ""
  ["post_status"]=>
  string(7) "publish"
  ["comment_status"]=>
  string(4) "open"
  ["ping_status"]=>
  string(4) "open"
  ["post_password"]=>
  string(0) ""
  ["post_name"]=>
  string(11) "hello-world"
  ["to_ping"]=>
  string(0) ""
  ["pinged"]=>
  string(0) ""
  ["post_modified"]=>
  string(19) "2015-06-10 15:24:53"
  ["post_modified_gmt"]=>
  string(19) "2015-06-10 15:24:53"
  ["post_content_filtered"]=>
  string(0) ""
  ["post_parent"]=>
  int(0)
  ["guid"]=>
  string(37) "https://hocphp-thachpham92.c9.io/?p=1"
  ["menu_order"]=>
  int(0)
  ["post_type"]=>
  string(4) "post"
  ["post_mime_type"]=>
  string(0) ""
  ["comment_count"]=>
  string(1) "1"
  ["filter"]=>
  string(3) "raw"
}

Từ đó, bạn có thể dựa vào đối tượng này mà lấy thông tin ra phù hợp như thế này

post_title; ?>

Tuy nhiên, bạn có một cách khác để viết mã gọn hơn đó là sử dụng các thẻ mẫu hàm. Ví dụ để hiển thị tiêu đề của bài đăng trong đối tượng $post thì sẽ sử dụng thẻ mẫu the_title()

Gợi ý. Để xem truy vấn, hãy kết xuất đối tượng $wp_query

Lớp WP_Query

Khi bạn cần viết mã để lấy danh sách các bài đăng mà bạn cần, thì bạn sẽ phải sử dụng đến lớp WP_Query (có thể sử dụng hàm get_posts() nhưng mình khuyến khích các bạn sử dụng WP_Query). Nó sẽ trả về kết quả là các đối tượng chứa danh sách bài viết (giống như $post)

Read more. Tìm hiểu Truy vấn và Vòng lặp trong WordPress

Trong lớp này, bạn phải khai báo một số tham số cho nó để lấy bài viết ra theo ý mình. Ví dụ dưới đây là sẽ lấy 5 bài ngẫu nhiên

$my_query = new WP_Query( ‘posts_per_page=5&orderby=rand’ );

Hoặc bạn có thể tham số vào một biến riêng


    $args = array(
        ‘posts_per_page’    => 5,
        ‘orderby’    => ‘rand’
    );
    $the_query = new WP_Query( $args );
    var_dump( $my_query );
?>

Bạn có đối tượng $my_query rồi thì chỉ cần sử dụng vòng lặp while() để nó hiển thị ra toàn bộ dữ liệu là được


    $args = array(
        ‘posts_per_page’    => 5,
    );
    $the_query = new WP_Query( $args );

    if ( $the_query->have_posts() ) {

        echo ‘

    ’;
            while ( $the_query->have_posts() ) {

                $the_query->the_post();
                echo ‘

  • ’ . get_the_title() . ‘
  • ’;
            }
            echo ‘
’;

    } else {
        // no posts found
    }

    /* Restore original Post Data */
    wp_reset_postdata();
?>

Hàm add_action() và add_filter()

Hai hàm này được sử dụng rất nhiều trong việc lập trình chủ đề hoặc lập trình plugin. Mục đích của hai chức năng này có thể dựa vào mã nguồn của WordPress hoặc mã nguồn của plugin/theme bất kỳ mà không cần chỉnh sửa mã trực tiếp trong mã nguồn

Bộ lọc niệm niệm hành động khá dài nên mình khuyến khích bạn đọc bài viết này

Lớp WP_Widget

Nếu bạn cần tạo tiện ích con trong WordPress thì sẽ cần tạo một lớp khác kế thừa lại lớp này. Có thể là mình đã có bài hướng dẫn kèm video rất chi tiết tại đây

Hàm register_nav_menus() và wp_nav_menu()

Nếu bạn muốn tạo thêm các vị trí menu trong WordPress (Menu Location) thì cần sử dụng hàm register_nav_menus(), cách sử dụng rất đơn giản, ví dụ dưới đây mình sẽ tạo thêm 3 vị trí menu (mã này nên đặt trong . php nhé)


    register_nav_menus( array(
        ‘menu-1’ => ‘Menu 1’,
        ‘menu-2’ => ‘Menu 2’,
        ‘menu-3’ => ‘Menu 3’
    ) );
?>

And to display a menu location any that out outside template, you can use function wp_nav_menu()

0

Hàm get_post_meta()

Hàm này sẽ có chức năng lấy các meta dữ liệu (trong bảng wp_postmeta của cơ sở dữ liệu) trong bất kỳ bài đăng nào ở bên ngoài. Về chức năng này, bạn sẽ xem hướng dẫn trường tùy chỉnh của mình để hiểu rõ hơn

Tra cứu chức năng WordPress

Ở trên chỉ là một số hàm và đối tượng, lớp thường được sử dụng trong WordPress mà thôi. Nếu bạn muốn xem đầy đủ hơn thì xem tại địa chỉ này

Lời kết

Vì vậy là phần này bạn đã thao tác sơ lược trên các mã của WordPress, và mình nghĩ là bây giờ bạn đã hiểu nhiều hơn rồi đó. Và series này mình viết dành cho những người muốn lập trình trong WordPress nên các kiến ​​thức cơ bản tới đây bạn đã có đủ rồi nên mình sẽ tạm dừng series tại đây

Bây giờ, công việc của bạn là xem một số hướng dẫn cụ thể trong WordPress như Hướng dẫn lập trình chủ đề WordPress và Hướng dẫn viết plugin xem thời tiết của Thachpham. com để bạn vận dụng các kiến ​​thức vào thực tế tốt hơn. Mình tin là chỉ cần như vậy bạn sẽ dễ dàng bắt được code trong WordPress rồi. Và nếu bạn cần hướng dẫn về mã trong WordPres nhiều hơn nữa, hãy đọc các bài viết trong mục Phát triển WordPress của mình

Trong khi bạn làm việc với WordPress, bạn nên dành thời gian học thêm PHP, cụ thể là bạn nên học thêm PHP & MySQL vì nó sẽ có nhiều kiến ​​thức khác nhau sẽ giúp bạn sau này và nên giữ gìn ít nhất.

Hy vọng với loạt phim ngắn này, các bạn sẽ hiểu rõ hơn về PHP và hiểu cách làm việc trong WordPress tốt hơn so với ngôn ngữ PHP. Chúc bạn sớm thành công