【问题标题】:Apply filter to an element with specific class将过滤器应用于具有特定类的元素
【发布时间】:2022-11-03 07:30:48
【问题描述】:

我正在使用这个过滤器

add_filter( 'render_block', function( $block_content, $block ) {
    if ( 'generateblocks/headline' === $block['blockName'] ) {
        $block_content = str_replace( '<a ', '<a target="_blank" rel="nofollow" ', $block_content );
    }

    return $block_content;
}, 10, 2 );

但它适用于所有链接块'generateblocks/headline'

我想知道是否可以制作这个过滤器只要为一个工作特定的 CSS 类?

我是 PHP 新手,非常感谢您的帮助!

塞缪尔

【问题讨论】:

    标签: php wordpress class filter


    【解决方案1】:

    即使您可以为块编辑器中的链接添加 set Open in new,以下是您在为 GB 标题分配类别后修改过滤器的方法:

    add_filter( 'render_block', function( $block_content, $block ) {
        if ( 'generateblocks/headline' === $block['blockName'] && isset( $block['attrs']['className'] ) && 'my-class' === $block['attrs']['className']  ) {
            $block_content = str_replace( '<a ', '<a target="_blank" rel="nofollow" ', $block_content );
        }
    
        return $block_content;
    }, 10, 2 );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-02
      • 1970-01-01
      • 1970-01-01
      • 2011-11-01
      • 2016-10-07
      • 2016-03-31
      • 1970-01-01
      相关资源
      最近更新 更多