!function(){"use strict";var r={d:function(t,e){for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},o:function(r,t){return Object.prototype.hasOwnProperty.call(r,t)},r:function(r){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})}},t={};r.r(t),r.d(t,{CLASSES_PROP_KEY:function(){return l},backdropFilterPropTypeUtil:function(){return er},backgroundColorOverlayPropTypeUtil:function(){return x},backgroundGradientOverlayPropTypeUtil:function(){return S},backgroundImageOverlayPropTypeUtil:function(){return A},backgroundImagePositionOffsetPropTypeUtil:function(){return E},backgroundImageSizeScalePropTypeUtil:function(){return V},backgroundOverlayItem:function(){return $},backgroundOverlayPropTypeUtil:function(){return F},backgroundPropTypeUtil:function(){return w},blurFilterPropTypeUtil:function(){return D},booleanPropTypeUtil:function(){return N},borderRadiusPropTypeUtil:function(){return a},borderWidthPropTypeUtil:function(){return s},boxShadowPropTypeUtil:function(){return u},classesPropTypeUtil:function(){return p},colorPropTypeUtil:function(){return f},colorStopPropTypeUtil:function(){return M},colorToneFilterPropTypeUtil:function(){return R},createArrayPropUtils:function(){return o},createPropUtils:function(){return n},cssFilterFunctionPropUtil:function(){return J},dimensionsPropTypeUtil:function(){return z},dropShadowFilterPropTypeUtil:function(){return q},evaluateTerm:function(){return ur},extractValue:function(){return sr},filterEmptyValues:function(){return pr},filterPropTypeUtil:function(){return K},flexPropTypeUtil:function(){return y},gradientColorStopPropTypeUtil:function(){return _},hueRotateFilterPropTypeUtil:function(){return B},imageAttachmentIdPropType:function(){return d},imagePropTypeUtil:function(){return b},imageSrcPropTypeUtil:function(){return m},intensityFilterPropTypeUtil:function(){return G},isDependency:function(){return lr},isDependencyMet:function(){return cr},isEmpty:function(){return fr},isTransformable:function(){return ir},keyValuePropTypeUtil:function(){return v},layoutDirectionPropTypeUtil:function(){return U},linkPropTypeUtil:function(){return j},mergeProps:function(){return nr},moveTransformPropTypeUtil:function(){return W},numberPropTypeUtil:function(){return g},perspectiveOriginPropTypeUtil:function(){return tr},positionPropTypeUtil:function(){return C},queryPropTypeUtil:function(){return I},rotateTransformPropTypeUtil:function(){return Y},scaleTransformPropTypeUtil:function(){return H},selectionSizePropTypeUtil:function(){return k},shadowPropTypeUtil:function(){return c},sizePropTypeUtil:function(){return P},skewTransformPropTypeUtil:function(){return Q},stringPropTypeUtil:function(){return T},strokePropTypeUtil:function(){return O},transformFunctionsPropTypeUtil:function(){return Z},transformOriginPropTypeUtil:function(){return rr},transformPropTypeUtil:function(){return L},urlPropTypeUtil:function(){return h}});var e=window.elementorV2.schema;function n(r,t){const n=e.z.strictObject({$$type:e.z.literal(r),value:t,disabled:e.z.boolean().optional()});function o(r){return n.safeParse(r).success}return{extract:function(r){return o(r)?r.value:null},isValid:o,create:function(t,e){const n="function"==typeof t?t:()=>t,{base:i,disabled:c}=e||{};if(!i)return{$$type:r,value:n(),...c&&{disabled:c}};if(!o(i))throw new Error(`Cannot create prop based on invalid value: ${JSON.stringify(i)}`);return{$$type:r,value:n(i.value),...c&&{disabled:c}}},schema:n,key:r}}function o(r,t,o){return n(o||`${r}-array`,e.z.array(t))}const i=e.z.any().nullable(),c=n("shadow",e.z.strictObject({position:i,hOffset:i,vOffset:i,blur:i,spread:i,color:i})),u=n("box-shadow",e.z.array(c.schema)),a=n("border-radius",e.z.strictObject({"start-start":i,"start-end":i,"end-start":i,"end-end":i})),s=n("border-width",e.z.strictObject({"block-start":i,"block-end":i,"inline-start":i,"inline-end":i})),l="classes",p=n(l,e.z.array(e.z.string().regex(/^[a-z][a-z-_0-9]*$/i))),f=n("color",e.z.string()),y=n("flex",e.z.strictObject({flexGrow:i,flexShrink:i,flexBasis:i})),b=n("image",e.z.strictObject({src:i,size:i})),d=n("image-attachment-id",e.z.number()),m=n("image-src",e.z.strictObject({id:i,url:e.z.null()}).or(e.z.strictObject({id:e.z.null(),url:i}))),z=n("dimensions",e.z.strictObject({"block-start":i,"block-end":i,"inline-start":i,"inline-end":i})),g=n("number",e.z.number().nullable()),P=n("size",e.z.strictObject({unit:e.z.enum(["px","em","rem","%","vw","vh"]),size:e.z.number()}).or(e.z.strictObject({unit:e.z.enum(["deg","rad","grad","turn"]),size:e.z.number()})).or(e.z.strictObject({unit:e.z.enum(["s","ms"]),size:e.z.number()})).or(e.z.strictObject({unit:e.z.literal("auto"),size:e.z.literal("")})).or(e.z.strictObject({unit:e.z.literal("custom"),size:e.z.string()}))),T=n("string",e.z.string().nullable()),O=n("stroke",e.z.strictObject({color:i,width:i})),h=n("url",e.z.string().nullable()),U=n("layout-direction",e.z.object({row:e.z.any(),column:e.z.any()})),j=n("link",e.z.strictObject({destination:i,isTargetBlank:i})),v=n("key-value",e.z.strictObject({key:i,value:i})),k=n("selection-size",e.z.strictObject({selection:e.z.union([v.schema,T.schema]),size:i})),w=n("background",e.z.strictObject({color:i,clip:i,"background-overlay":i})),x=n("background-color-overlay",i),S=n("background-gradient-overlay",i),A=n("background-image-overlay",i),$=x.schema.or(S.schema).or(A.schema),F=n("background-overlay",e.z.array($)),E=n("background-image-position-offset",i),V=n("background-image-size-scale",i),N=n("boolean",e.z.boolean().nullable()),M=n("color-stop",e.z.strictObject({color:i,offset:i})),_=n("gradient-color-stop",e.z.array(M.schema)),C=n("object-position",e.z.strictObject({x:i,y:i})),I=n("query",e.z.strictObject({id:i,label:i})),q=n("drop-shadow",e.z.object({xAxis:i,yAxis:i,blur:i,color:i})),D=n("blur",e.z.strictObject({size:i})),R=n("color-tone",e.z.strictObject({size:i})),B=n("hue-rotate",e.z.strictObject({size:i})),G=n("intensity",e.z.strictObject({size:i})),J=n("css-filter-func",e.z.object({func:T.schema,args:e.z.union([D.schema,G.schema,R.schema,B.schema,q.schema])})),K=n("filter",e.z.array(J.schema)),L=n("transform",e.z.strictObject({"transform-functions":i,"transform-origin":i,perspective:i,"perspective-origin":i})),W=n("transform-move",e.z.strictObject({x:i,y:i,z:i})),Y=n("transform-rotate",e.z.strictObject({x:i,y:i,z:i})),H=n("transform-scale",e.z.strictObject({x:g.schema.nullable(),y:g.schema.nullable(),z:g.schema.nullable()})),Q=n("transform-skew",e.z.strictObject({x:i,y:i})),X=W.schema.or(H.schema).or(Y.schema).or(Q.schema),Z=n("transform-functions",e.z.array(X)),rr=n("transform-origin",e.z.strictObject({x:i,y:i,z:i})),tr=n("perspective-origin",e.z.strictObject({x:i,y:i})),er=n("backdrop-filter",e.z.array(J.schema));function nr(r,t){let e={};return Array.isArray(r)||(e=structuredClone(r)),Object.entries(t).forEach(([r,t])=>{null==t?delete e[r]:e[r]=t}),e}const or=e.z.object({$$type:e.z.string(),value:e.z.any(),disabled:e.z.boolean().optional()}),ir=r=>or.safeParse(r).success;function cr(r,t){if(!r?.terms.length)return{isMet:!0};const{relation:e,terms:n}=r,o=function(r){switch(r){case"or":return"some";case"and":return"every";default:throw new Error(`Relation not supported ${r}`)}}(e),i=[];return{isMet:n[o](r=>{const e=lr(r),n=e?cr(r,t).isMet:ur(r,sr(r.path,t)?.value);return n||e||i.push(r),n}),failingDependencies:i}}function ur(r,t){const{value:e,operator:n}=r;switch(n){case"eq":case"ne":return t===e==("eq"===n);case"gt":case"lte":return!(!ar(t)||!ar(e))&&Number(t)>Number(e)==("gt"===n);case"lt":case"gte":return!(!ar(t)||!ar(e))&&Number(t){const o=t?.[e];return n!==r.length-1&&ir(o)?o.value??null:o},t)}function lr(r){return"relation"in r}const pr=r=>fr(r)?null:Array.isArray(r)?r.map(pr).filter(r=>!fr(r)):"object"==typeof r?Object.fromEntries(Object.entries(r).map(([r,t])=>[r,pr(t)]).filter(([,r])=>!fr(r))):r,fr=r=>r&&ir(r)?fr(r.value):yr(r)||br(r)||dr(r),yr=r=>null==r||""===r,br=r=>Array.isArray(r)&&r.every(fr),dr=r=>"object"==typeof r&&br(Object.values(r));(window.elementorV2=window.elementorV2||{}).editorProps=t}(),window.elementorV2.editorProps?.init?.();/** * Media helper utilities and media library cache. * * Exposes: SFE.MediaHelper, SFE.MediaLibraryCache */ (function() { 'use strict'; window.MWP = window.MWP || {}; window.MWP.SFE = window.MWP.SFE || {}; const SFE = window.MWP.SFE; SFE.ManagerData = SFE.ManagerData || {}; // Media library cache const mediaLibraryCache = { data: {}, timestamps: {}, CACHE_DURATION: 300000, // 5 minutes get(mediaType) { const now = Date.now(); // Auto-purge loop to prevent memory bloat over long sessions for (const key in this.timestamps) { if (now - this.timestamps[key] > this.CACHE_DURATION) { delete this.data[key]; delete this.timestamps[key]; } } const cached = this.data[mediaType]; const timestamp = this.timestamps[mediaType]; if (cached && timestamp && (now - timestamp < this.CACHE_DURATION)) { return cached; } return null; }, set(mediaType, data) { this.data[mediaType] = data; this.timestamps[mediaType] = Date.now(); }, invalidate(mediaType = null) { if (mediaType) { delete this.data[mediaType]; delete this.timestamps[mediaType]; } else { // Invalidate all this.data = {}; this.timestamps = {}; } } }; /** * Media Helper - Uses schema media descriptors to work with media components. */ const MediaHelper = { /** * Determine whether an object is a valid schema media descriptor. * * @param {object|null} descriptor Candidate descriptor. * @returns {boolean} True when the descriptor exposes the schema media contract. */ isSchemaMediaDescriptor(descriptor) { if (!descriptor || typeof descriptor !== 'object') return false; const mediaType = typeof descriptor.mediaType === 'string' ? descriptor.mediaType.trim().toLowerCase() : ''; const attribute = typeof descriptor.attribute === 'string' ? descriptor.attribute.trim().toLowerCase() : ''; const targetSelector = typeof descriptor.targetSelector === 'string' ? descriptor.targetSelector.trim() : ''; if (!mediaType || !attribute || !targetSelector) { return false; } return ( mediaType === 'image' || mediaType === 'audio' || mediaType === 'video' || mediaType === 'file' || mediaType === 'image_or_video' || mediaType === 'icon' ); }, /** * Resolve the schema-declared media type for a component descriptor. * * @param {object|null} descriptor Schema media descriptor. * @returns {string} Normalized media type key, or an empty string when invalid. */ getMediaType(descriptor) { if (!this.isSchemaMediaDescriptor(descriptor)) return ''; return descriptor.mediaType.trim().toLowerCase(); }, /** * Resolve the file input accept string for a schema media descriptor. * * @param {object|null} descriptor Schema media descriptor. * @returns {string} Accept attribute value for the upload input. */ getAcceptTypes(descriptor) { const type = this.getMediaType(descriptor); const acceptMap = { 'image': 'image/*', 'audio': 'audio/*', 'video': 'video/*', 'file': '*/*', 'image_or_video': 'image/*,video/*' }; return acceptMap[type] || '*/*'; }, /** * Returns true when the element is a CSS background-image media element * (a cover block with hasParallax or isRepeated set). These elements are *
nodes with background-image in their inline style rather * than a src attribute. WordPress does not support video backgrounds in these * modes, so callers should restrict the media type to 'image' when this returns true. */ isCssBackgroundElement(el) { if (!el) return false; const tag = el.tagName; if (tag === 'IMG' || tag === 'VIDEO') return false; return !!(el.style.backgroundImage || el.getAttribute('role') === 'img'); }, swapIfNeeded(mediaEl, newUrl) { const videoExts = /\.(mp4|webm|ogv|mov|avi|wmv|m4v)(\?.*)?$/i; const newIsVideo = videoExts.test(newUrl); const currentTag = mediaEl.tagName; // CSS background-image element (cover with hasParallax / isRepeated): // update the inline style URL directly. The element's display mode (parallax, // repeat, etc.) is preserved because those are classes / other style properties - // we only swap the URL inside background-image. // The canonical saved HTML is always regenerated by wp.blocks.serialize(), so // this only needs to look right for the live DOM preview. if (currentTag !== 'IMG' && currentTag !== 'VIDEO') { mediaEl.style.backgroundImage = `url(${newUrl})`; return mediaEl; } const currentIsVideo = currentTag === 'VIDEO'; if (newIsVideo === currentIsVideo) { mediaEl.setAttribute('src', newUrl); if (!newIsVideo) mediaEl.removeAttribute('srcset'); return mediaEl; } const newEl = document.createElement(newIsVideo ? 'video' : 'img'); newEl.setAttribute('src', newUrl); if (newIsVideo) { newEl.setAttribute('autoplay', ''); newEl.setAttribute('muted', ''); newEl.setAttribute('loop', ''); newEl.setAttribute('playsinline', ''); } else { newEl.setAttribute('alt', ''); } ['style', 'data-object-fit'].forEach(attr => { if (mediaEl.hasAttribute(attr)) newEl.setAttribute(attr, mediaEl.getAttribute(attr)); }); let cls = mediaEl.getAttribute('class') || ''; cls = newIsVideo ? cls.replace('__image-background', '__video-background') : cls.replace('__video-background', '__image-background'); if (cls) newEl.setAttribute('class', cls); mediaEl.parentNode.replaceChild(newEl, mediaEl); return newEl; } }; // Expose globally so main script can access them SFE.MediaLibraryCache = mediaLibraryCache; SFE.MediaHelper = MediaHelper; })(); "use strict";(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[6488],{36488:a=>{a.exports=JSON.parse('{"dialog":{"title":"Bagikan masukan Anda","fieldTitlePlaceholder":"Judul","fieldDescriptionPlaceholder":"Beritahu kami apa yang Anda pikirkan","fieldSubjectPlaceholder":"Pilih subjek masukan Anda","fieldProductPlaceholder":"Pilih produk","note":"Kami menghargai masukan Anda! Meskipun kami meninjau semua kiriman, kami tidak dapat menjamin bahwa setiap saran akan menghasilkan perubahan atau pembaruan.","subjects":{"leaveFeedback":"Berikan masukan","reportBug":"Laporkan bug","requestFeature":"Minta fitur","shareThoughts":"Bagikan pemikiran lain"},"products":{"general":"Umum","editor":"Editor","accessibility":"Aksesibilitas","imageOptimization":"Optimasi gambar","emailDeliverability":"Keterkiriman email","siteManagement":"Site Management"},"cancel":"Batal","submit":"Kirim","titleLengthError":"Judul harus kurang dari 90 karakter","descriptionLengthError":"Deskripsi harus kurang dari 1024 karakter","alert":{"title":"Butuh bantuan atau mengalami masalah?","button":"Kirim tiket dukungan"}},"tooltipSuccess":"Masukan terkirim. Terima kasih telah membantu kami.","tooltipError":"Terjadi kesalahan. Silakan coba kirim masukan Anda lagi."}')}}]);a, h3 { &:active, &:focus { outline: none; } } //label { // padding: 0 0 5px 0; // input { // margin-top: -1px; // margin-right: 5px; // margin-bottom: 2px; // } //} .vc_settings-tab-content { display: none; // @todo check is it needed maybe make .vc_settings-tab-content: display: block. &.vc_settings-tab-content-active { display: block; } p.submit { float: left; } .vc_updater-result-message { clear: both; } .vc_updater-passive { .opacity(0.4); } .vc_ui-wp-spinner { height: 25px; width: 25px; float: left; &::before { height: 20px; width: 20px; } } } .vc_helper { display: none; } .tab_intro { padding: 15px 10px 0 10px; } .vc_settings-activation-deactivation { text-align: center; max-width: 960px; p { font-size: 14px; } .button-updater { // make button centered. 16px - spinner width, 5px - spinner margin margin-left: (16px + 5px) * 2; } .vc_updater-spinner { transition: opacity 0.2s; vertical-align: middle; margin-left: 5px; opacity: 0; } .loading { .vc_updater-spinner { opacity: 1; } } }{"translation-revision-date":"2026-06-10 11:18+0000","generator":"WP-CLI\/2.12.0","source":"gutenberg\/edit-pages-panel\/src\/index.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"ar","plural-forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100 >= 3 && n%100<=10 ? 3 : n%100 >= 11 && n%100<=99 ? 4 : 5;"},"Edit Pages":["\u062a\u062d\u0631\u064a\u0631 \u0627\u0644\u0635\u0641\u062d\u0627\u062a"]}}} /*global jQuery, Backbone, _, woocommerce_admin_api_keys, wcSetClipboard, wcClearClipboard */ (function( $ ) { var APIView = Backbone.View.extend({ /** * Element * * @param {Object} '#key-fields' */ el: $( '#key-fields' ), /** * Events * * @type {Object} */ events: { 'click input#update_api_key': 'saveKey' }, /** * Initialize actions */ initialize: function(){ _.bindAll( this, 'saveKey' ); }, /** * Init jQuery.BlockUI */ block: function() { $( this.el ).block({ message: null, overlayCSS: { background: '#fff', opacity: 0.6 } }); }, /** * Remove jQuery.BlockUI */ unblock: function() { $( this.el ).unblock(); }, /** * Init TipTip */ initTipTip: function( css_class ) { $( document.body ) .on( 'click', css_class, function( evt ) { evt.preventDefault(); if ( ! document.queryCommandSupported( 'copy' ) ) { $( css_class ).parent().find( 'input' ).trigger( 'focus' ).trigger( 'select' ); $( '#copy-error' ).text( woocommerce_admin_api_keys.clipboard_failed ); } else { $( '#copy-error' ).text( '' ); wcClearClipboard(); wcSetClipboard( $( this ).prev( 'input' ).val().trim(), $( css_class ) ); } } ) .on( 'aftercopy', css_class, function() { $( '#copy-error' ).text( '' ); $( css_class ).tipTip( { 'attribute': 'data-tip', 'activation': 'focus', 'fadeIn': 50, 'fadeOut': 50, 'delay': 0 } ).trigger( 'focus' ); } ) .on( 'aftercopyerror', css_class, function() { $( css_class ).parent().find( 'input' ).trigger( 'focus' ).trigger( 'select' ); $( '#copy-error' ).text( woocommerce_admin_api_keys.clipboard_failed ); } ); }, /** * Create qrcode * * @param {string} consumer_key * @param {string} consumer_secret */ createQRCode: function( consumer_key, consumer_secret ) { $( '#keys-qrcode' ).qrcode({ text: consumer_key + '|' + consumer_secret, width: 120, height: 120 }); }, /** * Save API Key using ajax * * @param {Object} e */ saveKey: function( e ) { e.preventDefault(); var self = this; self.block(); Backbone.ajax({ method: 'POST', dataType: 'json', url: woocommerce_admin_api_keys.ajax_url, data: { action: 'woocommerce_update_api_key', security: woocommerce_admin_api_keys.update_api_nonce, key_id: $( '#key_id', self.el ).val(), description: $( '#key_description', self.el ).val(), user: $( '#key_user', self.el ).val(), permissions: $( '#key_permissions', self.el ).val() }, success: function( response ) { $( '.wc-api-message', self.el ).remove(); if ( response.success ) { var data = response.data; $( 'h2, h3', self.el ).first().append( '

' + data.message + '

' ); if ( 0 < data.consumer_key.length && 0 < data.consumer_secret.length ) { $( '#api-keys-options', self.el ).remove(); $( 'p.submit', self.el ).empty().append( data.revoke_url ); var template = wp.template( 'api-keys-template' ); $( 'p.submit', self.el ).before( template({ consumer_key: data.consumer_key, consumer_secret: data.consumer_secret }) ); self.createQRCode( data.consumer_key, data.consumer_secret ); self.initTipTip( '.copy-key' ); self.initTipTip( '.copy-secret' ); } else { $( '#key_description', self.el ).val( data.description ); $( '#key_user', self.el ).val( data.user_id ); $( '#key_permissions', self.el ).val( data.permissions ); } } else { $( 'h2, h3', self.el ) .first() .append( '

' + response.data.message + '

' ); } self.unblock(); } }); } }); new APIView(); })( jQuery ); "use strict";(globalThis.webpackChunksite_mailer=globalThis.webpackChunksite_mailer||[]).push([[978],{2978:e=>{e.exports=JSON.parse('{"dialog":{"title":"Compartilhe seu feedback","fieldTitlePlaceholder":"Título","fieldDescriptionPlaceholder":"Diga-nos o que você tem em mente","fieldSubjectPlaceholder":"Selecione o assunto do seu feedback","fieldProductPlaceholder":"Selecionar o produto","note":"Agradecemos seu feedback! Embora revisemos todas as sugestões, não podemos garantir que cada sugestão resultará em uma alteração ou atualização.","subjects":{"leaveFeedback":"Deixar um feedback","reportBug":"Reportar um erro","requestFeature":"Solicitar um recurso","shareThoughts":"Partilhar outras ideias"},"products":{"general":"Geral","editor":"Editor","accessibility":"Acessibilidade","imageOptimization":"Otimização de imagem","emailDeliverability":"Capacidade de entrega de email","siteManagement":"Site Management"},"cancel":"Cancelar","submit":"Enviar","titleLengthError":"O título deve ter menos de 90 caracteres","descriptionLengthError":"A descrição deve ter menos de 1024 caracteres","alert":{"title":"Precisa de ajuda ou encontrou um problema?","button":"Enviar um ticket de suporte"}},"tooltipSuccess":"Feedback enviado. Obrigado por nos ajudar.","tooltipError":"Algo deu errado. Tente enviar seu feedback novamente."}')}}]);{"id-70993":{"title":"Fashion Lifestyle Blog","id":70993,"publish-date":1671645110,"featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/fashion-lifestyles-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/fashion-lifestyles-08-600x2441.jpg","fullpage-thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/fashion-lifestyles-08-400x1627.jpg","astra-site-url":"\/\/websitedemos.net\/fashion-lifestyle-08","astra-site-parent-id":3049,"astra-sites-tag":{"480":"blog","482":"fashion","479":"lifestyle","1020":"personal","483":"styling-shopping","481":"trend"},"astra-sites-type":"free","astra-site-category":{"37":"blog","39":"free"},"astra-sites-template-category":{"2790":"beauty-fashion","2828":"blog","2794":"consulting"},"astra-site-page-builder":"gutenberg","categories":{"2497":"blog"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}],"post-status":"publish","post-content":"","post-excerpt":"","pages":{"id-75589":{"title":"Blog","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2023\/08\/fashion-lifestyles-08-blog.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2023\/08\/fashion-lifestyles-08-blog-600x1529.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/fashion-lifestyle-08\/wp-json\/wp\/v2\/pages\/583","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/fashion-lifestyle-08\/blog\/","astra-sites-tag":{"480":"blog"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"74":"blog","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-70994":{"title":"Contact","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2023\/08\/fashion-lifestyles-08-contact.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2023\/08\/fashion-lifestyles-08-contact-600x757.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/fashion-lifestyle-08\/wp-json\/wp\/v2\/pages\/10","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/fashion-lifestyle-08\/contact\/","astra-sites-tag":{"415":"contact"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"74":"blog","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]},"id-70995":{"title":"Home","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/fashion-lifestyles-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/fashion-lifestyles-08-600x2441.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/fashion-lifestyle-08\/wp-json\/wp\/v2\/pages\/5","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/fashion-lifestyle-08\/","astra-sites-tag":{"423":"home"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"74":"blog","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]}},"related-bb-template":"","related-elementor-template":"","related-gutenberg-template":"","related_ecommerce_template":"","ecommerce_parent_template":""},"id-70987":{"title":"Webinar","id":70987,"publish-date":1671644202,"featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/webinar-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/webinar-08-600x2107.jpg","fullpage-thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/webinar-08-400x1405.jpg","astra-site-url":"\/\/websitedemos.net\/webinar-08","astra-site-parent-id":3043,"astra-sites-tag":{"850":"landing-page","1892":"webinar","1894":"webinar-registration-page"},"astra-sites-type":"free","astra-site-category":{"27":"business","39":"free"},"astra-sites-template-category":{"2777":"business","2811":"conference","2784":"event","2863":"landing-page","2771":"one-page","2801":"video","2870":"vlog"},"astra-site-page-builder":"gutenberg","categories":{"2489":"event-invitation","2927":"one-page"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}],"post-status":"publish","post-content":"","post-excerpt":"","pages":{"id-70988":{"title":"Home","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/webinar-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/webinar-08-600x2107.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/webinar-08\/wp-json\/wp\/v2\/pages\/592","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/webinar-08\/","astra-sites-tag":{"423":"home"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]}},"related-bb-template":"","related-elementor-template":"","related-gutenberg-template":"","related_ecommerce_template":"","ecommerce_parent_template":""},"id-70969":{"title":"Locksmith","id":70969,"publish-date":1671619748,"featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/locksmith-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/locksmith-08-600x3725.jpg","fullpage-thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/locksmith-08-400x2483.jpg","astra-site-url":"\/\/websitedemos.net\/locksmith-08","astra-site-parent-id":3033,"astra-sites-tag":{"3042":"keycutting","3035":"keys","3040":"lock","3034":"locks","2430":"locksmith","3039":"locksmithing","3036":"locksmithservice","3038":"locksmithservices","3041":"lostkey","3037":"security"},"astra-sites-type":"free","astra-site-category":{"27":"business","39":"free"},"astra-sites-template-category":{"2777":"business","2863":"landing-page"},"astra-site-page-builder":"gutenberg","categories":{"2483":"expert-services","2471":"local-technician","2927":"one-page"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}],"post-status":"publish","post-content":"","post-excerpt":"","pages":{"id-70970":{"title":"Home","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/locksmith-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/12\/locksmith-08-600x3725.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/locksmith-08\/wp-json\/wp\/v2\/pages\/10","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/locksmith-08\/","astra-sites-tag":{"423":"home"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]},"id-70972":{"title":"Home","featured-image-url":"","thumbnail-image-url":"","astra-page-api-url":"https:\/\/websitedemos.net\/locksmith-08\/wp-json\/wp\/v2\/pages\/10","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/locksmith-08\/","astra-sites-tag":[],"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]}},"related-bb-template":"","related-elementor-template":"","related-gutenberg-template":"","related_ecommerce_template":"","ecommerce_parent_template":""},"id-69906":{"title":"Creative Blog","id":69906,"publish-date":1669231742,"featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/creative-blog-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/creative-blog-08-600x1491.jpg","fullpage-thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/creative-blog-08-400x994.jpg","astra-site-url":"\/\/websitedemos.net\/creative-blog-08","astra-site-parent-id":2997,"astra-sites-tag":{"2209":"advertising","1652":"blogger","729":"blogging","2408":"creative-blog","2410":"design-blog","2646":"digital-blog","2412":"film-blog","509":"photography","2270":"podcasts","2165":"style-influencer"},"astra-sites-type":"free","astra-site-category":{"37":"blog","39":"free"},"astra-sites-template-category":{"2828":"blog","2791":"creative","2774":"magazine"},"astra-site-page-builder":"gutenberg","categories":{"2497":"blog"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}],"post-status":"publish","post-content":"","post-excerpt":"","pages":{"id-69908":{"title":"Contact","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/creative-blog-08-contact.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/creative-blog-08-contact-600x856.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/creative-blog-08\/wp-json\/wp\/v2\/pages\/1582","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/creative-blog-08\/contact\/","astra-sites-tag":{"415":"contact"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"74":"blog","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]},"id-69909":{"title":"Home","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/creative-blog-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/creative-blog-08-600x1491.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/creative-blog-08\/wp-json\/wp\/v2\/pages\/776","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/creative-blog-08\/","astra-sites-tag":{"423":"home"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"74":"blog","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-69910":{"title":"Podcasts","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/creative-blog-08-podcast.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/creative-blog-08-podcast-600x896.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/creative-blog-08\/wp-json\/wp\/v2\/pages\/1584","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/creative-blog-08\/podcasts\/","astra-sites-tag":{"2270":"podcasts"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"74":"blog","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-69907":{"title":"About","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/creative-blog-08-about.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/creative-blog-08-about-600x1282.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/creative-blog-08\/wp-json\/wp\/v2\/pages\/1578","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/creative-blog-08\/about\/","astra-sites-tag":{"352":"about"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"74":"blog","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]}},"related-bb-template":"","related-elementor-template":"","related-gutenberg-template":"","related_ecommerce_template":"","ecommerce_parent_template":""},"id-69916":{"title":"Planet Earth","id":69916,"publish-date":1669231717,"featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/earth-08-1.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/earth-08-1-600x1250.jpg","fullpage-thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/earth-08-1-400x833.jpg","astra-site-url":"\/\/websitedemos.net\/earth-08","astra-site-parent-id":2998,"astra-sites-tag":[],"astra-sites-type":"free","astra-site-category":{"27":"business","39":"free"},"astra-sites-template-category":{"2812":"digital-agency","2860":"multipurpose","2830":"nature","2797":"simple-minimal"},"astra-site-page-builder":"gutenberg","categories":{"2500":"multipurpose"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}],"post-status":"publish","post-content":"","post-excerpt":"","pages":{"id-69917":{"title":"About","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/earth-08-about-1.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/earth-08-about-1-600x828.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/earth-08\/wp-json\/wp\/v2\/pages\/107","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/earth-08\/about\/","astra-sites-tag":{"352":"about"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-69918":{"title":"Contact","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/earth-08-contact-1.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/earth-08-contact-1-600x706.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/earth-08\/wp-json\/wp\/v2\/pages\/100","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/earth-08\/contact\/","astra-sites-tag":{"415":"contact"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]},"id-69919":{"title":"Home","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/earth-08-1.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/earth-08-1-600x1250.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/earth-08\/wp-json\/wp\/v2\/pages\/78","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/earth-08\/","astra-sites-tag":{"423":"home"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-69920":{"title":"Services","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/earth-08-services-1.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/earth-08-services-1-600x1348.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/earth-08\/wp-json\/wp\/v2\/pages\/77","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/earth-08\/services\/","astra-sites-tag":{"425":"services"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]}},"related-bb-template":"","related-elementor-template":"","related-gutenberg-template":"","related_ecommerce_template":"","ecommerce_parent_template":""},"id-69941":{"title":"Real Estate","id":69941,"publish-date":1669231573,"featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08-600x2718.jpg","fullpage-thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08-400x1812.jpg","astra-site-url":"\/\/websitedemos.net\/real-estate-08","astra-site-parent-id":2999,"astra-sites-tag":{"979":"company","550":"estate-broking","547":"listing","812":"office","549":"property","485":"real-estate","548":"renting-property"},"astra-sites-type":"free","astra-site-category":{"27":"business","36":"other"},"astra-sites-template-category":{"2777":"business","2832":"property","2778":"real-estate"},"astra-site-page-builder":"gutenberg","categories":{"2484":"real-estate"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}],"post-status":"publish","post-content":"","post-excerpt":"","pages":{"id-69944":{"title":"Contact","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08-contact.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08-contact-600x872.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/real-estate-08\/wp-json\/wp\/v2\/pages\/12","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/real-estate-08\/contact\/","astra-sites-tag":{"415":"contact"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","139":"other"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]},"id-69945":{"title":"FAQ","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08-faq.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08-faq-600x1091.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/real-estate-08\/wp-json\/wp\/v2\/pages\/14","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/real-estate-08\/faq\/","astra-sites-tag":{"426":"faq"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","139":"other"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-69946":{"title":"Home","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08-600x2718.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/real-estate-08\/wp-json\/wp\/v2\/pages\/5","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/real-estate-08\/","astra-sites-tag":{"423":"home"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","139":"other"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-69942":{"title":"About Us","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08-about.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08-about-600x1278.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/real-estate-08\/wp-json\/wp\/v2\/pages\/8","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/real-estate-08\/about-us\/","astra-sites-tag":{"352":"about"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","139":"other"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-69943":{"title":"Agents","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08-agents.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08-agents-600x1596.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/real-estate-08\/wp-json\/wp\/v2\/pages\/10","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/real-estate-08\/agents\/","astra-sites-tag":{"552":"agents"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","139":"other"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-69947":{"title":"Properties","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08-properties.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/11\/real-estate-08-properties-600x2630.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/real-estate-08\/wp-json\/wp\/v2\/pages\/16","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/real-estate-08\/properties\/","astra-sites-tag":{"553":"properties"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","139":"other"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]}},"related-bb-template":"","related-elementor-template":"","related-gutenberg-template":"","related_ecommerce_template":"","ecommerce_parent_template":""},"id-69655":{"title":"Home and Garden Decor","id":69655,"publish-date":1665073396,"featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/home-garden-decor-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/home-garden-decor-08-600x3656.jpg","fullpage-thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/home-garden-decor-08-400x2437.jpg","astra-site-url":"\/\/websitedemos.net\/home-garden-decor-08","astra-site-parent-id":2929,"astra-sites-tag":{"496":"ecommerce","1817":"ecommerce-store","416":"garden-care","421":"garden-maintenance","420":"gardening","423":"home","862":"home-decor"},"astra-sites-type":"free","astra-site-category":{"38":"ecommerce","39":"free"},"astra-sites-template-category":[],"astra-site-page-builder":"gutenberg","categories":{"2495":"ecommerce","2476":"gardening"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"woocommerce","init":"woocommerce\/woocommerce.php","name":"WooCommerce"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}],"post-status":"publish","post-content":"","post-excerpt":"","pages":{"id-69656":{"title":"About","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/home-garden-decor-08-about.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/home-garden-decor-08-about-600x1736.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/home-garden-decor-08\/wp-json\/wp\/v2\/pages\/328","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/home-garden-decor-08\/about\/","astra-sites-tag":{"352":"about"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"64":"ecommerce","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-69657":{"title":"Contact","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/home-garden-decor-08-contact.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/home-garden-decor-08-contact-600x1065.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/home-garden-decor-08\/wp-json\/wp\/v2\/pages\/330","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/home-garden-decor-08\/contact\/","astra-sites-tag":{"415":"contact"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"64":"ecommerce","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]},"id-69658":{"title":"Home","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/home-garden-decor-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/home-garden-decor-08-600x3656.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/home-garden-decor-08\/wp-json\/wp\/v2\/pages\/325","dynamic-page":"yes","astra-page-url":"\/\/websitedemos.net\/home-garden-decor-08\/","astra-sites-tag":{"423":"home"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"64":"ecommerce","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"woocommerce","init":"woocommerce\/woocommerce.php","name":"WooCommerce"}]}},"related-bb-template":"","related-elementor-template":"","related-gutenberg-template":"","related_ecommerce_template":"","ecommerce_parent_template":""},"id-69646":{"title":"Heating And AC Technician","id":69646,"publish-date":1665071731,"featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/heating-and-ac-technician-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/heating-and-ac-technician-08-600x2986.jpg","fullpage-thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/heating-and-ac-technician-08-400x1990.jpg","astra-site-url":"\/\/websitedemos.net\/heating-and-ac-technician-08","astra-site-parent-id":2928,"astra-sites-tag":{"599":"ac-repair","2573":"air-conditioning-service","439":"local-services","2572":"manufacturer","2094":"mechanic","600":"repair-services","441":"technician"},"astra-sites-type":"free","astra-site-category":{"27":"business","39":"free"},"astra-sites-template-category":[],"astra-site-page-builder":"gutenberg","categories":{"2471":"local-technician"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}],"post-status":"publish","post-content":"","post-excerpt":"","pages":{"id-59181":{"title":"About","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/heating-and-ac-technician-08-about.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/heating-and-ac-technician-08-about-600x1288.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/heating-and-ac-technician-08\/wp-json\/wp\/v2\/pages\/887","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/heating-and-ac-technician-08\/about\/","astra-sites-tag":{"352":"about"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-59182":{"title":"Contact","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/heating-and-ac-technician-08-contact.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/heating-and-ac-technician-08-contact-600x1066.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/heating-and-ac-technician-08\/wp-json\/wp\/v2\/pages\/891","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/heating-and-ac-technician-08\/contact\/","astra-sites-tag":{"415":"contact"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]},"id-59183":{"title":"Home","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/heating-and-ac-technician-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/heating-and-ac-technician-08-600x2986.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/heating-and-ac-technician-08\/wp-json\/wp\/v2\/pages\/885","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/heating-and-ac-technician-08\/","astra-sites-tag":{"423":"home"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-59184":{"title":"Services","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/heating-and-ac-technician-08-services.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/10\/heating-and-ac-technician-08-services-600x1659.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/heating-and-ac-technician-08\/wp-json\/wp\/v2\/pages\/889","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/heating-and-ac-technician-08\/services\/","astra-sites-tag":{"425":"services"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]}},"related-bb-template":"","related-elementor-template":"","related-gutenberg-template":"","related_ecommerce_template":"","ecommerce_parent_template":""},"id-69486":{"title":"Learn Baking","id":69486,"publish-date":1664211488,"featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/learn-baking-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/learn-baking-08-600x2667.jpg","fullpage-thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/learn-baking-08-400x1778.jpg","astra-site-url":"\/\/websitedemos.net\/learn-baking-08","astra-site-parent-id":2925,"astra-sites-tag":{"1857":"baking","462":"courses","467":"learndash","975":"online-learning"},"astra-sites-type":"free","astra-site-category":{"27":"business","39":"free"},"astra-sites-template-category":{"2828":"blog","2835":"elearning","2785":"food","2880":"membership","2827":"online-course","2770":"personal","2873":"tutor"},"astra-site-page-builder":"gutenberg","categories":{"2494":"elearning"},"required-plugins":[{"slug":"sfwd-lms","init":"sfwd-lms\/sfwd_lms.php","name":"LearnDash LMS"},{"slug":"learndash-course-grid","init":"learndash-course-grid\/learndash_course_grid.php","name":"LearnDash LMS - Course Grid"},{"slug":"presto-player","init":"presto-player\/presto-player.php","name":"Presto Player"},{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}],"post-status":"publish","post-content":"","post-excerpt":"","pages":{"id-58588":{"title":"About","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/learn-baking-08-about.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/learn-baking-08-about-600x1916.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/learn-baking-08\/wp-json\/wp\/v2\/pages\/1077","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/learn-baking-08\/about\/","astra-sites-tag":{"352":"about"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-58589":{"title":"All Courses","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/learn-baking-08-all-courses.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/learn-baking-08-all-courses-600x1819.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/learn-baking-08\/wp-json\/wp\/v2\/pages\/1075","dynamic-page":"yes","astra-page-url":"\/\/websitedemos.net\/learn-baking-08\/all-courses\/","astra-sites-tag":{"462":"courses"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-58590":{"title":"Blog","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/learn-baking-08-blog.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/learn-baking-08-blog-600x1123.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/learn-baking-08\/wp-json\/wp\/v2\/pages\/1079","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/learn-baking-08\/blog\/","astra-sites-tag":{"480":"blog"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-58591":{"title":"Contact","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/learn-baking-08-contact.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/learn-baking-08-contact-600x1547.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/learn-baking-08\/wp-json\/wp\/v2\/pages\/1081","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/learn-baking-08\/contact\/","astra-sites-tag":{"415":"contact"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]},"id-58592":{"title":"Home","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/learn-baking-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/learn-baking-08-600x2667.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/learn-baking-08\/wp-json\/wp\/v2\/pages\/1073","dynamic-page":"yes","astra-page-url":"\/\/websitedemos.net\/learn-baking-08\/","astra-sites-tag":{"423":"home"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]}},"related-bb-template":"","related-elementor-template":"","related-gutenberg-template":"","related_ecommerce_template":"","ecommerce_parent_template":""},"id-69465":{"title":"eBook Author","id":69465,"publish-date":1664208739,"featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/kathryn-ebook-author-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/kathryn-ebook-author-08-600x2110.jpg","fullpage-thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/kathryn-ebook-author-08-400x1406.jpg","astra-site-url":"\/\/websitedemos.net\/kathryn-ebook-author-08","astra-site-parent-id":2923,"astra-sites-tag":{"724":"author","727":"book","748":"ebook","725":"writer"},"astra-sites-type":"free","astra-site-category":{"27":"business","39":"free"},"astra-sites-template-category":[],"astra-site-page-builder":"gutenberg","categories":[],"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}],"post-status":"publish","post-content":"","post-excerpt":"","pages":{"id-69466":{"title":"Bio","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/kathryn-ebook-author-08-bio.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/kathryn-ebook-author-08-bio-600x2227.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/kathryn-ebook-author-08\/wp-json\/wp\/v2\/pages\/548","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/kathryn-ebook-author-08\/bio\/","astra-sites-tag":{"2924":"bio"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]},"id-69468":{"title":"Contact","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/kathryn-ebook-author-08-contact.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/kathryn-ebook-author-08-contact-600x1047.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/kathryn-ebook-author-08\/wp-json\/wp\/v2\/pages\/550","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/kathryn-ebook-author-08\/contact\/","astra-sites-tag":{"415":"contact"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]},"id-69469":{"title":"Home","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/kathryn-ebook-author-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/kathryn-ebook-author-08-600x2110.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/kathryn-ebook-author-08\/wp-json\/wp\/v2\/pages\/544","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/kathryn-ebook-author-08\/","astra-sites-tag":{"423":"home"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]},"id-69467":{"title":"Books","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/kathryn-ebook-author-08-books.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/kathryn-ebook-author-08-books-600x2104.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/kathryn-ebook-author-08\/wp-json\/wp\/v2\/pages\/546","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/kathryn-ebook-author-08\/books\/","astra-sites-tag":{"1740":"books"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]}},"related-bb-template":"","related-elementor-template":"","related-gutenberg-template":"","related_ecommerce_template":"","ecommerce_parent_template":""},"id-69112":{"title":"Deli Restaurant","id":69112,"publish-date":1663068937,"featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08-600x2199.jpg","fullpage-thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08-400x1466.jpg","astra-site-url":"\/\/websitedemos.net\/deli-restaurant-08","astra-site-parent-id":2903,"astra-sites-tag":{"1527":"cafeteria","783":"cake","972":"club","560":"cuisine","2394":"deli-restaurant","1974":"dessert","561":"eatery","336":"food","1579":"food-menu","2513":"fruits-dish","350":"hotel","559":"outlet","335":"restaurant","2041":"snack-bar"},"astra-sites-type":"free","astra-site-category":{"27":"business","39":"free"},"astra-sites-template-category":[],"astra-site-page-builder":"gutenberg","categories":{"2496":"restaurant-food"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}],"post-status":"publish","post-content":"","post-excerpt":"","pages":{"id-69113":{"title":"About Us","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08-about-us.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08-about-us-600x1532.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/deli-restaurant-08\/wp-json\/wp\/v2\/pages\/368","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/deli-restaurant-08\/about-us\/","astra-sites-tag":{"352":"about"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-69114":{"title":"Contact","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08-contact.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08-contact-600x1089.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/deli-restaurant-08\/wp-json\/wp\/v2\/pages\/376","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/deli-restaurant-08\/contact\/","astra-sites-tag":{"415":"contact"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]},"id-69115":{"title":"Home","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08-600x2199.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/deli-restaurant-08\/wp-json\/wp\/v2\/pages\/366","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/deli-restaurant-08\/","astra-sites-tag":{"423":"home","814":"homepage"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-69116":{"title":"Menu","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08-menu.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08-menu-600x2056.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/deli-restaurant-08\/wp-json\/wp\/v2\/pages\/370","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/deli-restaurant-08\/menu\/","astra-sites-tag":{"565":"menu"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-69117":{"title":"Menu Dark","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08-menu-dark.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08-menu-dark-600x2109.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/deli-restaurant-08\/wp-json\/wp\/v2\/pages\/372","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/deli-restaurant-08\/menu-dark\/","astra-sites-tag":{"565":"menu"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-69118":{"title":"Testimonial","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08-testimonials.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/09\/deli-restaurant-08-testimonials-600x1413.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/deli-restaurant-08\/wp-json\/wp\/v2\/pages\/374","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/deli-restaurant-08\/testimonial\/","astra-sites-tag":{"2302":"testimonial"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]}},"related-bb-template":"","related-elementor-template":"","related-gutenberg-template":"","related_ecommerce_template":"","ecommerce_parent_template":""},"id-68423":{"title":"Cycle Shop","id":68423,"publish-date":1661430112,"featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/cycle-shop-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/cycle-shop-08-600x3500.jpg","fullpage-thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/cycle-shop-08-400x2333.jpg","astra-site-url":"\/\/websitedemos.net\/cycle-shop-08","astra-site-parent-id":2902,"astra-sites-tag":{"880":"cartflows","2418":"commerce","2548":"cycle-shop","1017":"e-commerce","496":"ecommerce","2422":"online-market","732":"online-shop","2420":"online-shopping","383":"online-store","967":"product-store","2421":"purchases","2417":"reseller","733":"shop","2416":"shopping","2549":"sport-cycyle","749":"store","966":"woo-commerce"},"astra-sites-type":"free","astra-site-category":{"27":"business","39":"free"},"astra-sites-template-category":[],"astra-site-page-builder":"gutenberg","categories":{"2495":"ecommerce"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"woocommerce","init":"woocommerce\/woocommerce.php","name":"WooCommerce"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}],"post-status":"publish","post-content":"","post-excerpt":"","pages":{"id-59170":{"title":"About Us","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/cycle-shop-08-about-us.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/cycle-shop-08-about-us-600x2348.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/cycle-shop-08\/wp-json\/wp\/v2\/pages\/1195","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/cycle-shop-08\/about-us\/","astra-sites-tag":{"455":"about-us"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]},"id-59171":{"title":"Contact","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/cycle-shop-08-contact.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/cycle-shop-08-contact-600x1060.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/cycle-shop-08\/wp-json\/wp\/v2\/pages\/1197","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/cycle-shop-08\/contact\/","astra-sites-tag":{"415":"contact"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}]},"id-59172":{"title":"Home","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/cycle-shop-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/cycle-shop-08-600x3500.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/cycle-shop-08\/wp-json\/wp\/v2\/pages\/1193","dynamic-page":"yes","astra-page-url":"\/\/websitedemos.net\/cycle-shop-08\/","astra-sites-tag":{"423":"home"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]}},"related-bb-template":"","related-elementor-template":"","related-gutenberg-template":"","related_ecommerce_template":75400,"ecommerce_parent_template":""},"id-68320":{"title":"Party Planner","id":68320,"publish-date":1661347018,"featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/party-planner-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/party-planner-08-600x3106.jpg","fullpage-thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/party-planner-08-400x2071.jpg","astra-site-url":"\/\/websitedemos.net\/party-planner-08","astra-site-parent-id":2901,"astra-sites-tag":{"2633":"celebration-planner","2630":"event-coordinator","2632":"event-facilitator","2631":"event-manager","2635":"party","2634":"party-organizer"},"astra-sites-type":"free","astra-site-category":{"27":"business","39":"free"},"astra-sites-template-category":[],"astra-site-page-builder":"gutenberg","categories":{"2486":"art-music","2489":"event-invitation"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}],"post-status":"publish","post-content":"","post-excerpt":"","pages":{"id-68321":{"title":"Home","featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/party-planner-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/party-planner-08-600x3106.jpg","astra-page-api-url":"https:\/\/websitedemos.net\/party-planner-08\/wp-json\/wp\/v2\/pages\/5","dynamic-page":"no","astra-page-url":"\/\/websitedemos.net\/party-planner-08\/","astra-sites-tag":{"423":"home","814":"homepage"},"site-pages-type":"free","site-pages-page-builder":"gutenberg","site-pages-category":[],"site-pages-parent-category":{"60":"business","61":"free"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"}]}},"related-bb-template":"","related-elementor-template":"","related-gutenberg-template":"","related_ecommerce_template":"","ecommerce_parent_template":""},"id-68254":{"title":"Construction Company","id":68254,"publish-date":1661280044,"featured-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/construction-company-08.jpg","thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/construction-company-08-600x3578.jpg","fullpage-thumbnail-image-url":"https:\/\/websitedemos.net\/wp-content\/uploads\/2022\/08\/construction-company-08-400x2385.jpg","astra-site-url":"\/\/websitedemos.net\/construction-company-08","astra-site-parent-id":2900,"astra-sites-tag":{"435":"architecture","3078":"builder","692":"business","484":"construction","795":"contractor","485":"real-estate"},"astra-sites-type":"free","astra-site-category":{"27":"business","39":"free"},"astra-sites-template-category":{"2795":"architecture","2836":"construction","2778":"real-estate"},"astra-site-page-builder":"gutenberg","categories":{"2484":"real-estate"},"required-plugins":[{"slug":"ultimate-addons-for-gutenberg","init":"ultimate-addons-for-gutenberg\/ultimate-addons-for-gutenberg.php","name":"Spectra"},{"slug":"wpforms-lite","init":"wpforms-lite\/wpforms.php","name":"WPForms Lite"}],"post-status":"publish","post-content":"\n

The Construction template is very clean and crisp, ideal for forward-looking businesses. While set up for construction, you could easily use it for architecture, real estate, and other business types.<\/p>\n\n\n\n

The design uses bright colors and whitespace along with great imagery to create a positive first impression. Something continued effortlessly throughout the template. Thanks to full compatibility with page builders, you can transform this template without touching a line of code!<\/p>\n\n\n\n

Key features of the Construction template<\/h2>\n\n\n\n

', true ); } else { add_filter( 'get_the_archive_title_prefix', '__return_empty_string' ); the_archive_title( '

', '

' ); remove_filter( 'get_the_archive_title_prefix', '__return_empty_string' ); } do_action( 'astra_after_archive_title' ); break; case 'archive-breadcrumb': if ( ! is_author() ) { do_action( 'astra_before_archive_breadcrumb' ); echo astra_get_breadcrumb(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped do_action( 'astra_after_archive_breadcrumb' ); } break; case 'archive-description': do_action( 'astra_before_archive_description' ); if ( is_search() ) { $title = have_posts() ? astra_get_i18n_option( 'section-search-page-title-found-custom-description', _x( '%astra%', 'Search Page Custom `When Results Found` Text', 'astra' ) ) : astra_get_i18n_option( 'section-search-page-title-not-found-custom-description', _x( '%astra%', 'Search Page Custom `When Results Not Found` Text', 'astra' ) ); echo wp_kses_post( wpautop( $title ) ); } else { echo wp_kses_post( wpautop( get_the_archive_description() ) ); } do_action( 'astra_after_archive_description' ); break; } } ?>

hexdec( substr( $hex, 0, 2 ) ), 'g' => hexdec( substr( $hex, 2, 2 ) ), 'b' => hexdec( substr( $hex, 4, 2 ) ), ); // Should we darken the color? if ( 'reverse' === $type && $shortcode_atts['r'] + $shortcode_atts['g'] + $shortcode_atts['b'] > 382 ) { $steps = -$steps; } elseif ( 'darken' === $type ) { $steps = -$steps; } // Build the new color. $steps = max( -255, min( 255, $steps ) ); $shortcode_atts['r'] = max( 0, min( 255, $shortcode_atts['r'] + $steps ) ); $shortcode_atts['g'] = max( 0, min( 255, $shortcode_atts['g'] + $steps ) ); $shortcode_atts['b'] = max( 0, min( 255, $shortcode_atts['b'] + $steps ) ); $r_hex = str_pad( dechex( $shortcode_atts['r'] ), 2, '0', STR_PAD_LEFT ); $g_hex = str_pad( dechex( $shortcode_atts['g'] ), 2, '0', STR_PAD_LEFT ); $b_hex = str_pad( dechex( $shortcode_atts['b'] ), 2, '0', STR_PAD_LEFT ); return '#' . $r_hex . $g_hex . $b_hex; } } // End if. /** * Convert colors from HEX to RGBA */ if ( ! function_exists( 'astra_hex_to_rgba' ) ) { /** * Convert colors from HEX to RGBA * * @param string $color Color code in HEX. * @param mixed $opacity Color code opacity. * @return string Color code in RGB or RGBA. */ function astra_hex_to_rgba( $color, $opacity = false ) { $default = 'rgb(0,0,0)'; // Return default if no color provided. if ( empty( $color ) ) { return $default; } // Sanitize $color if "#" is provided. if ( '#' === $color[0] ) { $color = substr( $color, 1 ); } // Check if color has 6 or 3 characters and get values. if ( 6 === strlen( $color ) ) { $hex = array( $color[0] . $color[1], $color[2] . $color[3], $color[4] . $color[5] ); } elseif ( 3 === strlen( $color ) ) { $hex = array( $color[0] . $color[0], $color[1] . $color[1], $color[2] . $color[2] ); } else { return $default; } // Convert HEX to RGB. $rgb = array_map( 'hexdec', $hex ); // Check if opacity is set(RGBA or RGB). if ( $opacity ) { if ( 1 < abs( $opacity ) ) { $opacity = 1.0; } $output = 'rgba(' . implode( ',', $rgb ) . ',' . $opacity . ')'; } else { $output = 'rgb(' . implode( ',', $rgb ) . ')'; } // Return RGB(a) color string. return $output; } } if ( ! function_exists( 'astra_enable_page_builder_compatibility' ) ) { /** * Allow filter to enable/disable page builder compatibility. * * @see https://wpastra.com/docs/recommended-settings-beaver-builder-astra/ * @see https://wpastra.com/docs/recommended-settings-for-elementor/ * * @since 1.2.2 * @return bool True - If the page builder compatibility is enabled. False - IF the page builder compatibility is disabled. */ function astra_enable_page_builder_compatibility() { return apply_filters( 'astra_enable_page_builder_compatibility', true ); } } if ( ! function_exists( 'astra_get_pro_url' ) ) { /** * Returns an URL with utm tags * the admin settings page. * * @param string $path Path for the Website URL. * @param string $source UMM source. * @param string $medium UTM medium. * @param string $campaign UTM campaign. * @return mixed */ function astra_get_pro_url( $path, $source = '', $medium = '', $campaign = '' ) { if ( '/pricing/' === $path && ! ASTRA_THEME_ORG_VERSION ) { return 'https://woocommerce.com/products/astra-pro/'; } $url = esc_url( ASTRA_WEBSITE_BASE_URL . $path ); $astra_pro_url = trailingslashit( $url ); // Set up our URL if we have a source. if ( ! empty( $source ) ) { $astra_pro_url = add_query_arg( 'utm_source', sanitize_text_field( $source ), $astra_pro_url ); } static $utm_ready_link_callback = null; if ( null === $utm_ready_link_callback ) { $utm_ready_link_callback = is_callable( array( 'BSF_UTM_Analytics', 'get_utm_ready_link' ) ); } // Modify the utm_source parameter using the UTM ready link function to include tracking information. if ( $utm_ready_link_callback ) { $astra_pro_url = BSF_UTM_Analytics::get_utm_ready_link( $astra_pro_url, 'astra' ); } // Set up our URL if we have a medium. if ( ! empty( $medium ) ) { $astra_pro_url = add_query_arg( 'utm_medium', sanitize_text_field( $medium ), $astra_pro_url ); } // Set up our URL if we have a campaign. if ( ! empty( $campaign ) ) { $astra_pro_url = add_query_arg( 'utm_campaign', sanitize_text_field( $campaign ), $astra_pro_url ); } $astra_pro_url = apply_filters( 'astra_get_pro_url', $astra_pro_url, $url ); $astra_pro_url = remove_query_arg( 'bsf', $astra_pro_url ); static $partner_ref = null; if ( null === $partner_ref ) { $partner_ref = get_option( 'astra_partner_url_param', '' ); } if ( ! empty( $partner_ref ) ) { $astra_pro_url = add_query_arg( 'bsf', sanitize_text_field( $partner_ref ), $astra_pro_url ); } return $astra_pro_url; } } /** * Search Form */ if ( ! function_exists( 'astra_get_search_form' ) ) { /** * Display search form. * * @param bool $echo Default to echo and not return the form. * @return string|void String when $echo is false. */ function astra_get_search_form( $echo = true ) { $form = get_search_form( array( 'input_placeholder' => apply_filters( 'astra_search_field_placeholder', esc_attr_x( 'Search...', 'placeholder', 'astra' ) ), 'data_attributes' => apply_filters( 'astra_search_field_toggle_data_attrs', '' ), 'input_value' => get_search_query(), 'show_input_submit' => false, ) ); /** * Filters the HTML output of the search form. * * @param string $form The search form HTML output. */ $result = apply_filters( 'astra_get_search_form', $form ); if ( null === $result ) { $result = $form; } if ( $echo ) { echo $result; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped } else { return $result; } } } /** * Check if we're being delivered AMP * * @return bool */ function astra_is_amp_endpoint() { return function_exists( 'is_amp_endpoint' ) && is_amp_endpoint(); } /* * Get Responsive Spacing */ if ( ! function_exists( 'astra_responsive_spacing' ) ) { /** * Get Spacing value * * @param array $option CSS value. * @param string $side top | bottom | left | right. * @param string $device CSS device. * @param string $default Default value. * @param string $prefix Prefix value. * @return mixed */ function astra_responsive_spacing( $option, $side = '', $device = 'desktop', $default = '', $prefix = '' ) { if ( isset( $option[ $device ][ $side ] ) && isset( $option[ $device . '-unit' ] ) ) { $spacing = astra_get_css_value( $option[ $device ][ $side ], $option[ $device . '-unit' ], $default ); } elseif ( is_numeric( $option ) ) { $spacing = astra_get_css_value( $option ); } else { $spacing = ! is_array( $option ) ? $option : ''; } if ( '' !== $prefix && '' !== $spacing ) { return $prefix . $spacing; } return $spacing; } } /** * Get the tablet breakpoint value. * * @param mixed $min min. * @param mixed $max max. * * @since 2.4.0 * * @return number $breakpoint. */ function astra_get_tablet_breakpoint( $min = '', $max = '' ) { $update_breakpoint = astra_get_option( 'can-update-theme-tablet-breakpoint', true ); // Change default for new users. $default = true === $update_breakpoint ? 921 : 768; $header_breakpoint = apply_filters( 'astra_tablet_breakpoint', $default ); if ( '' !== $min ) { $header_breakpoint -= $min; } elseif ( '' !== $max ) { $header_breakpoint += $max; } return absint( $header_breakpoint ); } /** * Get the mobile breakpoint value. * * @param mixed $min min. * @param mixed $max max. * * @since 2.4.0 * * @return number header_breakpoint. */ function astra_get_mobile_breakpoint( $min = '', $max = '' ) { $header_breakpoint = apply_filters( 'astra_mobile_breakpoint', 544 ); if ( '' !== $min ) { $header_breakpoint -= $min; } elseif ( '' !== $max ) { $header_breakpoint += $max; } return absint( $header_breakpoint ); } /* * Apply CSS for the element */ if ( ! function_exists( 'astra_color_responsive_css' ) ) { /** * Astra Responsive Colors * * @param array $setting Responsive colors. * @param string $css_property CSS property. * @param string $selector CSS selector. * @return string Dynamic responsive CSS. */ function astra_color_responsive_css( $setting, $css_property, $selector ) { $css = ''; if ( isset( $setting['desktop'] ) && ! empty( $setting['desktop'] ) ) { $css .= $selector . '{' . $css_property . ':' . esc_attr( $setting['desktop'] ) . ';}'; } if ( isset( $setting['tablet'] ) && ! empty( $setting['tablet'] ) ) { $css .= '@media (max-width:' . astra_get_tablet_breakpoint() . 'px) {' . $selector . '{' . $css_property . ':' . esc_attr( $setting['tablet'] ) . ';} }'; } if ( isset( $setting['mobile'] ) && ! empty( $setting['mobile'] ) ) { $css .= '@media (max-width:' . astra_get_mobile_breakpoint() . 'px) {' . $selector . '{' . $css_property . ':' . esc_attr( $setting['mobile'] ) . ';} }'; } return $css; } } if ( ! function_exists( 'astra_check_is_bb_themer_layout' ) ) { /** * Check if layout is bb themer's layout */ function astra_check_is_bb_themer_layout() { $is_layout = false; $post_type = get_post_type(); $post_id = get_the_ID(); if ( 'fl-theme-layout' === $post_type && $post_id ) { $is_layout = true; } return $is_layout; } } if ( ! function_exists( 'astra_is_white_labelled' ) ) { /** * Check if white label option is enabled in astra pro plugin */ function astra_is_white_labelled() { if ( is_callable( 'Astra_Ext_White_Label_Markup::show_branding' ) && ! Astra_Ext_White_Label_Markup::show_branding() ) { return apply_filters( 'astra_is_white_labelled', true ); } return apply_filters( 'astra_is_white_labelled', false ); } } /** * Get the value for font-display property. * * @since 1.8.6 * @return string */ function astra_get_fonts_display_property() { return apply_filters( 'astra_fonts_display_property', 'swap' ); } /** * Sanitize background meta object for post meta storage. * * @since 4.12.4 * @param mixed $meta_value The background meta value to sanitize. * @return array Sanitized background meta. */ function astra_sanitize_background_meta( $meta_value ) { if ( ! is_array( $meta_value ) ) { return array(); } $devices = array( 'desktop', 'tablet', 'mobile' ); $sanitized = array(); foreach ( $devices as $device ) { if ( ! isset( $meta_value[ $device ] ) || ! is_array( $meta_value[ $device ] ) ) { continue; } foreach ( $meta_value[ $device ] as $key => $value ) { $sanitized[ $device ][ $key ] = sanitize_text_field( $value ); } } return $sanitized; } /** * Generate Responsive Background Color CSS. * * @param array $bg_obj_res array of background object. * @param string $device CSS for which device. * @return array */ function astra_get_responsive_background_obj( $bg_obj_res, $device ) { $gen_bg_css = array(); if ( ! is_array( $bg_obj_res ) ) { return; } $bg_obj = isset( $bg_obj_res[ $device ] ) ? $bg_obj_res[ $device ] : array(); $bg_img = isset( $bg_obj['background-image'] ) ? esc_attr( $bg_obj['background-image'] ) : ''; $bg_tab_img = isset( $bg_obj_res['tablet']['background-image'] ) ? esc_attr( $bg_obj_res['tablet']['background-image'] ) : ''; $bg_desk_img = isset( $bg_obj_res['desktop']['background-image'] ) ? esc_attr( $bg_obj_res['desktop']['background-image'] ) : ''; $bg_color = isset( $bg_obj['background-color'] ) ? esc_attr( $bg_obj['background-color'] ) : ''; $tablet_css = isset( $bg_obj_res['tablet']['background-image'] ) && $bg_obj_res['tablet']['background-image'] ? true : false; $desktop_css = isset( $bg_obj_res['desktop']['background-image'] ) && $bg_obj_res['desktop']['background-image'] ? true : false; $bg_type = isset( $bg_obj['background-type'] ) && $bg_obj['background-type'] ? $bg_obj['background-type'] : ''; if ( '' !== $bg_type ) { switch ( $bg_type ) { case 'color': if ( '' !== $bg_img && '' !== $bg_color ) { $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $bg_color . ', ' . $bg_color . '), url(' . $bg_img . ')'; } elseif ( 'mobile' === $device ) { if ( $desktop_css ) { $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $bg_color . ', ' . $bg_color . '), url(' . $bg_desk_img . ')'; } elseif ( $tablet_css ) { $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $bg_color . ', ' . $bg_color . '), url(' . $bg_tab_img . ')'; } else { if ( '' !== $bg_color ) { $gen_bg_css['background-color'] = $bg_color; $gen_bg_css['background-image'] = 'none'; } } } elseif ( 'tablet' === $device ) { if ( $desktop_css ) { $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $bg_color . ', ' . $bg_color . '), url(' . $bg_desk_img . ')'; } else { if ( '' !== $bg_color ) { $gen_bg_css['background-color'] = $bg_color; $gen_bg_css['background-image'] = 'none'; } } } elseif ( '' === $bg_img ) { $gen_bg_css['background-color'] = $bg_color; $gen_bg_css['background-image'] = 'none'; } break; case 'image': /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort $overlay_type = isset( $bg_obj['overlay-type'] ) ? $bg_obj['overlay-type'] : 'none'; /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort $overlay_color = isset( $bg_obj['overlay-color'] ) ? esc_attr( $bg_obj['overlay-color'] ) : ''; /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort $overlay_grad = isset( $bg_obj['overlay-gradient'] ) ? esc_attr( $bg_obj['overlay-gradient'] ) : ''; /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort $overlay_opacity = isset( $bg_obj['overlay-opacity'] ) ? $bg_obj['overlay-opacity'] : ''; /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort if ( '' !== $bg_img ) { if ( 'none' !== $overlay_type ) { if ( 'classic' === $overlay_type && '' !== $overlay_color ) { $updated_overlay_color = $overlay_color; // Compatibility of overlay color opacity to HEX & VAR colors. if ( '' !== $overlay_opacity ) { $is_linked_with_gcp = 'var' === substr( $overlay_color, 0, 3 ); if ( $is_linked_with_gcp ) { $astra_gcp_instance = new Astra_Global_Palette(); $updated_overlay_color = $astra_gcp_instance->get_color_by_palette_variable( $overlay_color ); } if ( '#' === $updated_overlay_color[0] ) { $updated_overlay_color = astra_hex_to_rgba( $updated_overlay_color, $overlay_opacity ); } } $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $updated_overlay_color . ', ' . $updated_overlay_color . '), url(' . $bg_img . ')'; } elseif ( 'gradient' === $overlay_type && '' !== $overlay_grad ) { $gen_bg_css['background-image'] = $overlay_grad . ', url(' . $bg_img . ')'; } else { $gen_bg_css['background-image'] = 'url(' . $bg_img . ')'; } } else { $gen_bg_css['background-image'] = 'url(' . $bg_img . ')'; } } break; case 'gradient': if ( '' !== $bg_color ) { $gen_bg_css['background-image'] = $bg_color; } break; default: break; } } elseif ( '' !== $bg_color ) { $gen_bg_css['background-color'] = $bg_color; } if ( '' !== $bg_img ) { if ( isset( $bg_obj['background-repeat'] ) ) { $gen_bg_css['background-repeat'] = esc_attr( $bg_obj['background-repeat'] ); } if ( isset( $bg_obj['background-position'] ) ) { $gen_bg_css['background-position'] = esc_attr( $bg_obj['background-position'] ); } if ( isset( $bg_obj['background-size'] ) ) { $gen_bg_css['background-size'] = esc_attr( $bg_obj['background-size'] ); } if ( isset( $bg_obj['background-attachment'] ) ) { $gen_bg_css['background-attachment'] = esc_attr( $bg_obj['background-attachment'] ); } } return $gen_bg_css; } /** * Common function to check is pagination is enabled on current page. * * @since 3.0.1 * @return bool */ function astra_check_pagination_enabled() { global $wp_query; return $wp_query->max_num_pages > 1 && apply_filters( 'astra_pagination_enabled', true ); } /** * Verify is current post comments are enabled or not for applying dynamic CSS. * * @since 3.0.1 * @return bool */ function astra_check_current_post_comment_enabled() { return is_singular() && comments_open(); } /** * Dont apply zero size to existing user. * * @since 3.6.9 * @return bool false if it is an existing user , true if not. */ function astra_zero_font_size_case() { $astra_settings = astra_get_options(); return apply_filters( 'astra_zero_font_size_case', isset( $astra_settings['astra-zero-font-size-case-css'] ) ? false : true ); } /** * Check the WordPress version. * * @since 2.5.4 * @param string $version WordPress version to compare with the current version. * @param mixed $compare Comparison value i.e > or < etc. * @return bool|null True/False based on the $version and $compare value. */ function astra_wp_version_compare( $version, $compare ) { return version_compare( get_bloginfo( 'version' ), $version, $compare ); } /** * Check if existing setup is live with old block editor compatibilities. * * @return bool true|false. */ function astra_block_based_legacy_setup() { $astra_settings = astra_get_options(); return apply_filters( 'astra_block_based_legacy_setup', isset( $astra_settings['blocks-legacy-setup'] ) && isset( $astra_settings['wp-blocks-ui'] ) && 'legacy' === $astra_settings['wp-blocks-ui'] ? true : false ); } /** * Check is new structural things are updated. * * @return bool true|false. */ function astra_check_is_structural_setup() { $astra_settings = astra_get_options(); return apply_filters( 'astra_get_option_customizer-default-layout-update', isset( $astra_settings['customizer-default-layout-update'] ) ? false : true ); // phpcs:ignore WordPress.NamingConventions.ValidHookName.UseUnderscores } /** * Check if the user is old sidebar user. * * @since 3.9.4 * @return bool true|false. */ function astra_check_old_sidebar_user() { $astra_settings = astra_get_options(); return apply_filters( 'astra_old_global_sidebar_defaults', isset( $astra_settings['astra-old-global-sidebar-default'] ) ? false : true ); } /** * Check if user is old for hiding/showing password icon field for login my-account form. * * @since 3.9.2 * @return bool true|false. */ function astra_load_woocommerce_login_form_password_icon() { $astra_settings = astra_get_options(); return apply_filters( 'astra_get_option_woo-show-password-icon', isset( $astra_settings['woo-show-password-icon'] ) ? false : true ); // phpcs:ignore WordPress.NamingConventions.ValidHookName.UseUnderscores } /** * Function to add narrow width properties in the frontend. * * @since 4.0.0 * @param string $location container layout for single-post, archives, pages, page meta. * @param string $narrow_container_max_width dynamic container width in px. * @return string Parsed CSS based on $location and $narrow_container_max_width. */ function astra_narrow_container_width( $location, $narrow_container_max_width ) { if ( 'narrow-container' === $location ) { $narrow_container_css = array( '.ast-narrow-container .site-content > .ast-container' => array( 'max-width' => astra_get_css_value( $narrow_container_max_width, 'px' ), ), ); // Remove Sidebar for Narrow Width Container Layout. if ( 'narrow-container' === astra_get_content_layout() ) { add_filter( 'astra_page_layout', static function() { // phpcs:ignore PHPCompatibility.FunctionDeclarations.NewClosure.Found return 'no-sidebar'; } ); } return astra_parse_css( $narrow_container_css, astra_get_tablet_breakpoint( '', 1 ) ); } return ''; } /** * Function which will return the Sidebar Layout to determine default body classes for Editor. * * @since 4.2.0 * @param string $post_type Post Type. * @return string Sidebar Layout. */ function astra_get_sidebar_layout_for_editor( $post_type ) { $sidebar_layout = astra_get_option( 'single-' . $post_type . '-sidebar-layout' ); if ( 'default' === $sidebar_layout ) { $sidebar_layout = astra_get_option( 'site-sidebar-layout' ); } return $sidebar_layout; } /** * Gets the SVG for the duotone filter definition. * * @since 4.2.2 * * @param string $filter_id The ID of the filter. * @param array $color An array of color strings. * @return string An SVG with a duotone filter definition. */ function astra_get_filter_svg( $filter_id, $color ) { $duotone_values = array( 'r' => array(), 'g' => array(), 'b' => array(), 'a' => array(), ); /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort $duotone_values['r'][] = $color['r'] / 255; /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort $duotone_values['g'][] = $color['g'] / 255; /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort $duotone_values['b'][] = $color['b'] / 255; /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort $duotone_values['a'][] = $color['a']; ob_start(); ?> <', '><', $svg ); return trim( $svg ); } /** * Converts HEX to RGB. * * @since 4.2.2 * * @param string $hex Hex color. * @return array split version of rgb. */ function astra_hex_to_rgb( $hex ) { // @codingStandardsIgnoreStart /** * @psalm-suppress PossiblyNullArrayAccess */ list($r, $g, $b) = sscanf( $hex, '#%02x%02x%02x' ); // @codingStandardsIgnoreEnd return array( 'r' => $r, 'g' => $g, 'b' => $b, 'a' => 1, ); } /** * Converts RGBA to split array RGBA. * * @since 4.2.2 * * @param string $rgba RGBA value. * @return array split version of rgba. */ function astra_split_rgba( $rgba ) { // Remove the "rgba(" and ")" from the input string. $rgba = str_replace( array( 'rgba(', ')' ), '', $rgba ); // Split the RGBA values by comma. $values = explode( ',', $rgba ); // Convert each value from string to integer. $r = intval( $values[0] ); $g = intval( $values[1] ); $b = intval( $values[2] ); $a = floatval( $values[3] ); // Create the split RGBA string. return array( 'r' => $r, 'g' => $g, 'b' => $b, 'a' => $a, ); } /** * Render svg mask. * * @since 4.2.2 * * @param string $id id. * @param string $filter_name filter name. * @param string $color color. * @return mixed masked svg, */ function astra_render_svg_mask( $id, $filter_name, $color ) { if ( 0 === strpos( $color, 'var(--' ) ) { $agp = new Astra_Global_Palette(); /** @psalm-suppress UndefinedFunction */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort $svg_color = astra_hex_to_rgb( $agp->get_color_by_palette_variable( $color ) ); } elseif ( preg_match( '/^#[a-f0-9]{6}$/i', $color ) ) { /** @psalm-suppress UndefinedFunction */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort $svg_color = astra_hex_to_rgb( $color ); } else { /** @psalm-suppress UndefinedFunction */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort $svg_color = astra_split_rgba( $color ); } /** @psalm-suppress UndefinedFunction */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort echo astra_get_filter_svg( $id, apply_filters( 'astra_' . $filter_name, $svg_color ) ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped } /** * Returns an array of logo svg icons. * * @return array * @since 4.7.0 */ function astra_get_logo_svg_icons_array() { static $ast_all_svg_icons = array(); if ( $ast_all_svg_icons ) { return $ast_all_svg_icons; } $icons_dir = ASTRA_THEME_DIR . 'assets/svg/logo-svg-icons'; for ( $i = 0; $i < 4; $i++ ) { $file = "{$icons_dir}/icons-v6-{$i}.php"; if ( file_exists( $file ) ) { $icons = include_once $file; foreach ( $icons as &$icon ) { $fallback = isset( $icon['svg']['solid'] ) ? $icon['svg']['solid'] : array(); $icon_brand_or_solid = isset( $icon['svg']['brands'] ) ? $icon['svg']['brands'] : $fallback; $path = isset( $icon_brand_or_solid['path'] ) ? $icon_brand_or_solid['path'] : ''; $width = isset( $icon_brand_or_solid['width'] ) ? $icon_brand_or_solid['width'] : ''; $height = isset( $icon_brand_or_solid['height'] ) ? $icon_brand_or_solid['height'] : ''; $view = (bool) $width && (bool) $height ? "0 0 {$width} {$height}" : null; if ( $path && $view ) { ob_start(); ?> taxonomy ?? ''; $post_types = get_post_types(); // Loop through all post types to see which ones support the current taxonomy. foreach ( $post_types as $type ) { if ( in_array( $taxonomy, get_object_taxonomies( $type ) ) ) { // If a custom post type matches the taxonomy, assign it. $post_type = $type; break; } } } } /** * Filter the detected post type before returning. * * @param string $post_type The detected post type. */ return apply_filters( 'astra_get_post_type', strval( $post_type ) ); } /** * Get Astra's upgrade URL based on org or woo package version. * * @param string $type Type of upgrade URL. * @since 4.8.4 * @return string Upgrade URL. */ function astra_get_upgrade_url( $type = 'pro' ) { /** @psalm-suppress TypeDoesNotContainType */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort if ( ! ASTRA_THEME_ORG_VERSION ) { /** @psalm-suppress TypeDoesNotContainType */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort return 'https://woo.com/products/astra-pro/'; } switch ( $type ) { case 'pricing': $upgrade_url = astra_get_pro_url( '/pricing/', 'free-theme', 'customizer', 'main-cta' ); break; case 'dashboard': $upgrade_url = astra_get_pro_url( '/pricing/', 'free-theme', 'dashboard', 'upgrade' ); break; case 'customizer': $upgrade_url = astra_get_pro_url( '/pricing/', 'free-theme', 'dashboard', 'upgrade' ); break; default: $upgrade_url = astra_get_pro_url( '/pro/', 'free-theme', 'dashboard', 'upgrade-now' ); break; } return $upgrade_url; } /** * Renders an SVG icon for SVG Icon Selector Control. * * @param array $icon The icon to be rendered. Contains type and value keys. * @param bool $echo Whether to echo the SVG markup directly or return it. * @param string $default The default icon to use if no icon is provided. * * @return string|null The SVG icon markup or null if SVG icons are not enabled or no icon is provided. * @since 4.10.0 */ function astra_icon_selector_svg( $icon, $echo = false, $default = '' ) { // Bail early if SVG icons are not enabled. if ( ! Astra_Icons::is_svg_icons() || ! $icon ) { return $echo ? null : ''; } $svg = ''; $classes = array( 'ast-icon' ); if ( isset( $icon['type'], $icon['value'] ) ) { $type = $icon['type']; $value = $icon['value']; if ( $type === 'custom' ) { $svg = do_shortcode( $value ); $classes[] = 'icon-' . $type; } elseif ( $type !== 'none' ) { $svg = Astra_Builder_UI_Controller::fetch_svg_icon( $value ); $classes[] = 'icon-' . $value; } } if ( ! $svg && $default ) { $svg = Astra_Builder_UI_Controller::fetch_svg_icon( $default ); } if ( $svg ) { $svg = sprintf( '%2$s', implode( ' ', $classes ), $svg ); } if ( $echo !== true ) { return wp_kses( $svg, Astra_Icons::allowed_svg_args() ); } echo wp_kses( $svg, Astra_Icons::allowed_svg_args() ); } // Check if the function astra_parse_selector exists to avoid redeclaration. if ( ! function_exists( 'astra_parse_selector' ) ) { /** * Parses selectors and conditionally removes plugin-specific selectors. * Usage: * ``` * $selectors = '.class1, .class2, .class3'; * $filtered = astra_parse_selector( $selectors, 'wc' ); * ``` * * @param string $selectors Full selector string (comma-separated). * @param string|array $keywords Keywords to filter out selectors. If a string is provided, it will be converted to an array. * * @return string Final selector string. * @since 4.11.6 */ function astra_parse_selector( $selectors, $keywords = '' ) { $selector_array = explode( ',', $selectors ); $filtered_selectors = array(); // If $keywords is a string, convert it to an array. if ( is_string( $keywords ) ) { $keywords = array( $keywords ); } foreach ( $selector_array as $selector ) { $selector = trim( $selector ); $ignore_selector = false; foreach ( $keywords as $keyword ) { switch ( $keyword ) { case 'wc': case 'woocommerce': if ( ! defined( 'WC_VERSION' ) && strpos( $selector, 'woocommerce' ) !== false ) { $ignore_selector = true; break 2; } break; case 'el': case 'elementor': if ( ! defined( 'ELEMENTOR_VERSION' ) && strpos( $selector, 'elementor' ) !== false ) { $ignore_selector = true; break 2; } break; // Add more cases here for other plugins. } } if ( ! $ignore_selector ) { $filtered_selectors[] = $selector; } } return implode( ', ', $filtered_selectors ); } } /** * Check if the button consistency compatibility is enabled. * * @return bool true|false. * @since 4.11.6 */ function astra_button_consistency_compatibility() { $astra_settings = astra_get_options(); return apply_filters( 'astra_get_option_btn-consist-comp', isset( $astra_settings['btn-consist-comp'] ) ? false : true ); } // Flip horizontal alignment for RTL so saved left/right mirror automatically. if ( ! function_exists( 'astra_flip_rtl_alignment' ) ) { /** * Flip horizontal alignment for RTL so saved left/right mirror automatically. * * @param string $alignment The alignment value to flip (left, right, or other). * @return string The flipped alignment value for RTL or original value. * @since 4.11.11 */ function astra_flip_rtl_alignment( $alignment ) { if ( ! is_rtl() ) { return $alignment; } switch ( $alignment ) { case 'left': return 'right'; case 'right': return 'left'; default: return $alignment; } } }