Gutenberg Block-Post特色图像滤镜挂钩

时间:2019-07-22 作者:iRector

我想在古腾堡编辑器的特色图像块中添加一些功能。我已经非常接近了:

enter image description here

问题是,我无法选择图像,并且已经指定了特征图像的帖子没有在块中加载图像。

我想这一定是因为original 未设置阻止对象的键。我尝试了一个随机值,帖子id、媒体帖子id、“渲染”、“缩略图”和“帖子缩略图”,但没有骰子。“我的钥匙”应该设置为什么?为什么特色图像未加载,无法设置和保存?

window.wp.hooks.addFilter( 
    \'editor.PostFeaturedImage\', 
    \'myplugin/myhook\', 
    function( original ) { 
        console.log (original);
        return function() { 
            return (
                window.wp.element.createElement( 
                    \'div\', 
                    { key: \'outer\' + Math.random() }, 
                    [
                        \'Prepend above\',
                        _.extend( original( {} ), { key: \'my-key\' } ),
                        \'Append below\' 
                    ]
                )
            );
        } 
    } 
);

1 个回复
最合适的回答,由SO网友:Sally CJ 整理而成

documentation:

前置并附加到面板内容:

var el = wp.element.createElement;

function wrapPostFeaturedImage( OriginalComponent ) { 
  return function( props ) {
      return (
          el(
              wp.element.Fragment,
              {}, 
              \'Prepend above\',
              el(
                  OriginalComponent,
                  props
              ),
              \'Append below\'
          )
      );
  } 
} 

wp.hooks.addFilter( 
  \'editor.PostFeaturedImage\', 
  \'my-plugin/wrap-post-featured-image\', 
  wrapPostFeaturedImage
);
那么你是不是故意不使用wp.element.Fragment?

您可能还需要检查以下示例: