Intereting Posts
Обновление до версии 4.5 натолкнуло мой виджет «главной боковой панели» на место Постоянный адрес архива даты для пользовательской таксономии Добавьте иерархические URL-адреса в "posts" Поле поиска для иерархических таксономий в интерфейсе администратора Медиа-библиотека для отображения изображений только для пользователей создать ссылку на профиль пользователя с именем пользователя Заголовки уже отправлены – ядро ​​WordPress Как создать каталог с использованием имени пользователя в теме Get_template_part внутри папки Перенаправить старые .html URL-адреса на новую установку в подпапку Могу ли я индивидуально стилизовать элементы в списке виджетов бэкэнд? Применить комментарий к другому сообщению (не текущему сообщению) Как добавить отношения между настраиваемыми типами сообщений? Лучше ли использовать «Формат имени» или «этот-имя-формат» для настраиваемых полей? Как получить сообщения по содержанию?

Как я могу использовать wp_get_image_editor для изменения размера изображения

Я много wp_get_image_editor в том, как изменить размер изображений, загружаемых с помощью мета-поля, но я ничего не получаю вместо wp_get_image_editor . Я прочитал от codex об этом, но ничего не полезного, поэтому я ищу об этой функции и нашел эти ссылки

WordPress Image Editing Tutorial (WP_Image_Editor Class Examples)

http://wpunknown.com/wp_image_editor/

но это также не полезно для меня.

Я пробовал скрипты из первой ссылки. Сначала я загружаю изображение с носителя, а затем создаю шаблон страницы и записываю этот код в свой шаблон во время цикла:

 if(have_posts()) : while(have_posts()) : the_post(); the_title(); // wp editor image script $testing_img_src = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'full'); $img = wp_get_image_editor( $testing_img_src[0] ); if ( ! is_wp_error( $img ) ) { $img->resize( 500, NULL, false ); $img->set_quality( 100 ); $img->stream(); } endwhile; 

Когда я обновляю страницу, это дает мне такую ​​дерьмо:

      JFIF  ,  gf8 R     ; 8'    Z v  F  `q q  <+ g 51N  `NO   2 Bo   Jֵ  >    o3    M] (  ] [ u   ^핺  _ #;U  ,OLs  $    F  + XΪ  | rx v   p | &     s u< H  a  = r } X  dR         07`qھk r     $    tvw l    朴 B i] -R  }. N)6   >ҵ ,na  G9-   8 #  Kik6  $y> w     N  ~=  1 y8! ʂ:  v  1    V(U%r6 e   Ns  ' 7t  x  1 yF2 I]Y   ˢ~     5  Z T  m5&    u+ ^  ^ } 7   \ЎGL     `     jm Q s  gn   #8 p   Um# v rQZu d    N@  ` 3 s^ a :     2G <  A  njz ' fx+Ƣ    ;  > . 6֎  1Y :sS MYI[E v\     j  5τk)>\!K    덤 @ 둞 9 |)    u9   \c 9  v< _ > y   㿠    98  _M S FK      `  !H#       IENSi+ZZ  o  V      =   sx  MNWmӌcZO i =  馺/     Zk h   #pʶHc J    1Y?oլ   ]F2 ( BN 1 Q A 2      : IKt,s  9(  m n ^; |  Us       9$   3   @?k    "1X T t       o}ZX G >   U2 UJmk9;+-4 \R  QM eu  ŏ  9[     `   O 9   $q [kZu + N      O\     {    f  @ pH%Hϧ$    $ ~ c   L B 7#  gvO k )b {2Iӯ R  rV u M+lܞ      4 ㍲5(    S q    f ҋ~ W~   [ R++ J  ۹O^: |    `֟  \     $ `7:   s۟e        )$E X H$  (U>  v'Z   [  H  q ~  T G} B &  S    ֋I W 4  N-Żi O[ O  ή Y       Fp  qJ|  V   w m j 5 [   |  !Nv        >     ,  *q  w) 1 8 U  y ]mJ 8 bX  $  O%     K $        9   FO f|  ̱XJ7j M=5  o9h     ` 2r bR  V Y9  n 'e  )s$   >5 ~ F  *rQJ` @ d  9 s   ; I*:1;Y } 8 @  ~ d i Hط )     8= Y7    ! c> YT|  c  20r3 +    ^ y  q 䞼 릯f k6  .     pxz괕   8 YFq KmaukJ  ?    V yɀ    c  \pH=    'Z ^  U`@#~Cd  N ;   >  ~9I0   'v8 $     כj  `ge    rp0xۏ q    q  { z  s []ӓ  T  dӳv }U   {8~    X      V  )FQk     e O  [k       3       5 Ť q     Q   $Ԍ    >j   ʥC v f@;JF@Rs A y KA`q     |W %e  #q    ^>      ONģk$ 7  i.   m ~   t Ғ  <     wvwm[僫 & 2 $  g gh   ӷ`   R  :b @ RX+)~FyNppæ  F?NY  C   @w`  2G^  9   < N   /Ԝ      8$  <    _9  ̯u[N j  M    w   {  $ ҇   R mG    V   [Kk $  g 2 D    n#v N nRޘ)    < 1̖ |   dF     A a }  xL   D/ w )w(<B_rO   4  0 !l  9  9  H    f   ܝ ݚZ   }l읬   s  \ u^* 7k5{Yr ] [; d   ic գȡ  t b 0     4W  |  \8  TN Q |o :gМ E|  n7v G      S  [y |B JXuk   ݾ |  ~W      eN  pI 2p A y8Ÿ  $     5<jM 袢 3i Y  >Vm:  $y8 z `{   7m5k "   B1   1   x       xV l    nI 9    s      \     q В@ { ./ NΣJ   j I     | g  W   UU  ۊ  i%u      _  |n  9 O q  20   Ѵ  i !6ʀ  <  lr v OB8[         ?־  o1 I$+G$   F '$  0   ֘ | @BH*      a 6?H  L P S  8   d  +#Q { _   lp@     GO zc ' r / pR    dՒz5   ]U } WG Q tʳHԞ   + 8  V| N _   H   >       y9 0 $ ,   F   .Y  U I #vOB}  {  ~ [ dx!   (   H# s pG`>Q     F sE  c 8    { ,q +         V  *KI   ]7ItIj Vg   s  S  N-6  <*Z  W  vmEݞ  x O Dt9#        8      ep R[  dH  G98 prB ·    Љ #d     8<    Cm  i, h@@9 F < r@  @ '   ! _ 8  5eg'^ umY Y |   ! ? '/k  (A  ) OM v ^  d W Gߥ,  )        ッ   xr) h    ;     3؃  z'Ư, ] NH; A  K:   kۼ; oL T t w_  c I     Pk ܫ  ||aɊ $   I_f    Y    q ?   ƥ)F\  yӳJ RM'  z( v3 z      v  ^:q `t$  UY5{i Pz  OA?78 3   w_ t   G; 猯 \    /c  ~  2O H  Br8         p  q    ee   OG  F }   4   E)^5h    %is- ꬵj S 4ψ: ˉ  >z     q zz   =^٘  \  s 8 )$         j S R~ ` L  ~E]xg[  x  6rp    r:>   -  )I B  ,8#   o 5 s<  y   +I k N 2[ %n a  iAr>WN+N        c   Uӯv x 89[+   ' x$  kO   9    ^ b   Ɵ  K r r < K y c  \ӼW  F M 2 p'9  N c95      R   Q    kU}ԗe  r~    J,    u  Oe  }U 5]h  IE   ns _  T  ` @ * >1   3L   K   z mـ        G a  #6#9  c     C ޓ F "  0>U9  ;  

Я также попытался добавить путь жесткого кодированного изображения, например:

 //$testing_img_src = ABSPATH.'wp-content/uploads/2015/06/colorful-background-31.jpg'; 

но это дает мне такой же результат. Поэтому, пожалуйста, помогите мне в том, как я могу использовать wp_get_image_editor() чтобы изменить изображение или обрезать изображение или есть другой способ для этого.

ПРИМЕЧАНИЕ. Я не хочу использовать add_image_size()

Возможное решение:

Цель: не использовать add_image_size() для отображения изображения нестандартного размера.

Если вы вычисляете изображение без его сохранения, все запросы суммируются с огромной загрузкой страницы из-за повторного ненужного времени обработки. Таким образом, кеширование или сохранение результатов должно быть дополнительной целью.

Добавьте в свой шаблон / плагин image-processor.php :

 //Load your WordPress enviroment $path = dirname(__FILE__); $path = substr($path, 0, stripos($path, "wp-content") ); require( $path . "wp-load.php"); //TODO: filter and handle your $_GET params $post_id = absint($_GET['post_id']); $testing_img_url = wp_get_attachment_image_url( get_post_thumbnail_id($post->ID), 'full' ); if (!$testing_img_url) $testing_img_url = 'http://img.wordpressask.com/image-resize/defaul-image.jpg'; $img = wp_get_image_editor( $testing_img_url ); if ( ! is_wp_error( $img ) ) { header('Content-type:'.finfo_file ($testing_img_url)); $img->resize( 500, NULL, false ); $img->set_quality( 100 ); $img->stream(); } 

Вы можете отобразить изображение в цикле теперь следующим образом:

Шаблон :

 <img src="<?= get_template_directory_uri()?>/image-processor.php?post_id=<?= get_the_ID()?>"> 

Плагин :

 <img src="<?= plugin_dir_path(__FILE__)?>image-processor.php?post_id=<?= get_the_ID()?>"> 

Возможные улучшения:

  • Кэширование / сохранение обработанных изображений.
  • Лучшая обработка ошибок.