添加新页面时的内容模板

时间:2015-01-27 作者:John Crest

在创建新页面时,是否可以将预定义的代码块插入编辑器/文本区域?

在我的网站上,我有一个当地人的列表,虽然每个页面有不同的内容,但内容的显示方式是相同的(表格、标题等)。添加新用户时,我需要手动键入标记(或从上一页复制粘贴)。在添加新页面时,我只需要一个片段,该页面为我提供了表格结构,以便添加新的人员数据。

或者是可以添加到工具栏的自定义按钮,用于插入表格html?

1 个回复
SO网友:tao

对任意多个属性使用短代码。

add_shortcode(\'custom-display-of-data\', \'custom_display_of_data\');

function custom_display_of_data($atts) {
    $atts = shortcode_atts(
        array(
            \'foo\' => false, // default foo is false
            \'bar\' => \'default bar\', // default bar is string: default bar
            // define defaults for as many attributes you need
        ), $atts, \'custom-display-of-data\' );
    // place your code here to return the content you want 
    // based on values of your attributes
    // and place it in a variable. (i use $output)
    return $output;
}
现在您可以使用[custom-display-of-data foo="my foo" bar="my bar"] 在您的帖子中,它将响应函数返回的结果custom_display_of_data() 使用您传递的属性。唯一的限制是需要以字符串形式传递数据,因此,如果要传递数组或对象,可能需要以json格式添加它们,并在函数中对其进行解码。

记住你需要return the output 函数的,not echo it. 如果不明显,您应该将短代码、函数和属性的名称更改为您喜欢的任何名称,但一个好的做法是在短代码和函数名称前面加上确保其唯一性的前缀。如果任何插件或主题使用与您相同的函数或声明相同的短代码,您将遇到一些php警告。

结束

相关推荐

WP_DROPDOWN_PAGES不适用于POST_TYPE参数

我正在尝试显示带有自定义“post\\u type”帖子的下拉菜单。如果我插入这段代码,它会显示包含所有“页面”的下拉菜单。$arg=array( \'show_option_none\' => __( \'None\' ), \'orderby\' => \'title\', \'hide_empty\' => false, \'suppress_filter