用带有页面模板的页面的一些内容填充编辑器

时间:2017-03-19 作者:garrow

我有一个类似“page salespage.php”的页面模板。我要做的是,当此页面模板应用于页面时,在tinymice编辑器中显示默认内容。下面是我是如何做到这一点的,但我没有运气。

function my_editor_content( $content ) {

if (is_page_template(\'page-salespage.php\'))
{

$content = "This is some custom content I\'m adding to the post editor because I hate re-typing it.";

return $content;
}   

}

add_filter( \'default_content\', \'my_editor_content\' );
寻找解决方案以满足我的要求。

1 个回复
SO网友:brianjohnhanna

这个is_page_template() 函数在管理中不起作用。的第二个参数default_content 过滤器是$post对象。您最好的选择是利用它在post meta信息中获取页面模板的存储值:

add_filter( \'default_content\', \'wpse_editor_default_content\', 10, 2 );

function wpse_editor_default_content( $content, $post ) {

    if ( \'page-salespage.php\' === get_post_meta( $post->ID, \'_wp_page_template\', true ) ) {
        $content = "If you like this post, then please consider retweeting it or sharing it on Facebook.";
    }

    return $content;
}
请注意,只有当您已经分配了页面模板并将其保存为草稿或已发布时,此操作才有效,否则尚未分配元值。

相关推荐

无法在模板函数.php中使用IS_HOME

我试图在标题中加载一个滑块,但只在主页上加载。如果有帮助的话,我正在使用Ultralight模板。我正在尝试(在template functions.php中)执行以下操作:<?php if ( is_page( \'home\' ) ) : ?> dynamic_sidebar( \'Homepage Widget\' ); <?php endif; ?> 但这行不通。现在,通过快速的google,我似乎需要将请