当前位置: 首页>>代码示例>>PHP>>正文


PHP term_is_ancestor_of函数代码示例

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


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

示例1: wp_insert_category

/**
 * Updates an existing Category or creates a new Category.
 *
 * @since 2.0.0
 * @since 2.5.0 $wp_error parameter was added.
 * @since 3.0.0 The 'taxonomy' argument was added.
 *
 * @param array $catarr {
 *     Array of arguments for inserting a new category.
 *
 *     @type int        $cat_ID               Categoriy ID. A non-zero value updates an existing category.
 *                                            Default 0.
 *     @type string     $taxonomy             Taxonomy slug. Defualt 'category'.
 *     @type string     $cat_nam              Category name. Default empty.
 *     @type string     $category_description Category description. Default empty.
 *     @type string     $category_nicename    Category nice (display) name. Default empty.
 *     @type int|string $category_parent      Category parent ID. Default empty.
 * }
 * @param bool  $wp_error Optional. Default false.
 * @return int|object The ID number of the new or updated Category on success. Zero or a WP_Error on failure,
 *                    depending on param $wp_error.
 */
function wp_insert_category($catarr, $wp_error = false)
{
    $cat_defaults = array('cat_ID' => 0, 'taxonomy' => 'category', 'cat_name' => '', 'category_description' => '', 'category_nicename' => '', 'category_parent' => '');
    $catarr = wp_parse_args($catarr, $cat_defaults);
    if (trim($catarr['cat_name']) == '') {
        if (!$wp_error) {
            return 0;
        } else {
            return new WP_Error('cat_name', __('You did not enter a category name.'));
        }
    }
    $catarr['cat_ID'] = (int) $catarr['cat_ID'];
    // Are we updating or creating?
    $update = !empty($catarr['cat_ID']);
    $name = $catarr['cat_name'];
    $description = $catarr['category_description'];
    $slug = $catarr['category_nicename'];
    $parent = (int) $catarr['category_parent'];
    if ($parent < 0) {
        $parent = 0;
    }
    if (empty($parent) || !term_exists($parent, $catarr['taxonomy']) || $catarr['cat_ID'] && term_is_ancestor_of($catarr['cat_ID'], $parent, $catarr['taxonomy'])) {
        $parent = 0;
    }
    $args = compact('name', 'slug', 'parent', 'description');
    if ($update) {
        $catarr['cat_ID'] = wp_update_term($catarr['cat_ID'], $catarr['taxonomy'], $args);
    } else {
        $catarr['cat_ID'] = wp_insert_term($catarr['cat_name'], $catarr['taxonomy'], $args);
    }
    if (is_wp_error($catarr['cat_ID'])) {
        if ($wp_error) {
            return $catarr['cat_ID'];
        } else {
            return 0;
        }
    }
    return $catarr['cat_ID']['term_id'];
}
开发者ID:nstungxd,项目名称:F2CA5,代码行数:61,代码来源:taxonomy.php

示例2: term_is_ancestor_of

/**
 * Check if a term is an ancestor of another term.
 *
 * You can use either an id or the term object for both parameters.
 *
 * @since 3.4.0
 *
 * @param int|object $term1    ID or object to check if this is the parent term.
 * @param int|object $term2    The child term.
 * @param string     $taxonomy Taxonomy name that $term1 and `$term2` belong to.
 * @return bool Whether `$term2` is a child of `$term1`.
 */
function term_is_ancestor_of($term1, $term2, $taxonomy)
{
    if (!isset($term1->term_id)) {
        $term1 = get_term($term1, $taxonomy);
    }
    if (!isset($term2->parent)) {
        $term2 = get_term($term2, $taxonomy);
    }
    if (empty($term1->term_id) || empty($term2->parent)) {
        return false;
    }
    if ($term2->parent == $term1->term_id) {
        return true;
    }
    return term_is_ancestor_of($term1, get_term($term2->parent, $taxonomy), $taxonomy);
}
开发者ID:n8maninger,项目名称:WordPress,代码行数:28,代码来源:taxonomy-functions.php

示例3: test_term_is_ancestor_of

	/**
	 * @group category.php
	 */
	function test_term_is_ancestor_of( ) {
		$term = rand_str();
		$term2 = rand_str();

		$t = wp_insert_term( $term, 'category' );
		$this->assertInternalType( 'array', $t );
		$t2 = wp_insert_term( $term, 'category', array( 'parent' => $t['term_id'] ) );
		$this->assertInternalType( 'array', $t2 );
		if ( function_exists( 'term_is_ancestor_of' ) ) {
			$this->assertTrue( term_is_ancestor_of( $t['term_id'], $t2['term_id'], 'category' ) );
			$this->assertFalse( term_is_ancestor_of( $t2['term_id'], $t['term_id'], 'category' ) );
		}
		$this->assertTrue( cat_is_ancestor_of( $t['term_id'], $t2['term_id']) );
		$this->assertFalse( cat_is_ancestor_of( $t2['term_id'], $t['term_id']) );

		wp_delete_term($t['term_id'], 'category');
		wp_delete_term($t2['term_id'], 'category');
	}
开发者ID:staylor,项目名称:develop.svn.wordpress.org,代码行数:21,代码来源:term.php

示例4: cat_is_ancestor_of

/**
 * Check if a category is an ancestor of another category.
 *
 * You can use either an id or the category object for both parameters. If you
 * use an integer the category will be retrieved.
 *
 * @since 2.1.0
 *
 * @param int|object $cat1 ID or object to check if this is the parent category.
 * @param int|object $cat2 The child category.
 * @return bool Whether $cat2 is child of $cat1
 */
function cat_is_ancestor_of($cat1, $cat2)
{
    return term_is_ancestor_of($cat1, $cat2, 'category');
}
开发者ID:robbenz,项目名称:plugs,代码行数:16,代码来源:category.php

示例5: list_materials_

function list_materials_($term)
{
    $term_id = wp_get_post_terms($term, 'download_category', array("fields" => "ids"));
    if (is_array($term_id)) {
        $term_id = $term_id[0];
    }
    echo '<style type="text/css">
			.con_{
				background-position:left top; 
				background-repeat:repeat-x; 
				height:26px; width:40px; 
				float:left; 
				position:absolute; 
				bottom:2px; 
				left:2px; 
				z-index: 99999;
				background-color: rgba(251, 250, 255, 0.9); 
				border:1px solid;
				border-color:rgba(251, 250, 255, 0.1);
				width:266px;
				padding:0px 3px 0px 3px;
				
				}
				.sml-box{
				height:25px; width:40px; 
				background-size: contain;
    			background-repeat: no-repeat;
   				background-position: center center;
				}
			.music_{
				background-image:url(' . get_template_directory_uri() . '/images/spectrum.png); 
			}
			.let_{
				width:266px;
				
			}
			.des_{
				/*background-image:url(' . get_template_directory_uri() . '/images/painting.png);*/
				background-size: contain;
    			background-repeat: no-repeat;
    			background-position: center center;
			}
			.phy{
				/*background-image:url(' . get_template_directory_uri() . '/images/painting.png);*/
				background-size: contain;
    			background-repeat: no-repeat;
    			background-position: center center;
							}
			.let1{
				/*background-image:url(' . get_template_directory_uri() . '/images/painting.png);*/
				background-size: contain;
    			background-repeat: no-repeat;
    			background-position: center center;
			}
			.sml-box{
				margin:1px 2% 1px 2%;
				width:21%;
				float:left;
				height:23px;
			}
			.let1{
				background-image:url(' . get_template_directory_uri() . '/images/let1.png); 
			}
			.let2{
				background-image:url(' . get_template_directory_uri() . '/images/let2.png); 
			}
			.des1{
				background-image:url(' . get_template_directory_uri() . '/images/des1.png); 
			}
			.des2{
				background-image:url(' . get_template_directory_uri() . '/images/des2.png); 
			}
			.des3{
				background-image:url(' . get_template_directory_uri() . '/images/des3.png); 
			}
			.des4{
				background-image:url(' . get_template_directory_uri() . '/images/des4.png); 
			}
			.phy1{
				background-image:url(' . get_template_directory_uri() . '/images/phy1.png); 
				background-color: rgba(251, 250, 255, 0.3); 
			}
			.phy2{
				background-image:url(' . get_template_directory_uri() . '/images/phy2.png); 
				background-color: rgba(251, 250, 255, 0.3); 
			}
				</style>';
    if (term_is_ancestor_of(10, $term_id, 'download_category')) {
        ?>
		<div title="Music" class="con_ music_"></div>
	<?php 
    } elseif (term_is_ancestor_of(25, $term_id, 'download_category')) {
        $_xx = '<div class="sml-box let1"></div><div class="sml-box let2"></div><div class="sml-box let1"></div><div class="sml-box let2"></div>';
        $terms_d = wp_get_post_terms($term, 'download_tag', array("fields" => "ids"));
        $_ob = get_term_by('id', absint($terms_d[0]), 'download_tag');
        if ($_ob->name !== '') {
            $_cn = explode(',', $_ob->name);
            $_cn = array_filter($_cn);
            if (isset($_cn[0])) {
                echo '<div title="Literature" class="con_ let_">' . $_xx . '</div>';
//.........这里部分代码省略.........
开发者ID:alexsharma68,项目名称:EddCollaborationPlugin,代码行数:101,代码来源:update-edd.php

示例6: icit_dynamic_category_sidebar

 /**
  * Retrieve a sidebar associated with a root category level category. If
  * this is called from an archive page then it will look for the category
  * that is the parent of the current. If called from a post it will find the
  * first category the post is in.
  *
  * @param string $name Name of the sidebar to be output
  *
  * @return bool    True if we found one otherwise false.
  */
 function icit_dynamic_category_sidebar($name = 'sidebar')
 {
     if (!is_string($name)) {
         return false;
     }
     $name = !empty($name) ? $name : 'Sidebar';
     $id = 'category' . sanitize_title($name) . '-%d';
     $found_one = false;
     if (is_single() || is_category()) {
         // Step over each category looking for sidebar to use
         $archives = get_categories(array('hierarchical' => false, 'parent' => 0, 'hide_empty' => false));
         foreach ($archives as $i => $category) {
             if ($found_one) {
                 break;
             }
             $sidebar_id = sprintf($id, $category->term_id);
             if (is_active_sidebar($sidebar_id)) {
                 // Is the category one of the root cats or is the cat a child of the root cat.
                 if (is_category($category->term_id) || is_category() && term_is_ancestor_of($category->term_id, get_queried_object_id(), 'category')) {
                     $found_one = dynamic_sidebar($sidebar_id);
                 } elseif (is_single() && in_category($category->term_id)) {
                     $found_one = dynamic_sidebar($sidebar_id);
                 } elseif (is_single()) {
                     $post_cats = wp_list_pluck((array) get_the_terms(get_the_ID(), 'category'), 'term_id');
                     foreach ($post_cats as $p_cat) {
                         if ($found_one) {
                             continue;
                         }
                         if (term_is_ancestor_of($category->term_id, $p_cat, 'category')) {
                             $found_one = dynamic_sidebar($sidebar_id);
                         }
                     }
                 }
             }
         }
     }
     return $found_one;
 }
开发者ID:datalynk,项目名称:quizzlestick,代码行数:48,代码来源:icit-helpers.php

示例7: foreach

         $curr_cat_ids_selected[] = $catalog_category_term->term_id;
     }
 }
 foreach ($catalog_categories as $term) {
     if (!empty($curr_include) && !in_array($term->slug, $curr_include)) {
         continue;
     }
     if (isset($term->children)) {
         $pf_children = $term->children;
     } else {
         $pf_children = array();
     }
     $curr_id_found = false;
     if (isset($curr_cat_ids_selected) && !empty($pf_children)) {
         foreach ($curr_cat_ids_selected as $curr_cat_id_selected) {
             if (term_is_ancestor_of((int) $term->term_id, (int) $curr_cat_id_selected, 'product_cat')) {
                 $curr_id_found = true;
             }
         }
     }
     if ($curr_options['wc_settings_prdctfltr_cat_mode'] == 'subcategories' && !empty($curr_cat_selected) && $curr_id_found == false && !in_array($term->term_id, $curr_cat_ids_selected)) {
         continue;
     }
     $pf_adoptive_class = '';
     if ($curr_options['wc_settings_prdctfltr_cat_adoptive'] == 'yes' && isset($output_terms['product_cat']) && !empty($output_terms['product_cat']) && !array_key_exists($term->slug, $output_terms['product_cat'])) {
         $pf_adoptive_class = ' pf_adoptive_hide';
     }
     printf('<label class="%6$s%4$s%8$s"><input type="checkbox" value="%1$s"%3$s /><span>%2$s%7$s</span>%5$s</label>', $term->slug, $term->name, in_array($term->slug, $curr_cat_selected) ? ' checked' : '', in_array($term->slug, $curr_cat_selected) ? ' prdctfltr_active' : '', !empty($pf_children) ? '<i class="prdctfltr-plus"></i>' : '', $pf_adoptive_class, $curr_options['wc_settings_prdctfltr_show_counts'] == 'no' ? '' : ' <span class="prdctfltr_count">' . (isset($output_terms['product_cat']) && isset($output_terms['product_cat'][$term->slug]) && $output_terms['product_cat'][$term->slug] != $term->count ? $output_terms['product_cat'][$term->slug] . '/' . $term->count : $term->count) . '</span>', !empty($pf_children) && in_array($term->slug, $curr_cat_selected) ? ' prdctfltr_clicked' : '');
     if ($curr_options['wc_settings_prdctfltr_cat_hierarchy'] == 'yes' && !empty($pf_children)) {
         printf('<div class="prdctfltr_sub" data-sub="%1$s">', $term->slug);
         foreach ($pf_children as $sub) {
开发者ID:Qualitair,项目名称:ecommerce,代码行数:31,代码来源:product-filter.php

示例8: wp_insert_category

 /**
  * Updates an existing Category or creates a new Category.
  *
  * @since 2.0.0
  *
  * @param mixed $catarr See defaults below. Set 'cat_ID' to a non-zero value to update an existing category. The 'taxonomy' key was added in 3.0.0.
  * @param bool $wp_error Optional, since 2.5.0. Set this to true if the caller handles WP_Error return values.
  * @return int|object The ID number of the new or updated Category on success. Zero or a WP_Error on failure, depending on param $wp_error.
  */
 protected function wp_insert_category($catarr, $wp_error = false)
 {
     $cat_defaults = array('cat_ID' => 0, 'taxonomy' => 'category', 'cat_name' => '', 'category_description' => '', 'category_nicename' => '', 'category_parent' => '');
     $catarr = wp_parse_args($catarr, $cat_defaults);
     extract($catarr, EXTR_SKIP);
     if (trim($cat_name) == '') {
         if (!$wp_error) {
             return 0;
         } else {
             return new WP_Error('cat_name', __('You did not enter a category name.'));
         }
     }
     $cat_ID = (int) $cat_ID;
     // Are we updating or creating?
     if (!empty($cat_ID)) {
         $update = true;
     } else {
         $update = false;
     }
     $name = $cat_name;
     $description = $category_description;
     $slug = $category_nicename;
     $parent = $category_parent;
     $parent = (int) $parent;
     if ($parent < 0) {
         $parent = 0;
     }
     if (empty($parent) || !term_exists($parent, $taxonomy) || $cat_ID && term_is_ancestor_of($cat_ID, $parent, $taxonomy)) {
         $parent = 0;
     }
     $args = compact('name', 'slug', 'parent', 'description');
     if ($update) {
         $cat_ID = wp_update_term($cat_ID, $taxonomy, $args);
     } else {
         $cat_ID = wp_insert_term($cat_name, $taxonomy, $args);
     }
     if (is_wp_error($cat_ID)) {
         if ($wp_error) {
             return $cat_ID;
         } else {
             return 0;
         }
     }
     return $cat_ID['term_id'];
 }
开发者ID:andreiRS,项目名称:Radii8,代码行数:54,代码来源:categories.php

示例9: foreach

     }
 }
 foreach ($catalog_categories as $term) {
     $decode_slug = $term->slug;
     if (!empty($curr_include) && !in_array($decode_slug, $curr_include)) {
         continue;
     }
     if (isset($term->children)) {
         $pf_children = $term->children;
     } else {
         $pf_children = array();
     }
     $curr_id_found = false;
     if (isset($curr_cat_ids_selected) && !empty($pf_children)) {
         foreach ($curr_cat_ids_selected as $curr_cat_id_selected) {
             if (term_is_ancestor_of((int) $term->term_id, (int) $curr_cat_id_selected, $curr_fo['filter'])) {
                 $curr_id_found = true;
             }
         }
     }
     if (isset($curr_fo['settings']['mode']) && $curr_fo['settings']['mode'] == 'subcategories' && !empty($curr_cat_selected) && $curr_id_found == false && !in_array($term->term_id, $curr_cat_ids_selected)) {
         continue;
     }
     if ($curr_fo['settings']['customization'] == '') {
         $term_count = $curr_options['wc_settings_prdctfltr_show_counts'] == 'no' || $term->count == '0' ? '' : ' <span class="prdctfltr_count">' . (isset($output_terms[$curr_fo['filter']]) && isset($output_terms[$curr_fo['filter']][$term->slug]) && $output_terms[$curr_fo['filter']][$term->slug] != $term->count ? $output_terms[$curr_fo['filter']][$term->slug] . '/' . $term->count : $term->count) . '</span>';
         switch ($curr_term_style) {
             case 'pf_attr_text':
                 $curr_insert = $term->name . $term_count;
                 break;
             case 'pf_attr_imgtext':
                 $curr_img = wp_get_attachment_image(get_woocommerce_term_meta($term->term_id, $curr_fo['filter'] . '_thumbnail_id_photo', true), 'shop_thumbnail');
开发者ID:hikaram,项目名称:wee,代码行数:31,代码来源:product-filter.php


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