{"id":100505,"date":"2024-08-29T08:51:02","date_gmt":"2024-08-29T08:51:02","guid":{"rendered":"https:\/\/www.seeedstudio.com\/blog\/?page_id=100505"},"modified":"2024-09-11T06:35:05","modified_gmt":"2024-09-11T06:35:05","slug":"category-search-result","status":"publish","type":"page","link":"https:\/\/www.seeedstudio.com\/blog\/category-search-result\/","title":{"rendered":"Category Search Result"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"100505\" class=\"elementor elementor-100505\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-559492f e-flex e-con-boxed e-con e-parent\" data-id=\"559492f\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-aa88bd3 elementor-widget elementor-widget-html\" data-id=\"aa88bd3\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span id=\"scroll6a277b94cab59\"  class=\"scrollMagicControl\" type=\"hidden\" effect = {} wpmp_enable_desktop=\"yes\" wpmp_enable_tablet=\"yes\" wpmp_enable_mobile=\"yes\" wpmp_trigger_hook=\"0.5\" wpmp_reverse=\"yes\" wpmp_class_CSS =\"custom\" split-text = {} value=\"scrollmagic\"><\/span>  <input type=\"text\" placeholder=\"Search\" id=\"search-input\">\n  <style>\n        #search-input {\n            font-family: 'Montserrat';\n            font-size: 24px;\n        }\n    <\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-15730e2 e-flex e-con-boxed e-con e-parent\" data-id=\"15730e2\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-d4edc02 e-flex e-con-boxed e-con e-parent\" data-id=\"d4edc02\" data-element_type=\"container\" id=\"category_tab\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2c94ab8 e-flex e-con-boxed e-con e-parent\" data-id=\"2c94ab8\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-78fdbc3 e-flex e-con-boxed e-con e-parent\" data-id=\"78fdbc3\" data-element_type=\"container\" id=\"post_list\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-4c4cd0d e-flex e-con-boxed e-con e-parent\" data-id=\"4c4cd0d\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-15c4962 elementor-widget elementor-widget-html\" data-id=\"15c4962\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span id=\"scroll6a277b94cd667\"  class=\"scrollMagicControl\" type=\"hidden\" effect = {} wpmp_enable_desktop=\"yes\" wpmp_enable_tablet=\"yes\" wpmp_enable_mobile=\"yes\" wpmp_trigger_hook=\"0.5\" wpmp_reverse=\"yes\" wpmp_class_CSS =\"custom\" split-text = {} value=\"scrollmagic\"><\/span>  <style>\n    #sidr {\n      display: none;\n    }\n\n    .cate_tab_item {\n      padding: 8px 24px;\n      background: rgba(247, 249, 242, 0.5);\n      color: #8FC31F;\n      font-family: \"Montserrat\";\n      font-size: 16px;\n      font-weight: 500;\n      border-radius: 20px;\n      margin-right: 16px;\n      margin-bottom: 16px;\n      cursor: pointer;\n    }\n\n    .cate_tab_item.active {\n      background: #ECF4D9;\n      color: #000000;\n      font-weight: bold;\n    }\n\n    #category_tab {\n      display: flex;\n      flex-direction: row;\n      flex-wrap: wrap;\n      margin: 20px 0;\n    }\n\n    #post_list {\n      display: flex !important;\n      flex-direction: row;\n      flex-wrap: wrap;\n      border-top: 1px solid #E7E7E7;\n      padding-top: 40px;\n      opacity: 0;\n    }\n\n    #post_list.visible {\n      opacity: 1;\n    }\n\n\n    .post_item {\n      width: calc(100%\/3 - 20px);\n      margin-right: 30px;\n      margin-bottom: 30px;\n    }\n\n    .post_item:nth-child(3n) {\n      margin-right: 0;\n    }\n\n    .post_item img {\n      width: 100%;\n      height: 200px;\n      border-radius: 16px;\n    }\n\n    .post_title {\n      margin: 16px 0 6px 0;\n      font-size: 18px;\n      display: -webkit-box;\n      -webkit-box-orient: vertical;\n      -webkit-line-clamp: 2;\n      overflow: hidden;\n      text-overflow: ellipsis;\n      white-space: normal;\n      line-height: 1.4;\n    }\n\n    .post_title:hover,\n    .post_author:hover {\n      color: #8FC31F;\n    }\n\n    .post_bottom {\n      color: rgba(0, 0, 0, 0.6);\n      font-size: 14px;\n    }\n\n    .post_author {\n      font-weight: 500;\n      margin-right: 4px;\n    }\n\n    .pagination {\n      display: flex;\n      list-style: none;\n      padding: 0;\n      justify-content: center;\n    }\n\n    .pagination li {\n      margin: 0 5px;\n      padding: 5px 13px;\n      cursor: pointer;\n      border-radius: 3px;\n      background: #FFFFFF;\n      border: 1px solid #DCDCDC;\n      font-size: 14px;\n    }\n\n    .pagination li.omit {\n      border: 1px solid transparent;\n    }\n\n    .pagination .active {\n      background: #8FC31F;\n      border: 1px solid #8FC31F;\n      color: #fff;\n    }\n\n    #search-input {\n      width: 100%;\n      border: 0;\n      border-radius: 0;\n      padding: 20px 0;\n      font-size: 16px;\n      border-bottom: 1px solid #A6A6A6;\n    }\n  <\/style>\n  <ul id=\"pagination\" class=\"pagination\"><\/ul>\n  <script src=\"https:\/\/www.seeedstudio.com\/solution\/wp-includes\/js\/jquery\/jquery.min.js?ver=3.7.1\"><\/script>\n\n  <script>\n    jQuery(document).ready(function ($) {\n      const categoriesUrl = `${window.location.origin}\/blog\/wp-json\/wp\/v2\/categories?_fields=id,name`;\n      let currentCategoryId = getUrlParameter('categoryId')\n      \/\/ Initialize pagination\n      let totalPages = 0;  \/\/ Total number of pages (example)\n      let currentPage = 1;    \/\/ Current page\n      function getUrlParameter(name) {\n        name = name.replace(\/[\\[]\/, '\\\\[').replace(\/[\\]]\/, '\\\\]');\n        var regex = new RegExp('[\\\\?&]' + name + '=([^&#]*)');\n        var results = regex.exec(location.search);\n        return results === null ? '' : decodeURIComponent(results[1].replace(\/\\+\/g, ' '));\n      }\n      function formatDate(dateString) {\n        \/\/ \u521b\u5efa\u4e00\u4e2a\u65e5\u671f\u5bf9\u8c61\n        var date = new Date(dateString);\n\n        \/\/ \u5b9a\u4e49\u6708\u4efd\u540d\u79f0\u6570\u7ec4\n        var monthNames = [\n          \"January\", \"February\", \"March\", \"April\", \"May\", \"June\",\n          \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"\n        ];\n\n        \/\/ \u83b7\u53d6\u65e5\u671f\u7684\u5404\u4e2a\u90e8\u5206\n        var day = date.getDate();\n        var monthIndex = date.getMonth();\n        var year = date.getFullYear();\n\n        \/\/ \u6784\u5efa\u76ee\u6807\u683c\u5f0f\u7684\u65e5\u671f\u5b57\u7b26\u4e32\n        return monthNames[monthIndex] + ' ' + day + ', ' + year;\n      }\n      function throttle(func, limit) {\n        let lastFunc;\n        let lastRan;\n        return function () {\n          const context = this;\n          const args = arguments;\n          if (!lastRan) {\n            func.apply(context, args);\n            lastRan = Date.now();\n          } else {\n            clearTimeout(lastFunc);\n            lastFunc = setTimeout(function () {\n              if ((Date.now() - lastRan) >= limit) {\n                func.apply(context, args);\n                lastRan = Date.now();\n              }\n            }, limit - (Date.now() - lastRan));\n          }\n        }\n      }\n      var searchInput = ''\n      \/\/ \u5b9a\u4e49\u5904\u7406\u641c\u7d22\u7684\u51fd\u6570\n      function handleSearch() {\n        searchInput = $('#search-input').val();\n        currentPage = 1\n        fetchPosts()\n        \/\/ \u5728\u8fd9\u91cc\u6dfb\u52a0\u5904\u7406\u641c\u7d22\u67e5\u8be2\u7684\u4ee3\u7801\uff0c\u4f8b\u5982\u53d1\u9001 AJAX \u8bf7\u6c42\n      }\n\n      \/\/ \u4f7f\u7528\u624b\u5199\u7684\u8282\u6d41\u51fd\u6570\n      var throttleSearch = throttle(handleSearch, 300); \/\/ 300 \u6beb\u79d2\u7684\u8282\u6d41\u65f6\u95f4\n\n      \/\/ \u76d1\u542c\u8f93\u5165\u6846\u7684 input \u4e8b\u4ef6\n      $('#search-input').on('input', throttleSearch);\n      \/\/ Function to fetch categories\n      async function fetchCategories() {\n        try {\n          const response = await fetch(categoriesUrl);\n          if (!response.ok) {\n            throw new Error('Network response was not ok');\n          }\n          const categories = await response.json();\n          console.log(categories);\n          \/\/ You can now use the categories data, e.g., render them on the page\n          renderCategories(categories);\n        } catch (error) {\n          console.error('Failed to fetch categories:', error);\n        }\n      }\n\n      \/\/ Function to render categories on the page\n      function renderCategories(categories) {\n        let str = `<div class=\"cate_tab_item ${currentCategoryId ? '' : 'active'}\" data-id=\"\">All<\/div>`\n        categories.forEach(category => {\n          str += `<div class=\"cate_tab_item ${currentCategoryId == category.id ? 'active' : ''}\" data-id=\"${category.id}\">${category.name}<\/div>`\n        });\n        $('#category_tab').html(str)\n        $('.cate_tab_item').on('click', function () {\n          $('.cate_tab_item').removeClass('active')\n          $(this).addClass('active')\n          currentCategoryId = $(this).data('id')\n          currentPage = 1;\n\n          fetchPosts()\n        })\n      }\n\n      fetchCategories();\n      const perPage = 12\n      async function fetchPosts() {\n        const postsUrl = `${window.location.origin}\/blog\/wp-json\/wp\/v2\/posts`;\n        const params = {\n          _fields: 'id,title,link,date,display_name,author_info,author,featured_media,featured_image_urls', \/\/ \u6307\u5b9a\u8fd4\u56de\u7684\u5b57\u6bb5\n          search: searchInput,\n          page: currentPage,\n          per_page: perPage \/\/ \u6bcf\u9875\u663e\u793a\u7684\u6587\u7ae0\u6570\u91cf\n        }\n        if (currentCategoryId) {\n          params.categories = currentCategoryId\n        }\n        $.ajax({\n          url: postsUrl,\n          type: 'GET',\n          data: params,\n          success: function (response, textStatus, request) {\n            totalPages = Math.ceil(request.getResponseHeader('X-WP-TotalPages'));\n            renderPosts(response);\n            createPagination(totalPages, currentPage);\n          }\n        });\n      }\n      \/\/ async function fetchPosts() {\n      \/\/   const postsUrl = `${window.location.origin}\/blog\/wp-json\/wp\/v2\/posts`;\n      \/\/   const pagesUrl = `${window.location.origin}\/blog\/wp-json\/wp\/v2\/pages`;\n      \/\/   \/\/ const params = new URLSearchParams({\n      \/\/   \/\/   _fields: 'id,title,link,date,featured_media',\n      \/\/   \/\/   search: searchInput, \/\/ \u5c06\u8f93\u5165\u6846\u7684\u503c\u4f20\u9012\u7ed9 search \u53c2\u6570\n      \/\/   \/\/   per_page: 10 \/\/ \u6bcf\u6b21\u8bf7\u6c42\u8fd4\u56de\u7684\u7ed3\u679c\u6570\u91cf\n      \/\/   \/\/ });\n      \/\/   const params = {\n      \/\/     \/\/ _fields: 'id,title,link,date,display_name,author_info,author,featured_media,featured_image_urls', \/\/ \u6307\u5b9a\u8fd4\u56de\u7684\u5b57\u6bb5\n      \/\/     search: searchInput,\n      \/\/     page: currentPage,\n      \/\/     per_page: perPage \/\/ \u6bcf\u9875\u663e\u793a\u7684\u6587\u7ae0\u6570\u91cf\n      \/\/   }\n      \/\/   try {\n      \/\/     $.when(\n      \/\/       $.ajax({ url: postsUrl, data: params, method: 'GET' }),\n      \/\/       $.ajax({ url: pagesUrl, data: params, method: 'GET' })\n      \/\/     ).done((postsResponse, pagesResponse) => {\n      \/\/       const postsData = postsResponse[0];\n      \/\/       const pagesData = pagesResponse[0];\n\n      \/\/       \/\/ \u83b7\u53d6\u603b\u9875\u6570\n      \/\/       const totalPages =\n      \/\/         parseInt(postsResponse[2].getResponseHeader('X-WP-TotalPages')) +\n      \/\/         parseInt(pagesResponse[2].getResponseHeader('X-WP-TotalPages'))\n\n      \/\/       \/\/ \u5408\u5e76\u6587\u7ae0\u548c\u9875\u9762\u6570\u636e\n      \/\/       const combinedData = [...postsData, ...pagesData];\n      \/\/       \/\/ renderResults(combinedData);\n      \/\/       \/\/ renderPagination(totalPages);\n      \/\/       renderPosts(combinedData);\n      \/\/       createPagination(totalPages, currentPage);\n      \/\/     }).fail((jqXHR, textStatus, errorThrown) => {\n      \/\/       console.error('Error fetching content:', textStatus, errorThrown);\n      \/\/     });\n      \/\/     \/\/ const [postsResponse, pagesResponse] = await Promise.all([\n      \/\/     \/\/   fetch(`${postsUrl}?${params.toString()}`),\n      \/\/     \/\/   fetch(`${pagesUrl}?${params.toString()}`)\n      \/\/     \/\/ ]);\n\n      \/\/     \/\/ const postsData = await postsResponse.json();\n      \/\/     \/\/ const pagesData = await pagesResponse.json();\n\n      \/\/     \/\/ \/\/ \u83b7\u53d6\u603b\u9875\u6570\n      \/\/     \/\/ const totalPages = Math.max(\n      \/\/     \/\/   postsResponse.headers.get('X-WP-TotalPages'),\n      \/\/     \/\/   pagesResponse.headers.get('X-WP-TotalPages')\n      \/\/     \/\/ );\n\n      \/\/     \/\/ \/\/ \u5408\u5e76\u6587\u7ae0\u548c\u9875\u9762\u6570\u636e\n      \/\/     \/\/ const combinedData = [...postsData, ...pagesData];\n      \/\/     \/\/ totalPages = postsResponse.headers.get('X-WP-TotalPages') +\n      \/\/     \/\/   pagesResponse.headers.get('X-WP-TotalPages')\n      \/\/     \/\/ renderPosts(combinedData);\n      \/\/     \/\/ createPagination(totalPages, currentPage);\n      \/\/   } catch (error) {\n      \/\/     console.error('Error fetching content:', error);\n      \/\/   }\n      \/\/ }\n\n      function renderPosts(posts) {\n        let str = ''\n        posts.forEach(post => {\n          str += `<div class=\"post_item\" >\n           <img decoding=\"async\" src=\"${post.featured_image_urls.medium[0]}\" alt=\"\">\n            <a href=\"${post.link}\" target=\"_blank\" class=\"post_title\">${post.title.rendered}<\/a>\n            <div class=\"post_bottom\">\n            <a href=\"${post.author_info.author_link}\"  target=\"_blank\"  class=\"post_author\">${post.author_info.display_name}<\/a>\n            <span class=\"post_time\">${formatDate(post.date)}<\/span>\n              <\/div>\n            <\/div>`\n        });\n        $('#post_list').html(str).addClass('visible')\n      }\n      fetchPosts()\n\n      function createPagination(totalPages, currentPage) {\n        const pagination = $('#pagination');\n        pagination.empty();\n\n        \/\/ Previous button\n        const prev = $('<li>').text('Prev');\n        if (currentPage > 1) {\n          prev.click(() => setPage(currentPage - 1));\n        } else {\n          prev.css('color', 'gray');\n        }\n        pagination.append(prev);\n\n        \/\/ Page numbers\n        if (totalPages <= 7) {\n          for (let i = 1; i <= totalPages; i++) {\n            addPageItem(i);\n          }\n        } else {\n          if (currentPage <= 4) {\n            for (let i = 1; i <= 5; i++) {\n              addPageItem(i);\n            }\n            pagination.append($('<li class=\"omit\">').text('...'));\n            addPageItem(totalPages);\n          } else if (currentPage > totalPages - 4) {\n            addPageItem(1);\n            pagination.append($('<li class=\"omit\">').text('...'));\n            for (let i = totalPages - 4; i <= totalPages; i++) {\n              addPageItem(i);\n            }\n          } else {\n            addPageItem(1);\n            pagination.append($('<li class=\"omit\">').text('...'));\n            for (let i = currentPage - 1; i <= currentPage + 1; i++) {\n              addPageItem(i);\n            }\n            pagination.append($('<li class=\"omit\">').text('...'));\n            addPageItem(totalPages);\n          }\n        }\n\n        \/\/ Next button\n        const next = $('<li>').text('Next');\n        if (currentPage < totalPages) {\n          next.click(() => setPage(currentPage + 1));\n        } else {\n          next.css('color', 'gray');\n        }\n        pagination.append(next);\n\n        function addPageItem(page) {\n          const pageItem = $('<li>').text(page);\n          if (page === currentPage) {\n            pageItem.addClass('active');\n          } else {\n            pageItem.click(() => setPage(page));\n          }\n          pagination.append(pageItem);\n        }\n      }\n\n      function setPage(page) {\n        currentPage = page;\n        createPagination(totalPages, currentPage);\n        fetchPosts()\n        \/\/ Handle the page change logic here, e.g., fetching new data\n        console.log('Current Page:', currentPage);\n      }\n\n\n\n    })\n  <\/script>\n\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"","protected":false},"author":3605,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_lmt_disableupdate":"","_lmt_disable":"","_price":"","_stock":"","_tribe_ticket_header":"","_tribe_default_ticket_provider":"","_tribe_ticket_capacity":"0","_ticket_start_date":"","_ticket_end_date":"","_tribe_ticket_show_description":"","_tribe_ticket_show_not_going":false,"_tribe_ticket_use_global_stock":"","_tribe_ticket_global_stock_level":"","_global_stock_mode":"","_global_stock_cap":"","_tribe_rsvp_for_event":"","_tribe_ticket_going_count":"","_tribe_ticket_not_going_count":"","_tribe_tickets_list":"[]","_tribe_ticket_has_attendee_info_fields":false,"iawp_total_views":0,"footnotes":"","_tec_slr_enabled":"","_tec_slr_layout":""},"class_list":["post-100505","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Category Search Result - Latest News from Seeed Studio<\/title>\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.seeedstudio.com\/blog\/category-search-result\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Category Search Result - Latest News from Seeed Studio\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.seeedstudio.com\/blog\/category-search-result\/\" \/>\n<meta property=\"og:site_name\" content=\"Latest News from Seeed Studio\" \/>\n<meta property=\"article:modified_time\" content=\"2024-09-11T06:35:05+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.seeedstudio.com\/blog\/category-search-result\/\",\"url\":\"https:\/\/www.seeedstudio.com\/blog\/category-search-result\/\",\"name\":\"Category Search Result - Latest News from Seeed Studio\",\"isPartOf\":{\"@id\":\"https:\/\/www.seeedstudio.com\/blog\/#website\"},\"datePublished\":\"2024-08-29T08:51:02+00:00\",\"dateModified\":\"2024-09-11T06:35:05+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.seeedstudio.com\/blog\/category-search-result\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.seeedstudio.com\/blog\/category-search-result\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.seeedstudio.com\/blog\/category-search-result\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.seeedstudio.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Category Search Result\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.seeedstudio.com\/blog\/#website\",\"url\":\"https:\/\/www.seeedstudio.com\/blog\/\",\"name\":\"Latest News from Seeed Studio\",\"description\":\"Emerging IoT, AI and Autonomous Applications on the Edge\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.seeedstudio.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Category Search Result - Latest News from Seeed Studio","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.seeedstudio.com\/blog\/category-search-result\/","og_locale":"en_US","og_type":"article","og_title":"Category Search Result - Latest News from Seeed Studio","og_url":"https:\/\/www.seeedstudio.com\/blog\/category-search-result\/","og_site_name":"Latest News from Seeed Studio","article_modified_time":"2024-09-11T06:35:05+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.seeedstudio.com\/blog\/category-search-result\/","url":"https:\/\/www.seeedstudio.com\/blog\/category-search-result\/","name":"Category Search Result - Latest News from Seeed Studio","isPartOf":{"@id":"https:\/\/www.seeedstudio.com\/blog\/#website"},"datePublished":"2024-08-29T08:51:02+00:00","dateModified":"2024-09-11T06:35:05+00:00","breadcrumb":{"@id":"https:\/\/www.seeedstudio.com\/blog\/category-search-result\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.seeedstudio.com\/blog\/category-search-result\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.seeedstudio.com\/blog\/category-search-result\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.seeedstudio.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Category Search Result"}]},{"@type":"WebSite","@id":"https:\/\/www.seeedstudio.com\/blog\/#website","url":"https:\/\/www.seeedstudio.com\/blog\/","name":"Latest News from Seeed Studio","description":"Emerging IoT, AI and Autonomous Applications on the Edge","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.seeedstudio.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"ticketed":false,"_links":{"self":[{"href":"https:\/\/www.seeedstudio.com\/blog\/wp-json\/wp\/v2\/pages\/100505","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.seeedstudio.com\/blog\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.seeedstudio.com\/blog\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.seeedstudio.com\/blog\/wp-json\/wp\/v2\/users\/3605"}],"replies":[{"embeddable":true,"href":"https:\/\/www.seeedstudio.com\/blog\/wp-json\/wp\/v2\/comments?post=100505"}],"version-history":[{"count":274,"href":"https:\/\/www.seeedstudio.com\/blog\/wp-json\/wp\/v2\/pages\/100505\/revisions"}],"predecessor-version":[{"id":101619,"href":"https:\/\/www.seeedstudio.com\/blog\/wp-json\/wp\/v2\/pages\/100505\/revisions\/101619"}],"wp:attachment":[{"href":"https:\/\/www.seeedstudio.com\/blog\/wp-json\/wp\/v2\/media?parent=100505"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}