要定期(自动)将静态Markdown内容读入可湿性粉剂页面,最简单的方法是什么?

时间:2011-08-17 作者:ZaMoose

我想同步我的主题的自述。将其标记到我的站点上的一个页面中,并希望能够只需更新该文本一次,即当我将代码提交到BitBucket时。我有我的主题hg pull -u 定期更新,因此代码保持新鲜,每次更改源代码时,自述文件都会得到更新,但我的WordPress页面包含自述文件,因此需要手动更新。

(我用的是马克·贾奎斯的Markdown on Save 进行MD->HTML舞蹈。)

有什么想法吗?

2 个回复
SO网友:nvartolomei

我使用WP Cron功能实现了这一点。

add_action(\'wp\', \'wpse_26170_activation\');

function wpse_26170_activation() {
    if ( !wp_next_scheduled( \'wpse_26170_update_readme_page\' ) ) {
        wp_schedule_event( current_time( \'timestamp\' ), \'daily\', \'wpse_26170_update_readme_page\');
    }
}

function wpse_26170_update_readme_page() {
    $page = array(
        \'ID\'           => 767,
        \'post_content\' => Markdown( file_get_contents( \'path/to/readme.markdown\' ) )
    );

    if (
        // Filters return true if they existed before you removed them
        remove_filter( \'content_filtered_save_pre\', \'wp_filter_post_kses\' ) &&
        remove_filter( \'content_save_pre\', \'wp_filter_post_kses\' )
    ) {
        $page[\'post_content\'] = wp_kses_post( $page[\'post_content\'] );
    }

    wp_update_post($page);
}
现在,这个cron作业应该每天运行,用readme更新页面,请注意,您必须用页面ID和标记文件的路径更改“ID”。

如果您在运行cron时遇到问题,请阅读Nettuts的以下帖子http://wp.tutsplus.com/articles/insights-into-wp-cron-an-introduction-to-scheduling-tasks-in-wordpress/

你还需要Markdown On Save 插件,因为此函数使用它的Markdown类。

实际上你可以打电话给wpse_26170_update_readme_page 执行后的功能hg pull -u.

SO网友:Tareq

您可以解析标记文件,并使用某种方法(例如使用快捷码)显示页面中的内容。更新文件时,它将自动更新。因为,它将解析降价文件并自动提供HTML。

结束

相关推荐

允许用户编辑Markdown并显示HTML输出时出现问题(WordPress的WMD编辑器插件)

这是答案WMD Editor implementation for Wordpress.When the users writes a post everything is displayed OK:The problem is when the user clicks EDIT:HTML版本就是显示的版本(我认为这是一种正常的行为,因为WMD编辑器将文章的降价版本转换为HTML)。修复此问题的步骤是什么?或者有没有解决这个问题的新版本?(我检查了其他问题,但没有人给出具体的解决方案)。