根据 WP 编码标准清洁和消毒 php 代码

Cleaning and sanitizing php code as per WP coding standard

我有几行代码需要根据 WP 编码标准使用 esc_html、wp_kses() 等函数 (https://developer.wordpress.org/reference/functions/wp_kses/) 进行清理。该代码在 post 详细信息页面上生成一个打印按钮。问题是我无法找出使用 wp_kses 函数的正确方法,以便在页面上显示按钮。 有人可以帮我吗?我是 php 的初学者。提前致谢!

文件上的代码

<!-- printer friednly link  -->
    <?php if(function_exists('pf_show_link')){echo pf_show_link();} ?>

我正在尝试添加的代码没有输出任何按钮

<!-- printer friednly link  -->
    <?php
    if ( function_exists( 'pf_show_link' ) ) {
        $allowed_tags = array(
            'strong' => array(),
            'a'      => array(
                'href'  => array(),
                'title' => array(),
            ),
        );
        echo wp_kses( $allowed_tags );
    }
    ?>

我不确定你是否应该在这里使用 wp_kses。如果您是使用函数生成 html 输出的人,则无需清理。无论如何,如果你真的想要,你必须列出你使用的 all html 标签(divimg...)和所有 标签内的属性(stylesrconclick...)。像这样尝试:

$allowed_tags = array(
    'div'    => array(),
    'img'    => array(
        'style' => array(),
        'src' => array(),
        'alt' => array()
    ),
    'strong' => array(),
    'a'      => array(
        'href'  => array(),
        'title' => array(),
        'rel' => array(),
        'onclick' => array(),
        'class' => array(),
        'data-wpel-link' => array()
    ),
);

echo wp_kses(pf_show_link(), $allowed_tags);