目前,我尝试使用settings API为我的主题的Wordpress选项编写回调。这是我的职责:
    function background_callback($args){
    printf(
        \'Picture 
         <input 
               type="radio" 
               name="%1$s[%2$s]" 
               onclick= "showChoosenField("%3$s")" 
               value="<?php checked("%3$s", get_option("%1$s[%2$s]"), true); ?>"
          />
         <input 
               type="radio" 
               name="%1$s[%2$s]" 
               onclick= "showChoosenField("%4$s")" 
               value="<?php checked("%4$s", get_option("%1$s[%2$s]"), true); ?>"
          />   
         Color
         <p></p>
         <label for="%2$s">%5$s / %3$s/ %4$s</label>\',
        $args[\'option_name\'],
        $args[\'namePic_Color\'],
        $args[\'valuePic\'],
        $args[\'valueColor\'],
        $args[\'description\']
        );
    }
 但当我查看浏览器时,会得到以下输出:
<td>"Picture"
    <input 
          type="radio" 
          name="header_options_group[img_color_name]" 
          onclick="showChoosenField(" ")" 
          value="<?php checked(" ", get_option("header_options_group[img_color_name]"), true); ?>
          ""
    />"
    <input 
          type="radio" 
          name="header_options_group[img_color_name]" 
          onclick="showChoosenField(" ")" 
          value="<?php checked(" ", get_option("header_options_group[img_color_name]"), true); ?>
          ""
    /> Color" 
    <p></p>
    <label for="img_color_name">
          Please check if you want a Picture or a color. / / 
    </label>
</td>
 第7、8和14、15行末尾的引号在哪里?我尝试了很多方法来摆脱这些东西。但无论我做什么修改,它们都会留在那里,或者其他一些引用出现在其他地方。我把每件事都浓缩了,删除了不同的部分,但没有办法。
我认为这是因为printf中的php。有人知道为什么会这样吗?或者,如果是因为php,我如何才能改变它,它的工作?我再也没有主意了。非常感谢。