本文整理汇总了PHP中Unit::update_input_module_meta方法的典型用法代码示例。如果您正苦于以下问题:PHP Unit::update_input_module_meta方法的具体用法?PHP Unit::update_input_module_meta怎么用?PHP Unit::update_input_module_meta使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Unit
的用法示例。
在下文中一共展示了Unit::update_input_module_meta方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: duplicate
function duplicate($module_id = '', $unit_id = '')
{
global $wpdb;
if ($module_id == '') {
$module_id = $this->id;
}
/* Duplicate course and change some data */
$new_module = Unit_Module::get_module($module_id);
$old_module_id = $new_module->ID;
unset($new_module->ID);
unset($new_module->guid);
$new_module->post_author = get_current_user_id();
$new_module->post_status = 'publish';
$new_module->post_parent = $unit_id;
$new_module_id = wp_insert_post($new_module);
/*
* Duplicate module post meta
*/
if (!empty($new_module_id)) {
$post_metas = get_post_meta($old_module_id);
foreach ($post_metas as $key => $meta_value) {
$value = array_pop($meta_value);
$value = maybe_unserialize($value);
update_post_meta($new_module_id, $key, $value);
}
}
// Set input module meta
if (isset($post_metas)) {
$input_module_types = self::get_input_module_types();
$module_type = $post_metas['module_type'];
if (in_array($module_type, $input_module_types)) {
$module_id = $new_module_id;
$module_meta = array('mandatory_answer' => isset($post_metas['mandatory_answer']) ? $post_metas['mandatory_answer'] : false, 'gradable_answer' => isset($post_metas['gradable_answer']) ? $post_metas['gradable_answer'] : false, 'minimum_grade_required' => isset($post_metas['minimum_grade_required']) ? $post_metas['minimum_grade_required'] : false, 'limit_attempts' => isset($post_metas['limit_attempts']) ? $post_metas['limit_attempts'] : false, 'limit_attempts_value' => isset($post_metas['limit_attempts_value']) ? $post_metas['limit_attempts_value'] : false);
Unit::update_input_module_meta($unit_id, $module_id, $module_meta);
}
}
}