ly. Default OBJECT. * @return WP_Term|array|WP_Error|null Type is based on $output value. */ function get_category_by_path( $category_path, $full_match = true, $output = OBJECT ) { $category_path = rawurlencode( urldecode( $category_path ) ); $category_path = str_replace( '%2F', '/', $category_path ); $category_path = str_replace( '%20', ' ', $category_path ); $category_paths = '/' . trim( $category_path, '/' ); $leaf_path = sanitize_title( basename( $category_paths ) ); $category_paths = explode( '/', $category_paths ); $full_path = ''; foreach ( (array) $category_paths as $pathdir ) { $full_path .= ( '' !== $pathdir ? '/' : '' ) . sanitize_title( $pathdir ); } $categories = get_terms( array( 'taxonomy' => 'category', 'get' => 'all', 'slug' => $leaf_path, ) ); if ( empty( $categories ) ) { return; } foreach ( $categories as $category ) { $path = '/' . $leaf_path; $curcategory = $category; while ( ( 0 !== $curcategory->parent ) && ( $curcategory->parent !== $curcategory->term_id ) ) { $curcategory = get_term( $curcategory->parent, 'category' ); if ( is_wp_error( $curcategory ) ) { return $curcategory; } $path = '/' . $curcategory->slug . $path; } if ( $path === $full_path ) { $category = get_term( $category->term_id, 'category', $output ); _make_cat_compat( $category ); return $category; } } // If full matching is not required, return the first cat that matches the leaf. if ( ! $full_match ) { $category = get_term( reset( $categories )->term_id, 'category', $output ); _make_cat_compat( $category ); return $category; } } /** * Retrieves a category object by category slug. * * @since 2.3.0 * * @param string $slug The category slug. * @return object|false Category data object on success, false if not found. */ function get_category_by_slug( $slug ) { $category = get_term_by( 'slug', $slug, 'category' ); if ( $category ) { _make_cat_compat( $category ); } return $category; } /** * Retrieves the ID of a category from its name. * * @since 1.0.0 * * @param string $cat_name Category name. * @return int Category ID on success, 0 if the category doesn't exist. */ function get_cat_ID( $cat_name ) { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.FunctionNameInvalid $cat = get_term_by( 'name', $cat_name, 'category' ); if ( $cat ) { return $cat->term_id; } return 0; } /** * Retrieves the name of a category from its ID. * * @since 1.0.0 * * @param int $cat_id Category ID. * @return string Category name, or an empty string if the category doesn't exist. */ function get_cat_name( $cat_id ) { $cat_id = (int) $cat_id; $category = get_term( $cat_id, 'category' ); if ( ! $category || is_wp_error( $category ) ) { return ''; } return $category->name; } /** * Checks 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' ); } /** * Sanitizes category data based on context. * * @since 2.3.0 * * @param object|array $category Category data. * @param string $context Optional. Default 'display'. * @return object|array Same type as $category with sanitized data for safe use. */ function sanitize_category( $category, $context = 'display' ) { return sanitize_term( $category, 'category', $context ); } /** * Sanitizes data in single category key field. * * @since 2.3.0 * * @param string $field Category key to sanitize. * @param mixed $value Category value to sanitize. * @param int $cat_id Category ID. * @param string $context What filter to use, 'raw', 'display', etc. * @return mixed Value after $value has been sanitized. */ function sanitize_category_field( $field, $value, $cat_id, $context ) { return sanitize_term_field( $field, $value, $cat_id, 'category', $context ); } /* Tags */ /** * Retrieves all post tags. * * @since 2.3.0 * * @param string|array $args { * Optional. Arguments to retrieve tags. See get_terms() for additional options. * * @type string $taxonomy Taxonomy to retrieve terms for. Default 'post_tag'. * } * @return WP_Term[]|int|WP_Error Array of 'post_tag' term objects, a count thereof, * or WP_Error if any of the taxonomies do not exist. */ function get_tags( $args = '' ) { $defaults = array( 'taxonomy' => 'post_tag' ); $args = wp_parse_args( $args, $defaults ); $tags = get_terms( $args ); if ( empty( $tags ) ) { $tags = array(); } else { /** * Filters the array of term objects returned for the 'post_tag' taxonomy. * * @since 2.3.0 * * @param WP_Term[]|int|WP_Error $tags Array of 'post_tag' term objects, a count thereof, * or WP_Error if any of the taxonomies do not exist. * @param array $args An array of arguments. See {@see get_terms()}. */ $tags = apply_filters( 'get_tags', $tags, $args ); } return $tags; } /** * Retrieves a post tag by tag ID or tag object. * * If you pass the $tag parameter an object, which is assumed to be the tag row * object retrieved from the database, it will cache the tag data. * * If you pass $tag an integer of the tag ID, then that tag will be retrieved * from the database, if it isn't already cached, and passed back. * * If you look at get_term(), both types will be passed through several filters * and finally sanitized based on the $filter parameter value. * * @since 2.3.0 * * @param int|WP_Term|object $tag A tag ID or object. * @param string $output Optional. The required return type. One of OBJECT, ARRAY_A, or ARRAY_N, which * correspond to a WP_Term object, an associative array, or a numeric array, * respectively. Default OBJECT. * @param string $filter Optional. How to sanitize tag fields. Default 'raw'. * @return WP_Term|array|WP_Error|null Tag data in type defined by $output parameter. * WP_Error if $tag is empty, null if it does not exist. */ function get_tag( $tag, $output = OBJECT, $filter = 'raw' ) { return get_term( $tag, 'post_tag', $output, $filter ); } /* Cache */ /** * Removes the category cache data based on ID. * * @since 2.1.0 * * @param int $id Category ID */ function clean_category_cache( $id ) { clean_term_cache( $id, 'category' ); } /** * Updates category structure to old pre-2.3 from new taxonomy structure. * * This function was added for the taxonomy support to update the new category * structure with the old category one. This will maintain compatibility with * plugins and themes which depend on the old key or property names. * * The parameter should only be passed a variable and not create the array or * object inline to the parameter. The reason for this is that parameter is * passed by reference and PHP will fail unless it has the variable. * * There is no return value, because everything is updated on the variable you * pass to it. This is one of the features with using pass by reference in PHP. * * @since 2.3.0 * @since 4.4.0 The `$category` parameter now also accepts a WP_Term object. * @access private * * @param array|object|WP_Term $category Category row object or array. */ function _make_cat_compat( &$category ) { if ( is_object( $category ) && ! is_wp_error( $category ) ) { $category->cat_ID = $category->term_id; $category->category_count = $category->count; $category->category_description = $category->description; $category->cat_name = $category->name; $category->category_nicename = $category->slug; $category->category_parent = $category->parent; } elseif ( is_array( $category ) && isset( $category['term_id'] ) ) { $category['cat_ID'] = &$category['term_id']; $category['category_count'] = &$category['count']; $category['category_description'] = &$category['description']; $category['cat_name'] = &$category['name']; $category['category_nicename'] = &$category['slug']; $category['category_parent'] = &$category['parent']; } } {"id":148711,"date":"2022-02-18T13:10:53","date_gmt":"2022-02-18T12:10:53","guid":{"rendered":"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/"},"modified":"2024-04-04T12:16:00","modified_gmt":"2024-04-04T10:16:00","slug":"beddinghouse-paper-leaves-multi-dekbedovertrek","status":"publish","type":"product","link":"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/","title":{"rendered":"Beddinghouse Paper Leaves Multi Dekbedovertrek"},"content":{"rendered":"

Beddinghouse Paper Leaves Multi Dekbedovertrek heeft een tropische bladerenprint opgebouwd uit paper cuts van diverse bladsoorten. De kleuren groen en blauw hebben de hoofdrol in dit stoere dessin, hier en daar aangevuld met een terra als kleuraccent. Beddinghouse wil mooie collecties ontwerpen waarbij er rekening wordt gehouden met mens en milieu. Daarom is Beddinghouse lid van het Better Cotton Initiative, met als doel de katoenteelt wereldwijd te verbeteren. Het dekbedovertrek is gemaakt van 100% katoen, 144 TC. Het overtrek heeft over de gehele breedte aan beide zijden een dubbele instopstrook. De totale lengte van het dekbedovertrek is 250 cm. Dit is extra lang waardoor het dekbedovertrek gemakkelijk onder het matras gestopt kan worden en koude voeten worden voorkomen. Het overtrek is geschikt voor dekbedden van 200 cm, 210 cm of 220 cm.<\/p>\n

* Vandaag voor 12:00 besteld, vandaag verstuurd. mits op voorraad.<\/p>\n","protected":false},"excerpt":{"rendered":"

Voor 12:00 besteld, vandaag verstuurd*.<\/a><\/div>\n

 <\/p>\n

 <\/p>\n","protected":false},"featured_media":148712,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false},"product_cat":[648,35],"product_tag":[1809],"acf":[],"yoast_head":"\nBeddinghouse Paper Leaves Multi Dekbedovertrek | Bedderie.nl<\/title>\n<meta name=\"description\" content=\"Beddinghouse Paper Leaves Multi Dekbedovertrek. Vandaag besteld, Morgen al op je bed. Heerlijk slapen met Beddinghouse\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/\" \/>\n<meta property=\"og:locale\" content=\"nl_NL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Beddinghouse Paper Leaves Multi Dekbedovertrek | Bedderie.nl\" \/>\n<meta property=\"og:description\" content=\"Beddinghouse Paper Leaves Multi Dekbedovertrek. Vandaag besteld, Morgen al op je bed. Heerlijk slapen met Beddinghouse\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/\" \/>\n<meta property=\"og:site_name\" content=\"Bedderie.nl\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/bedderie\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-04T10:16:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.bedderie.nl\/wp-content\/uploads\/2022\/02\/Beddinghouse-Paper-Leaves-Multi-Dekbedovertrek-Bedderie.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"906\" \/>\n\t<meta property=\"og:image:height\" content=\"1200\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Geschatte leestijd\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minuut\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/\",\"url\":\"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/\",\"name\":\"Beddinghouse Paper Leaves Multi Dekbedovertrek | Bedderie.nl\",\"isPartOf\":{\"@id\":\"https:\/\/www.bedderie.nl\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.bedderie.nl\/wp-content\/uploads\/2022\/02\/Beddinghouse-Paper-Leaves-Multi-Dekbedovertrek-Bedderie.jpg\",\"datePublished\":\"2022-02-18T12:10:53+00:00\",\"dateModified\":\"2024-04-04T10:16:00+00:00\",\"description\":\"Beddinghouse Paper Leaves Multi Dekbedovertrek. Vandaag besteld, Morgen al op je bed. Heerlijk slapen met Beddinghouse\",\"breadcrumb\":{\"@id\":\"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/#breadcrumb\"},\"inLanguage\":\"nl-NL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@id\":\"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/#primaryimage\",\"url\":\"https:\/\/www.bedderie.nl\/wp-content\/uploads\/2022\/02\/Beddinghouse-Paper-Leaves-Multi-Dekbedovertrek-Bedderie.jpg\",\"contentUrl\":\"https:\/\/www.bedderie.nl\/wp-content\/uploads\/2022\/02\/Beddinghouse-Paper-Leaves-Multi-Dekbedovertrek-Bedderie.jpg\",\"width\":906,\"height\":1200},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.bedderie.nl\/bedderie-nl-slapen-a-tot-zzzzzz\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Winkel\",\"item\":\"https:\/\/www.bedderie.nl\/winkel\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Beddinghouse Paper Leaves Multi Dekbedovertrek\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.bedderie.nl\/#website\",\"url\":\"https:\/\/www.bedderie.nl\/\",\"name\":\"Bedderie.nl\",\"description\":\"Slapen van A tot zZzZ\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.bedderie.nl\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"nl-NL\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Beddinghouse Paper Leaves Multi Dekbedovertrek | Bedderie.nl","description":"Beddinghouse Paper Leaves Multi Dekbedovertrek. Vandaag besteld, Morgen al op je bed. Heerlijk slapen met Beddinghouse","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/","og_locale":"nl_NL","og_type":"article","og_title":"Beddinghouse Paper Leaves Multi Dekbedovertrek | Bedderie.nl","og_description":"Beddinghouse Paper Leaves Multi Dekbedovertrek. Vandaag besteld, Morgen al op je bed. Heerlijk slapen met Beddinghouse","og_url":"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/","og_site_name":"Bedderie.nl","article_publisher":"https:\/\/www.facebook.com\/bedderie","article_modified_time":"2024-04-04T10:16:00+00:00","og_image":[{"width":906,"height":1200,"url":"https:\/\/www.bedderie.nl\/wp-content\/uploads\/2022\/02\/Beddinghouse-Paper-Leaves-Multi-Dekbedovertrek-Bedderie.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Geschatte leestijd":"1 minuut"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/","url":"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/","name":"Beddinghouse Paper Leaves Multi Dekbedovertrek | Bedderie.nl","isPartOf":{"@id":"https:\/\/www.bedderie.nl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/#primaryimage"},"image":{"@id":"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/#primaryimage"},"thumbnailUrl":"https:\/\/www.bedderie.nl\/wp-content\/uploads\/2022\/02\/Beddinghouse-Paper-Leaves-Multi-Dekbedovertrek-Bedderie.jpg","datePublished":"2022-02-18T12:10:53+00:00","dateModified":"2024-04-04T10:16:00+00:00","description":"Beddinghouse Paper Leaves Multi Dekbedovertrek. Vandaag besteld, Morgen al op je bed. Heerlijk slapen met Beddinghouse","breadcrumb":{"@id":"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/#breadcrumb"},"inLanguage":"nl-NL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/"]}]},{"@type":"ImageObject","inLanguage":"nl-NL","@id":"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/#primaryimage","url":"https:\/\/www.bedderie.nl\/wp-content\/uploads\/2022\/02\/Beddinghouse-Paper-Leaves-Multi-Dekbedovertrek-Bedderie.jpg","contentUrl":"https:\/\/www.bedderie.nl\/wp-content\/uploads\/2022\/02\/Beddinghouse-Paper-Leaves-Multi-Dekbedovertrek-Bedderie.jpg","width":906,"height":1200},{"@type":"BreadcrumbList","@id":"https:\/\/www.bedderie.nl\/shop\/beddinghouse-paper-leaves-multi-dekbedovertrek\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.bedderie.nl\/bedderie-nl-slapen-a-tot-zzzzzz\/"},{"@type":"ListItem","position":2,"name":"Winkel","item":"https:\/\/www.bedderie.nl\/winkel\/"},{"@type":"ListItem","position":3,"name":"Beddinghouse Paper Leaves Multi Dekbedovertrek"}]},{"@type":"WebSite","@id":"https:\/\/www.bedderie.nl\/#website","url":"https:\/\/www.bedderie.nl\/","name":"Bedderie.nl","description":"Slapen van A tot zZzZ","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.bedderie.nl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"nl-NL"}]}},"_links":{"self":[{"href":"https:\/\/www.bedderie.nl\/wp-json\/wp\/v2\/product\/148711"}],"collection":[{"href":"https:\/\/www.bedderie.nl\/wp-json\/wp\/v2\/product"}],"about":[{"href":"https:\/\/www.bedderie.nl\/wp-json\/wp\/v2\/types\/product"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bedderie.nl\/wp-json\/wp\/v2\/comments?post=148711"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bedderie.nl\/wp-json\/wp\/v2\/media\/148712"}],"wp:attachment":[{"href":"https:\/\/www.bedderie.nl\/wp-json\/wp\/v2\/media?parent=148711"}],"wp:term":[{"taxonomy":"product_cat","embeddable":true,"href":"https:\/\/www.bedderie.nl\/wp-json\/wp\/v2\/product_cat?post=148711"},{"taxonomy":"product_tag","embeddable":true,"href":"https:\/\/www.bedderie.nl\/wp-json\/wp\/v2\/product_tag?post=148711"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}