1 Làm cách nào tôi có thể sử dụng application_filters hoặc add_filter chỉ trên một số loại bài đăng nhất định?

câu hỏi được tạo ra tại Wed, May 8, 2019 12:00 AM

Tôi đang cố chỉnh sửa đánh dấu hình ảnh, nhưng chỉ cho một loại bài đăng tùy chỉnh. Làm cách nào tôi có thể áp dụng bộ lọc cho chỉ loại bài đăng đó?

Tôi đã thử truy vấn loại bài đăng bên trong chức năng và bên ngoài chức năng.

function custom_email_images($html, $id, $caption, $title, $align, $url) {
  $post_type = get_post_type();
  if ( 'email-layout' === $post_type ) {
    $src = wp_get_attachment_url($id);
    $html = '<img src="' . $src . '?w=800" width="415" style="width:415px;max-width:100%">';
  }
  return $html;
}

apply_filters(
  'image_send_to_editor',
  'custom_email_images',
  10,
  6
);
    
2
  1. Mọi thứ thế nào? Bạn đã thử đề xuất của tôi chưa?
    2019-05-13 13: 06: 13Z
1 Câu trả lời                              1                         

get_post_type () mặc định là get_post_type ($post). Mặc dù vậy, hàm không biết về biến $post toàn cầu.

Hãy thử thêm chức năng này vào chức năng ở trên cùng và xem nó có hoạt động không:

global $post;

Nếu không, hãy thử in_r hoặc lặp lại get_post_type và xem nó là gì (hiện tại có thể là "sai").

    
0
2019-05-08 16: 56: 04Z
nguồn đặt đây