背景我试图为特定帖子(甚至页面)创建一个自定义帖子布局模板,WordPress用户可以使用所见即所得编辑器简单地插入内容,而无需担心格式问题(基本上是他们放置内容的“区域”)。我想要多个这样的“;“布局模板”;因此,根据他们在WP admin区域中编辑的帖子(或页面),他们有一个预定义的区域可以放置,例如,一些文本和图像。
我试过的
add_filter( \'default_content\', \'custom_editor_content\' );
function custom_editor_content( $content ) {
global $post;
$id = $post->ID;
if ( $id == \'32\') {
$content = \'
<div>place image here</div>
<p>place text here</p>
\';
}
return $content;
}
示例最初取自
here在上面的示例中(不起作用),我想做一个条件语句if post id equals X, then use this template for the creation of the post
我发现default_content
过滤器仅在创建新帖子(或页面)期间应用,因此它对现有帖子/页面没有影响,因此有条件地基于id
是无用的。
最终目标
我认为有一些结果可能会帮助我。。。
如果有办法运行default_content
在后期保存/编辑时筛选,然后根据后期id有条件地应用筛选器可能会起作用
想办法为最终用户创建多个不同的自定义帖子模板。也就是说,具有预定义的区域,可以在帖子中插入内容。
最后,有没有另一种方法可以让没有HTML功能的最终用户将内容放入帖子或页面,然后自动为其格式化(我在后端进行格式化)?
最合适的回答,由SO网友:George Grigorita 整理而成
找出一种为最终用户创建多个不同自定义帖子模板的方法。也就是说,具有预定义的区域,可以在帖子中插入内容。
您可以使用自定义字段/元框来实现这一点,您可以根据帖子类型或ID限制或显示这些字段/元框Advanced Custom Fields 插件。
或者最后,有没有另一种方法可以允许没有HTML功能的最终用户只将内容放入帖子或页面中,并自动为其进行格式化(由我在后端进行格式化)?
如果自定义字段方法太复杂,可以尝试Quicktag API 使用可视化编辑器上的按钮(选中AddQuicktag). 这样,用户只需单击编辑器工具栏上的按钮,HTML/CSS就会应用于内容。如果您编辑editor-style.css
用户将能够在编辑器中看到更改,就像它出现在前端一样。我认为这是一种比使用标准更干净的方法shortcodes
.