• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP wpcf_pr_get_belongs函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了PHP中wpcf_pr_get_belongs函数的典型用法代码示例。如果您正苦于以下问题:PHP wpcf_pr_get_belongs函数的具体用法?PHP wpcf_pr_get_belongs怎么用?PHP wpcf_pr_get_belongs使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了wpcf_pr_get_belongs函数的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。

示例1: wpv_before_display_post_post_relationship

function wpv_before_display_post_post_relationship($post, $view_id)
{
    static $related = array();
    global $WP_Views;
    if (function_exists('wpcf_pr_get_belongs')) {
        if (!isset($related[$post->post_type])) {
            $related[$post->post_type] = wpcf_pr_get_belongs($post->post_type);
        }
        if (is_array($related[$post->post_type])) {
            foreach ($related[$post->post_type] as $post_type => $data) {
                $related_id = wpcf_pr_post_get_belongs($post->ID, $post_type);
                if ($related_id) {
                    $WP_Views->set_variable($post_type . '_id', $related_id);
                }
            }
        }
    }
}
开发者ID:davilode83,项目名称:occupysandy.net,代码行数:18,代码来源:wpv-filter-post-relationship-embedded.php


示例2: generate_checksum

 /**
  * Generates checksums for defined content types.
  * 
  * @param type $type
  * @param type $item_id
  * @return type
  */
 function generate_checksum($type, $item_id = null)
 {
     switch ($type) {
         case 'group':
             $checksum = wpcf_admin_fields_get_group($item_id);
             $checksum['meta'] = $this->get_group_meta($item_id);
             ksort($checksum['meta']);
             break;
         case 'field':
             $checksum = wpcf_admin_fields_get_field($item_id);
             break;
         case 'custom_post_type':
             $checksum = wpcf_get_custom_post_type_settings($item_id);
             $checksum['relationship_settings']['has'] = wpcf_pr_get_has($item_id);
             if (is_array($checksum['relationship_settings']['has'])) {
                 ksort($checksum['relationship_settings']['has']);
             }
             $checksum['relationship_settings']['belongs'] = wpcf_pr_get_belongs($item_id);
             if (is_array($checksum['relationship_settings']['belongs'])) {
                 ksort($checksum['relationship_settings']['belongs']);
             }
             break;
         case 'custom_taxonomy':
             $checksum = wpcf_get_custom_taxonomy_settings($item_id);
             break;
         default:
             /*
              * Enable $this->generate_checksum('test');
              */
             $checksum = $type;
             break;
     }
     // Unset various not wanted data
     foreach ($this->_remove_data_keys as $key) {
         if (isset($checksum[$key])) {
             unset($checksum[$key]);
         }
     }
     if (is_array($checksum)) {
         ksort($checksum);
     }
     //        debug( $checksum, false );
     return md5(maybe_serialize($checksum));
 }
开发者ID:pwillems,项目名称:mimosa-contents,代码行数:51,代码来源:class.wpcf-import-export.php


示例3: record_post_relationship_belongs

 function record_post_relationship_belongs($content)
 {
     global $post;
     $this->post_relationship_depth = $this->post_relationship_depth + 1;
     if (!empty($post->ID) && function_exists('wpcf_pr_get_belongs')) {
         if (!isset($this->relations[$post->post_type])) {
             $this->relations[$post->post_type] = wpcf_pr_get_belongs($post->post_type);
         }
         if (is_array($this->relations[$post->post_type])) {
             foreach ($this->relations[$post->post_type] as $post_type => $data) {
                 $related_id = wpcf_pr_post_get_belongs($post->ID, $post_type);
                 if ($related_id) {
                     $this->post_relationship['$' . $post_type . '_id'] = $related_id;
                 } else {
                     $this->post_relationship['$' . $post_type . '_id'] = 0;
                 }
             }
         }
     }
     $this->post_relationship_track[$this->post_relationship_depth] = $this->post_relationship;
     return $content;
 }
开发者ID:axeljohansson1988,项目名称:oddcv,代码行数:22,代码来源:toolset.object.relationship.class.php


示例4: wpv_shortcode_wpv_control_item

function wpv_shortcode_wpv_control_item( $atts, $value ) {
	global $sitepress;
	// First control checks
	if ( !function_exists( 'wpcf_pr_get_belongs' ) ) {
		return __( 'You need the Types plugin to render this parametric search control', 'wpv-views' );
	}
	if ( !isset( $atts['url_param'] ) || empty( $atts['url_param'] ) ) {
		return __('The url_param argument is missing from the wpv-control-set shortcode.', 'wpv-views');
	}
	if ( !isset( $atts['type'] ) || empty( $atts['type'] ) ) {
		return __('The type argument needs to be set in the wpv-control-item shortcode.', 'wpv-views');
	}
	if ( !isset( $atts['ancestor_type'] ) || empty( $atts['ancestor_type'] ) ) {
		return __('The ancestor_type argument is missing from the wpv-control-item shortcode.', 'wpv-views');
	}
	if ( !isset( $atts['ancestor_tree'] ) || empty( $atts['ancestor_tree'] ) ) {
		return __('The ancestors argument is missing from the wpv-control-set shortcode.', 'wpv-views');
	}
	if ( !isset( $atts['returned_pt_parents'] ) || empty( $atts['returned_pt_parents'] ) ) {
		return __('The post types listed in this View do not have ancestors.', 'wpv-views');
	}
	extract(
		shortcode_atts( array(
				'type' => '', // select, multi-select, checbox, checkboxes, radio/radios, date/datepicker, textfield
				'url_param' => '', // URL parameter to be used
				'ancestor_type' => '',
				'ancestor_tree' => '',
				'default_label' => '',
				'returned_pt' => '',
				'returned_pt_parents' => '',
				'format' => false,
				'orderby' => 'title', // can be any key of $allowed_orderby_values
				'order' => 'ASC', // ASC or DESC
                'style' => '', // inline styles for input
                'class' => '', // input classes
                'label_style' => '', // inline styles for input label
                'label_class' => '' // classes for input label
			), $atts)
	);
    
    $style = esc_attr( $style );
    $class = esc_attr( $class );
    $label_style = esc_attr( $label_style );
    $label_class = esc_attr( $label_class );   
    
	$ancestor_tree_array = explode( '>', $ancestor_tree ); // NOTE this makes it useful for just one-branch scenarios, might extend this
	if ( !in_array( $ancestor_type, $ancestor_tree_array ) ) {
		return __( 'The ancestor_type argument refers to a post type that is not included in the ancestors tree.', 'wpv-views' );
	}
	global $wpdb, $WP_Views;
	$return = '';
	$this_type_parent_classes = array();
	$returned_post_types = explode( ',', $returned_pt );
	$returned_post_type_parents = explode( ',', $returned_pt_parents );
	
	$filter_full_list = false;
	
	$this_tree_ground = end( $ancestor_tree_array );
	$this_tree_roof = reset( $ancestor_tree_array );
	if ( !in_array( $this_tree_ground, $returned_post_type_parents ) ) {
		return __( 'The ancestors argument does not end with a valid parent for the returned post types on this View.', 'wpv-views' );
	}
	
	if ( !empty( $default_label ) ) {
		$aux_array = $WP_Views->view_used_ids;
		$view_name = get_post_field( 'post_name', end($aux_array));
		$default_label = wpv_translate( $ancestor_type . '_default_label', $default_label, false, 'View ' . $view_name );
	}

	// Validate order and orderby arguments for SQL query (ignore invalid values).

	// Allowed values and their translation into names of wp_posts columns.
	$allowed_orderby_values = array(
			'id' => 'ID',
			'title' => 'post_title',
			'date' => 'post_date',
			'date_modified' => 'post_modified',
			'comment_count' => 'comment_count' );
	if( ! isset( $allowed_orderby_values[ $orderby ] ) ) {
		$orderby = 'title';
	}
	// Now $orderby contains a valid column name at all times.
	$orderby = $allowed_orderby_values[ $orderby ];
	// Default to ASC on invalid $order value.
	$order = ( 'DESC' == strtoupper( $order ) ) ? 'DESC' : 'ASC';
	
	$view_settings = $WP_Views->get_view_settings();
	$dependant = false;
	$counters = false;
	$empty_action = array();
	if ( isset( $view_settings['dps'] ) && is_array( $view_settings['dps'] ) && isset( $view_settings['dps']['enable_dependency'] ) && $view_settings['dps']['enable_dependency'] == 'enable' ) {
		$dependant = true;
		$force_disable_dependant = $WP_Views->get_force_disable_dependant_parametric_search();
		if ( $force_disable_dependant ) {
			$dependant = false;
		}
	}
	if ( $format && strpos( $format, '%%COUNT%%' ) !== false ) {
		$counters = true;
	}
//.........这里部分代码省略.........
开发者ID:rebeccayshen,项目名称:kitlist,代码行数:101,代码来源:wpv-filter-embedded.php


示例5: WPV_wpcf_record_post_relationship_belongs

function WPV_wpcf_record_post_relationship_belongs($content)
{
    global $post, $WPV_wpcf_post_relationship, $WPV_wpcf_post_relationship_depth, $WPV_wpcf_post_relationship_track;
    static $related = array();
    $WPV_wpcf_post_relationship_depth++;
    if (!empty($post->ID) && function_exists('wpcf_pr_get_belongs')) {
        if (!isset($related[$post->post_type])) {
            $related[$post->post_type] = wpcf_pr_get_belongs($post->post_type);
        }
        if (is_array($related[$post->post_type])) {
            foreach ($related[$post->post_type] as $post_type => $data) {
                $related_id = wpcf_pr_post_get_belongs($post->ID, $post_type);
                if ($related_id) {
                    $WPV_wpcf_post_relationship['$' . $post_type . '_id'] = $related_id;
                } else {
                    $WPV_wpcf_post_relationship['$' . $post_type . '_id'] = 0;
                }
            }
        }
    }
    $WPV_wpcf_post_relationship_track[$WPV_wpcf_post_relationship_depth] = $WPV_wpcf_post_relationship;
    return $content;
}
开发者ID:aarongillett,项目名称:B22-151217,代码行数:23,代码来源:functions.php


示例6: WPV_wpcf_record_post_relationship_belongs

function WPV_wpcf_record_post_relationship_belongs($content)
{
    global $post, $WPV_wpcf_post_relationship;
    static $related = array();
    if (function_exists('wpcf_pr_get_belongs')) {
        if (!isset($related[$post->post_type])) {
            $related[$post->post_type] = wpcf_pr_get_belongs($post->post_type);
        }
        if (is_array($related[$post->post_type])) {
            foreach ($related[$post->post_type] as $post_type => $data) {
                $related_id = wpcf_pr_post_get_belongs($post->ID, $post_type);
                if ($related_id) {
                    $WPV_wpcf_post_relationship['$' . $post_type . '_id'] = $related_id;
                }
            }
        }
    }
    return $content;
}
开发者ID:Netsoro,项目名称:gdnlteamgroup,代码行数:19,代码来源:functions.php


示例7: add_view_template_parent_groups

 function add_view_template_parent_groups($items)
 {
     global $post;
     // get current View ID
     $view_template_id = $post->ID;
     // get all view templates attached in the Settings page for single view
     $view_template_relations = $this->get_view_template_settings();
     // find view template groups and get their parents
     $current_types = array();
     $parent_types = array();
     foreach ($view_template_relations as $relation => $value) {
         if ($value == $view_template_id) {
             $current_types[] = $relation;
             if (function_exists('wpcf_pr_get_belongs')) {
                 $parent_types[] = wpcf_pr_get_belongs($relation);
             }
         }
     }
     // get parent groups
     $all_parent_groups = array();
     foreach ($parent_types as $type) {
         foreach ($type as $typename => $typeval) {
             $parent_groups = wpcf_admin_get_groups_by_post_type($typename);
         }
     }
 }
开发者ID:Netsoro,项目名称:gdnlteamgroup,代码行数:26,代码来源:editor-addon.class.php


示例8: wpv_filter_extend_query_for_parametric_and_counters


//.........这里部分代码省略.........
    $view_settings_defaults = array('post_type' => 'any', 'orderby' => 'post-date', 'order' => 'DESC', 'paged' => '1', 'posts_per_page' => -1);
    extract($view_settings_defaults);
    $view_settings['view_id'] = $id;
    extract($view_settings, EXTR_OVERWRITE);
    $query = array('posts_per_page' => $posts_per_page, 'paged' => $paged, 'post_type' => $post_type, 'order' => $order, 'suppress_filters' => false, 'ignore_sticky_posts' => true);
    // Add special check for media (attachments) as their default status in not usually published
    if (sizeof($post_type) == 1 && $post_type[0] == 'attachment') {
        $query['post_status'] = 'any';
        // Note this can be overriden by adding a status filter.
    }
    $query = apply_filters('wpv_filter_query', $query, $view_settings, $id);
    // Now we have the $query as in the original one
    // We now need to overwrite the limit, offset, paged and pagination options
    // Also, we set it to just return the IDs
    $query['posts_per_page'] = -1;
    $query['ĺimit'] = -1;
    $query['paged'] = 1;
    $query['offset'] = 0;
    $query['fields'] = 'ids';
    if ($cache_exclude_queried_posts) {
        // do not query again already queried and cached posts
        $already = array();
        if (isset($post_query->posts) && !empty($post_query->posts)) {
            foreach ((array) $post_query->posts as $post_object) {
                $already[] = $post_object->ID;
            }
        }
        $WP_Views->returned_ids_for_parametric_search = $already;
        if (isset($query['pr_filter_post__in'])) {
            $query['post__in'] = $query['pr_filter_post__in'];
        } else {
            // If just for the missing ones, generate the post__not_in argument
            if (isset($query['post__not_in'])) {
                $query['post__not_in'] = array_merge((array) $query['post__not_in'], (array) $already);
            } else {
                $query['post__not_in'] = (array) $already;
            }
            // And adjust on the post__in argument
            if (isset($query['post__in'])) {
                $query['post__in'] = array_diff((array) $query['post__in'], (array) $query['post__not_in']);
                //unset( $query['post__in'] );
            }
        }
    }
    // Perform the query
    $aux_cache_query = new WP_Query($query);
    // In case we need to recreate our own cache object, we do not need to load there all the postmeta and taxonomy data, just for the elements involved in parametric search controls
    $filter_c_mode = isset($view_settings['filter_controls_mode']) && is_array($view_settings['filter_controls_mode']) ? $view_settings['filter_controls_mode'] : array();
    $filter_c_name = isset($view_settings['filter_controls_field_name']) && is_array($view_settings['filter_controls_field_name']) ? $view_settings['filter_controls_field_name'] : array();
    $f_taxes = array();
    $f_fields = array();
    foreach ($filter_c_mode as $f_index => $f_mode) {
        if (isset($filter_c_name[$f_index])) {
            switch ($f_mode) {
                case 'slug':
                    $f_taxes[] = $filter_c_name[$f_index];
                    break;
                case 'cf':
                    $f_fields[] = $filter_c_name[$f_index];
                    break;
                case 'rel':
                    if (function_exists('wpcf_pr_get_belongs')) {
                        $returned_post_types = $view_settings['post_type'];
                        $returned_post_type_parents = array();
                        if (empty($returned_post_types)) {
                            $returned_post_types = array('any');
                        }
                        foreach ($returned_post_types as $returned_post_type_slug) {
                            $parent_parents_array = wpcf_pr_get_belongs($returned_post_type_slug);
                            if ($parent_parents_array != false && is_array($parent_parents_array)) {
                                $returned_post_type_parents = array_merge($returned_post_type_parents, array_values(array_keys($parent_parents_array)));
                            }
                        }
                        foreach ($returned_post_type_parents as $parent_to_cache) {
                            $f_fields[] = '_wpcf_belongs_' . $parent_to_cache . '_id';
                        }
                    }
                    break;
                default:
                    break;
            }
        }
    }
    // If we are using the native caching, update the cache for the posts returned by the aux query
    if (is_array($aux_cache_query->posts) && !empty($aux_cache_query->posts)) {
        $WP_Views->returned_ids_for_parametric_search = array_merge($WP_Views->returned_ids_for_parametric_search, $aux_cache_query->posts);
        $WP_Views->returned_ids_for_parametric_search = array_unique($WP_Views->returned_ids_for_parametric_search);
        if ($cache_use_native) {
            // If we are using the native caching, update the cache for the posts returned by the aux query
            update_postmeta_cache($aux_cache_query->posts);
            update_object_term_cache($aux_cache_query->posts, $view_settings['post_type']);
        } else {
            // Else, we need to fake an $wp_object_cache->cache
            $f_data = array('cf' => $f_fields, 'tax' => $f_taxes);
            $cache_combined = wpv_custom_cache_metadata($aux_cache_query->posts, $f_data);
            $wp_object_cache->cache = $cache_combined;
        }
    }
    return $post_query;
}
开发者ID:supahseppe,项目名称:path-of-gaming,代码行数:101,代码来源:wpv-filter-query.php


示例9: wpv_ajax_wpv_get_post_relationship_info

function wpv_ajax_wpv_get_post_relationship_info()
{
    if (wp_verify_nonce($_POST['wpv_nonce'], 'wpv_get_posts_select_nonce')) {
        if (function_exists('wpcf_pr_get_belongs') && isset($_POST['post_types'])) {
            $post_types = get_post_types('', 'objects');
            $output_done = false;
            foreach ($_POST['post_types'] as $post_type) {
                $related = wpcf_pr_get_belongs($post_type);
                if ($related === false) {
                    echo sprintf(__('Post type <strong>%s</strong> doesn\'t belong to any other post type', 'wpv-views'), $post_types[$post_type]->labels->singular_name, $related);
                    echo '<br />';
                    $output_done = true;
                }
                if (is_array($related) && count($related)) {
                    $keys = array_keys($related);
                    $related = array();
                    foreach ($keys as $key) {
                        $related[] = $post_types[$key]->labels->singular_name;
                    }
                }
                if (is_array($related) && count($related) == 1) {
                    $related = implode(', ', $related);
                    echo sprintf(__('Post type <strong>%s</strong> is a child of <strong>%s</strong> post type', 'wpv-views'), $post_types[$post_type]->labels->singular_name, $related);
                    echo '<br />';
                    $output_done = true;
                }
                if (is_array($related) && count($related) > 1) {
                    $last = array_pop($related);
                    $related = implode(', ', $related);
                    $related .= __(' and ') . $last;
                    echo sprintf(__('Post type <strong>%s</strong> is a child of <strong>%s</strong> post types', 'wpv-views'), $post_types[$post_type]->labels->singular_name, $related);
                    echo '<br />';
                    $output_done = true;
                }
            }
            if ($output_done) {
                echo '<br />';
            }
        }
    }
    die;
}
开发者ID:davilode83,项目名称:occupysandy.net,代码行数:42,代码来源:wpv-filter-post-relationship.php



注:本文中的wpcf_pr_get_belongs函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP wpcf_sanitize_field函数代码示例发布时间:2022-05-23
下一篇:
PHP wpcf_pr_admin_update_belongs函数代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap