Change Text Link to Button - button

I am building a new site on the Empire Shopify theme and I am trying to change a text link into a button on the dynamic featured product section.
So changing this:
Featured product with text
Into this:
Call to action the button
Can anyone advise on the best way to do this please?
Here is the section code:
{% assign product = all_products[section.settings.product] %}
{% assign onboarding = false %}
{% if product.empty? %}
{% assign onboarding = true %}
{% endif %}
<script
type="application/json"
data-section-type="dynamic-featured-product"
data-section-id="{{ section.id }}"
data-section-data
>
{
"settings": {
"cart_redirection": {{ settings.enable_cart_redirection | json }},
"money_format": {{ shop.money_format | strip_html | json }},
"gallery_video_autoplay": {{ section.settings.gallery_video_autoplay | json }},
"gallery_video_looping": {{ section.settings.gallery_video_looping | json }},
"gallery_thumbnail_position": {{ section.settings.gallery_thumbnail_position | json }},
"gallery_hover_zoom": {{ section.settings.gallery_hover_zoom | json }},
"gallery_click_to_zoom": "disabled",
"swatches_enable": {{ settings.swatches_enable | json }},
"sold_out_options": {{ settings.sold_out_options | json }},
"select_first_available_variant": {{ settings.select_first_available_variant | json }}
},
"context": {
"select_variant": {{ 'product.general.select_variant' | t | json }},
"product_available": {{ 'product.buttons.add_to_cart' | t | json }},
"product_sold_out": {{ 'product.buttons.sold_out' | t | json }},
"product_unavailable": {{ 'product.buttons.unavailable' | t | json }},
"product_preorder": {{ 'product.buttons.pre_order' | t | json }}
},
"product": {% unless onboarding %}{{ product | json }}{% else %}false{% endunless} %}
}
</script>
<script type="application/pxs-animation-mapping+json">
{
"blocks": [".product-main"],
"elements": [
".product-details",
"[data-product-form-area]"
]
}
</script>
<section class="featured-product--container home-section--content" data-product-wrapper>
<div class="featured-product--inner">
{%
render 'product',
product: product,
is_product_modal: false,
is_featured_product: true,
onboarding: onboarding,
show_dynamic_checkout_button: settings.show_dynamic_checkout_button,
select_first_available_variant: settings.select_first_available_variant,
gallery_aspect_ratio: section.settings.gallery_aspect_ratio,
gallery_thumbnail_position: section.settings.gallery_thumbnail_position,
gallery_image_crop: section.settings.gallery_image_crop,
gallery_click_to_zoom: 'disabled',
gallery_hover_zoom: section.settings.gallery_hover_zoom
%}
</div>
</section>
{% schema %}
{
"name": "t:sections.featured_product.name",
"class": "featured-product--section",
"settings": [
{
"id": "product",
"type": "product",
"label": "t:sections.featured_product.product.label"
},
{
"type": "header",
"content": "t:sections.product.header_1.content"
},
{
"type": "paragraph",
"content": "t:sections.product.paragraph_1.content"
},
{
"type": "select",
"id": "gallery_aspect_ratio",
"label": "t:sections.product.gallery_aspect_ratio.label",
"options": [
{
"value": "natural",
"label": "t:sections.product.gallery_aspect_ratio.option_1"
},
{
"value": "short",
"label": "t:sections.product.gallery_aspect_ratio.option_2"
},
{
"value": "square",
"label": "t:sections.product.gallery_aspect_ratio.option_3"
},
{
"value": "tall",
"label": "t:sections.product.gallery_aspect_ratio.option_4"
}
],
"default": "natural"
},
{
"type": "checkbox",
"id": "gallery_image_crop",
"label": "t:sections.product.gallery_image_crop.label",
"info": "t:sections.product.gallery_image_crop.info",
"default": false
},
{
"id": "gallery_thumbnail_position",
"type": "select",
"label": "t:sections.product.gallery_thumbnail_position.label",
"info": "t:sections.product.gallery_thumbnail_position.info",
"options": [
{
"value": "below",
"label": "t:sections.product.gallery_thumbnail_position.option_1"
},
{
"value": "left",
"label": "t:sections.product.gallery_thumbnail_position.option_2"
}
],
"default": "below"
},
{
"type": "checkbox",
"id": "gallery_video_autoplay",
"label": "t:sections.product.gallery_video_autoplay.label",
"default": true
},
{
"type": "checkbox",
"id": "gallery_video_looping",
"label": "t:sections.product.gallery_video_looping.label",
"default": true
},
{
"id": "gallery_hover_zoom",
"type": "select",
"label": "t:sections.product.gallery_hover_zoom.label",
"options": [
{
"value": "disabled",
"label": "t:sections.product.gallery_hover_zoom.option_1"
},
{
"value": "replace",
"label": "t:sections.product.gallery_hover_zoom.option_2"
}
],
"info": "t:sections.product.gallery_hover_zoom.info",
"default": "disabled"
},
{
"type": "paragraph",
"content": "t:sections.product.paragraph_2.content"
}
],
"blocks": [
{
"type": "#app"
},
{
"type": "collapsible-tab",
"name": "t:sections.product.blocks.collapsible_tab.name",
"settings": [
{
"type": "text",
"id": "collapsible_tab_heading",
"label": "t:sections.product.blocks.collapsible_tab.collapsible_tab_heading.label",
"default": "Collapsible tab"
},
{
"type": "richtext",
"id": "collapsible_tab_text",
"label": "t:sections.product.blocks.collapsible_tab.collapsible_tab_text.label",
"default": "<p>Use this text to share information about your product.</p>"
}
]
},
{
"type": "custom-liquid",
"name": "t:sections.product.blocks.custom_liquid.name",
"limit": 1,
"settings": [
{
"type": "liquid",
"id": "custom_liquid",
"label": "t:sections.product.blocks.custom_liquid.custom_liquid.label",
"info": "t:sections.product.blocks.custom_liquid.custom_liquid.info"
}
]
},
{
"type": "description",
"name": "t:sections.product.blocks.description.name",
"limit": 1
},
{
"type": "form",
"name": "t:sections.product.blocks.form.name",
"limit": 1,
"settings": [
{
"type": "paragraph",
"content": "t:sections.product.blocks.form.paragraph_1.content"
},
{
"type": "header",
"content": "t:sections.product.blocks.form.header_1.content"
},
{
"type": "checkbox",
"id": "enable_local_pickup",
"label": "t:sections.product.blocks.form.enable_local_pickup.label",
"info": "t:sections.product.blocks.form.enable_local_pickup.info",
"default": true
}
]
},
{
"type": "key_details",
"name": "t:sections.product.blocks.key_details.name",
"settings": [
{
"type": "select",
"id": "icon",
"label": "t:sections.product.blocks.key_details.icon.label",
"options": [
{
"value": "none",
"label": "t:sections.product.blocks.key_details.icon.option_1"
},
{
"value": "icon-award-trophy",
"label": "t:sections.product.blocks.key_details.icon.option_2"
},
{
"value": "icon-car",
"label": "t:sections.product.blocks.key_details.icon.option_3"
},
{
"value": "icon-cell-phone",
"label": "t:sections.product.blocks.key_details.icon.option_4"
},
{
"value": "icon-chat",
"label": "t:sections.product.blocks.key_details.icon.option_5"
},
{
"value": "icon-chat-alternate",
"label": "t:sections.product.blocks.key_details.icon.option_6"
},
{
"value": "icon-credit-card",
"label": "t:sections.product.blocks.key_details.icon.option_7"
},
{
"value": "icon-delivery",
"label": "t:sections.product.blocks.key_details.icon.option_8"
},
{
"value": "icon-delivery-cart",
"label": "t:sections.product.blocks.key_details.icon.option_9"
},
{
"value": "icon-delivery-door",
"label": "t:sections.product.blocks.key_details.icon.option_10"
},
{
"value": "icon-delivery-package",
"label": "t:sections.product.blocks.key_details.icon.option_11"
},
{
"value": "icon-email",
"label": "t:sections.product.blocks.key_details.icon.option_12"
},
{
"value": "icon-envelope",
"label": "t:sections.product.blocks.key_details.icon.option_13"
},
{
"value": "icon-gift-card",
"label": "t:sections.product.blocks.key_details.icon.option_14"
},
{
"value": "icon-heart",
"label": "t:sections.product.blocks.key_details.icon.option_15"
},
{
"value": "icon-information",
"label": "t:sections.product.blocks.key_details.icon.option_16"
},
{
"value": "icon-label-tag",
"label": "t:sections.product.blocks.key_details.icon.option_17"
},
{
"value": "icon-lock",
"label": "t:sections.product.blocks.key_details.icon.option_18"
},
{
"value": "icon-number-14",
"label": "t:sections.product.blocks.key_details.icon.option_19"
},
{
"value": "icon-number-24",
"label": "t:sections.product.blocks.key_details.icon.option_20"
},
{
"value": "icon-number-30",
"label": "t:sections.product.blocks.key_details.icon.option_21"
},
{
"value": "icon-people",
"label": "t:sections.product.blocks.key_details.icon.option_22"
},
{
"value": "icon-pin",
"label": "t:sections.product.blocks.key_details.icon.option_23"
},
{
"value": "icon-question-mark",
"label": "t:sections.product.blocks.key_details.icon.option_24"
},
{
"value": "icon-rating-five-star",
"label": "t:sections.product.blocks.key_details.icon.option_25"
},
{
"value": "icon-rating-star",
"label": "t:sections.product.blocks.key_details.icon.option_26"
},
{
"value": "icon-smile",
"label": "t:sections.product.blocks.key_details.icon.option_27"
},
{
"value": "icon-store",
"label": "t:sections.product.blocks.key_details.icon.option_28"
},
{
"value": "icon-tape-measure",
"label": "t:sections.product.blocks.key_details.icon.option_29"
},
{
"value": "icon-thumbs-up",
"label": "t:sections.product.blocks.key_details.icon.option_30"
},
{
"value": "icon-transfer",
"label": "t:sections.product.blocks.key_details.icon.option_31"
}
],
"default": "icon-delivery-package"
},
{
"type": "image_picker",
"id": "image",
"label": "t:sections.product.blocks.key_details.image.label",
"info": "t:sections.product.blocks.key_details.image.info"
},
{
"type": "text",
"id": "title",
"label": "t:sections.product.blocks.key_details.title.label",
"default": "Delivery time"
},
{
"type": "richtext",
"id": "text",
"label": "t:sections.product.blocks.key_details.text.label",
"default": "<p>Use this text to share information about your product and policies with your customers.</p>"
},
{
"type": "color",
"id": "text_color",
"label": "t:sections.product.blocks.key_details.text_color.label",
"default": "#1D1D1D"
},
{
"type": "color",
"id": "icon_color",
"label": "t:sections.product.blocks.key_details.icon_color.label",
"default": "#1D1D1D"
},
{
"type": "color",
"id": "background_color",
"label": "t:sections.product.blocks.key_details.background_color.label",
"default": "#f5f3ed"
}
]
},
{
"type": "inventory_status",
"name": "t:sections.product.blocks.inventory_status.name",
"limit": 1,
"settings": [
{
"type": "radio",
"id": "inventory_display",
"label": "t:sections.product.blocks.inventory_status.inventory_display.label",
"info": "t:sections.product.blocks.inventory_status.inventory_display.info",
"options": [
{
"value": "all_products",
"label": "t:sections.product.blocks.inventory_status.inventory_display.option_1"
},
{
"value": "low_stock_threshold",
"label": "t:sections.product.blocks.inventory_status.inventory_display.option_2"
},
{
"value": "low_stock_only",
"label": "t:sections.product.blocks.inventory_status.inventory_display.option_3"
},
{
"value": "hidden",
"label": "t:sections.product.blocks.inventory_status.inventory_display.option_4"
}
],
"default": "hidden"
},
{
"type": "checkbox",
"id": "inventory_transfer_notice",
"label": "t:sections.product.blocks.inventory_status.inventory_transfer_notice.label",
"info": "t:sections.product.blocks.inventory_status.inventory_transfer_notice.info",
"default": true
}
]
},
{
"type": "price",
"name": "t:sections.product.blocks.price.name",
"limit": 1
},
{
"type": "rating",
"name": "t:sections.product.blocks.product_rating.name",
"limit": 1,
"settings": [
{
"type": "paragraph",
"content": "t:sections.product.blocks.product_rating.paragraph_1.content"
}
]
},
{
"type": "share",
"name": "t:sections.product.blocks.share.name",
"limit": 1
},
{
"type": "tabs",
"name": "t:sections.product.blocks.tabs.name",
"limit": 1,
"settings": [
{
"type": "checkbox",
"id": "show_product_description",
"label": "t:sections.product.blocks.tabs.show_product_description.label",
"default": false
},
{
"type": "checkbox",
"id": "show_tabs_below_product_gallery",
"label": "t:sections.product.blocks.tabs.show_tabs_below_product_gallery.label",
"info": "t:sections.product.blocks.tabs.show_tabs_below_product_gallery.info",
"default": false
},
{
"type": "header",
"content": "t:sections.product.blocks.tabs.header_1.content"
},
{
"type": "text",
"id": "tab_heading_1",
"label": "t:sections.product.blocks.tabs.tab_heading_1.label",
"default": "Tab 1"
},
{
"type": "richtext",
"id": "tab_text_1",
"label": "t:sections.product.blocks.tabs.tab_text_1.label",
"default": "<p>Use this text to share information about your product.</p>"
},
{
"type": "header",
"content": "t:sections.product.blocks.tabs.header_2.content"
},
{
"type": "text",
"id": "tab_heading_2",
"label": "t:sections.product.blocks.tabs.tab_heading_2.label",
"default": "Tab 2"
},
{
"type": "richtext",
"id": "tab_text_2",
"label": "t:sections.product.blocks.tabs.tab_text_2.label",
"default": "<p>Use this text to share information about your product.</p>"
},
{
"type": "header",
"content": "t:sections.product.blocks.tabs.header_3.content"
},
{
"type": "text",
"id": "tab_heading_3",
"label": "t:sections.product.blocks.tabs.tab_heading_3.label",
"default": "Tab 3"
},
{
"type": "richtext",
"id": "tab_text_3",
"label": "t:sections.product.blocks.tabs.tab_text_3.label",
"default": "<p>Use this text to share information about your product.</p>"
}
]
},
{
"type": "sku",
"name": "t:sections.product.blocks.sku.name",
"limit": 1
},
{
"type": "text",
"name": "t:sections.product.blocks.text.name",
"settings": [
{
"type": "richtext",
"id": "text",
"label": "t:sections.product.blocks.text.text.label",
"default": "<p>Text block</p>"
}
]
},
{
"type": "title",
"name": "t:sections.product.blocks.title.name",
"limit": 1
},
{
"type": "vendor",
"name": "t:sections.product.blocks.vendor.name",
"limit": 1
},
{
"type": "view-product-link",
"name": "t:sections.featured_product.blocks.view_product_link.name",
"limit": 1,
"settings": [
{
"type": "text",
"id": "text",
"label": "t:sections.featured_product.blocks.view_product_link.text.label",
"default": "View full details"
}
]
}
],
"presets": [
{
"name": "t:sections.featured_product.presets.featured_product.name",
"category": "t:sections.featured_product.presets.featured_product.category",
"blocks": [
{
"type": "title"
},
{
"type": "price"
},
{
"type": "view-product-link"
}
]
}
]
}
{% endschema %}

It is just styling issue. You can customize that text link to be like a button using some CSS codes in your original section template file.
just for an example;
.btn_viewWallGuide {
padding: 30px 70px;
background-color: #F04F37;
border-radius: 6px;
color: white;
font-weight: 700;
font-size: 28px;
font-family: system-ui;
text-decoration: none;
}
<a class="btn_viewWallGuide" href="{{ section.settings.your_schema_link_id }}">View Wall Guide</a>

Related

How to flatten JSON with multiple nested objects in R

my sample data looks like this:
[
{
"conversationId": "string",
"companyId": "string",
"conversationChannels": [
"string"
],
"messageGroupName": "string",
"userProfile": {
"id": "string",
"firstName": "string",
"lastName": "string",
"whatsAppAccount": {
"id": "string",
"phone_number": "string",
"name": "string",
"locale": "string",
"instanceId": "string",
"is_group": true,
"is_twilio": false
},
"customFields": [ {
"companyDefinedFieldId": "string",
"value": "string"
}],
"contactLists": [],
"createdAt": "string",
"updatedAt": "string",
"lastContact": "string",
"lastContactFromCustomers": "string",
"isSandbox": false
},
"status": "string",
"assignee": {
"userInfo": {
"id": "string",
"firstName": "string",
"lastName": "string",
"displayName": "string",
"userName": "string",
"email": "string",
"phoneNumber": "string",
"emailConfirmed": true,
"createdAt": "string"
},
"roleType": "string",
"name": "string",
"locale": "string",
"timeZoneInfoId": "string",
"position": "string",
"status": "string",
"isAcceptedInvitation": true,
"isShowName": true,
"message": "string"
},
"additionalAssignees": [
{
"assignee": {
"userInfo": {
"id": "string",
"firstName": "string",
"lastName": "string",
"displayName": "string",
"userName": "string",
"email": "string",
"phoneNumber": "string",
"emailConfirmed": true,
"createdAt": "string"
},
"roleType": "string",
"name": "string",
"locale": "string",
"timeZoneInfoId": "string",
"position": "string",
"status": "string",
"isAcceptedInvitation": true,
"isShowName": true,
"message": "string"
}
}
],
where there are multiple levels of nested objects. I'm seeking to transform the data into flattened datafram to work on some data analysis. Here is my R code:
raw_convo_list <- GET(URL)
rawToChar(raw_convo_list$content)
df1<-data.frame(fromJSON(rawToChar(raw_convo_list$content), flatten = TRUE))
flatten(df1, recursive = TRUE)
However, the result has only one level of objects flattened. What can I do to split the rest out? Thank you.
I have tried using recursive flattenning, but the nested data were all put together with comma separated. My expected output was to have all fields of data separated out and parsed into relational database.

ELASTICSEARCH - Aggregations not working on string field

Elastic search extraction query is returning expected results in hints section of output but aggregation on field returning empty response
output without aggregation
{
"_shards": {
"total": 45,
"failed": 0,
"successful": 45,
"skipped": 0
},
"hits": {
"hits": [
{
"_index": "logstash-wander-2022.08.17",
"_type": "fluentd",
"_source": {
"outboundResponseStatus": "SERVICE_UNAVAILABLE"
},
"_id": "Y2NlNjkzZmEtNjZlMi00NWY4LTllNWUtOWZmNWRhMjRkMzA3",
"sort": [
1660695790244
],
"_score": null
},
{
"_index": "logstash-wander-2022.08.17",
"_type": "fluentd",
"_source": {
"outboundResponseStatus": "CONFLICT"
},
"_id": "OWNmZTFiOWEtYWQ2Mi00OGViLWFmY2EtMGQ4ZDg1NzRiYWNk",
"sort": [
1660695781810
],
"_score": null
}
],
"total": 25,
"max_score": null
},
"took": 506,
"timed_out": false
}
But adding below aggregation along with query returning empty response
"aggregations": {
"outboundResponseStatus": {
"significant_terms": {
"field": "outboundResponseStatus",
"keyed": true
}
}
}
Below is the query
{
"size": 500,
"query": {
"bool": {
"must": [
{
"query_string": {
"query": "search string",
"default_field": "*",
"fields": [],
"type": "best_fields",
"default_operator": "or",
"max_determinized_states": 10000,
"enable_position_increments": true,
"fuzziness": "AUTO",
"fuzzy_prefix_length": 0,
"fuzzy_max_expansions": 50,
"phrase_slop": 0,
"analyze_wildcard": true,
"escape": false,
"auto_generate_synonyms_phrase_query": true,
"fuzzy_transpositions": true,
"boost": 1
}
},
{
"match_phrase": {
"message": {
"query": "search string",
"slop": 0,
"zero_terms_query": "NONE",
"boost": 1
}
}
},
{
"range": {
"#timestamp": {
"from": "now-10m",
"to": "now",
"include_lower": true,
"include_upper": true,
"format": "epoch_millis",
"boost": 1
}
}
}
],
"adjust_pure_negative": true,
"boost": 1
}
},
"version": true,
"_source": {
"includes": [
"outboundResponseStatus",
"outboundUri",
"message"
],
"excludes": []
},
"stored_fields": "*",
"script_fields": {},
"sort": [
{
"#timestamp": {
"order": "desc",
"unmapped_type": "boolean"
}
}
]
}
How to get aggregations based on field in hints results?

Find sequence with single pickup and multiple dropoffs here-api. Next pickup must happen after existing delivery is completed

I got a scenario of completing 3 deliveries.
Delivery 1 - 1 Pickup (P1) and 3 Drop offs (D11,D12,D13).
Delivery 2 - 1 Pickup (P2) and 2 Drop offs (D21,D22).
Delivery 3 - 1 Pickup (P3) and 3 Drop offs (D31,D32,D33).
it should provide a route in a way that next pickup should happen after existing delivery is completed.
e.g. if we consider P2 as first point then P1 or P3 must come after D21 and D22. Here sequence of Drop offs can be anything.
The HERE Tour Planning API should be able to solve your problem. Here you can define your jobs with pickups and deliveries, and the API provides you an optimized tour.
You can also define properties of your fleet, to take into account.
https://developer.here.com/documentation/tour-planning/dev_guide/index.html
Example request:
{
"id": "7f3423c2-784a-4983-b472-e14107d5a54a",
"plan": {
"jobs": [
{
"id": "7f3423c2-784a-4983-b472-e14107d5a54a",
"places": {
"pickup": {
"times": [
[
"2019-07-04T08:00:00Z",
"2019-07-04T10:00:00Z"
],
[
"2019-07-04T16:00:00Z",
"2019-07-04T18:00:00Z"
]
],
"location": {
"lat": 52.53088,
"lng": 13.38471
},
"duration": 180,
"tag": {
"tag": "some tag"
}
},
"delivery": {
"times": [
[
"2019-07-04T08:00:00Z",
"2019-07-04T10:00:00Z"
],
[
"2019-07-04T16:00:00Z",
"2019-07-04T18:00:00Z"
]
],
"location": {
"lat": 52.53088,
"lng": 13.38471
},
"duration": 180,
"tag": {
"tag": "some tag"
}
}
},
"demand": [
10,
5
],
"skills": [
"fridge"
]
}
],
"relations": [
{
"type": "sequence",
"jobs": [
"departure",
"job1",
"break",
"job2"
],
"vehicleId": "7f3423c2-784a-4983-b472-e14107d5a54a"
}
]
},
"fleet": {
"types": [
{
"id": "7f3423c2-784a-4983-b472-e14107d5a54a",
"profile": {
"tag": "big truck"
},
"costs": {
"fixed": 22,
"distance": 0.0001,
"time": 0.0048
},
"shifts": [
{
"start": {
"time": "2019-07-04T00:00:00Z",
"location": {
"lat": 52.53088,
"lng": 13.38471
}
},
"end": {
"time": "2019-07-04T00:00:00Z",
"location": {
"lat": 52.53088,
"lng": 13.38471
}
},
"breaks": [
{
"times": [
[
"2019-07-04T08:00:00Z",
"2019-07-04T10:00:00Z"
],
[
"2019-07-04T16:00:00Z",
"2019-07-04T18:00:00Z"
]
],
"duration": 180,
"location": {
"lat": 52.53088,
"lng": 13.38471
}
}
]
}
],
"capacity": [
10,
5
],
"skills": [
"fridge"
],
"limits": {
"maxDistance": 20000,
"shiftTime": 21600
},
"amount": 1
}
],
"profiles": [
{
"name": {
"tag": "big truck"
},
"departureTime": "2019-07-04T00:00:00Z",
"avoidRoutes": {
"features": [
"tollRoad"
]
},
"type": "car"
}
]
},
"configuration": {
"optimizations": {
"traffic": "liveOrHistorical",
"waitingTime": {
"reduce": true,
"bufferTime": 15
}
}
}
}
Response:
{
"problemId": "7f3423c2-784a-4983-b472-e14107d5a54a",
"statistic": {
"cost": 1024,
"distance": 32000,
"duration": 180,
"times": {
"driving": 3600,
"serving": 600,
"waiting": 180,
"break": 1200
}
},
"tours": [
{
"vehicleId": "7f3423c2-784a-4983-b472-e14107d5a54a",
"typeId": "7f3423c2-784a-4983-b472-e14107d5a54a",
"stops": [
{
"location": {
"lat": 52.53088,
"lng": 13.38471
},
"time": {
"arrival": "2019-07-04T00:00:00Z",
"departure": "2019-07-04T00:00:00Z"
},
"load": [
10,
5
],
"activities": [
{
"jobId": "7f3423c2-784a-4983-b472-e14107d5a54a",
"jobTag": {
"tag": "some tag"
},
"type": "delivery",
"location": {
"lat": 52.53088,
"lng": 13.38471
},
"time": {
"start": "2019-07-04T00:00:00Z",
"end": "2019-07-04T00:00:00Z"
}
}
]
}
],
"statistic": {
"cost": 1024,
"distance": 32000,
"duration": 180,
"times": {
"driving": 3600,
"serving": 600,
"waiting": 180,
"break": 1200
}
}
}
],
"unassigned": [
{
"jobId": "7f3423c2-784a-4983-b472-e14107d5a54a",
"reasons": [
{
"code": 1,
"description": "cannot serve required skill"
}
]
}
]
}

How do I create custom output object in Kusto

I have array like below as one of the properties for my object. I'd like to extract certain fields and return it still as array in output. For example I want only name and storageAccountType to be returned like below
Desired Output
[
{
"name": "Data",
"storageAccountType": "Standard_LRS"
},
{
"name": "Disk2",
"storageAccountType": "Standard_LRS"
}
]
Input Array
[
{
"name": "Data",
"createOption": "Attach",
"diskSizeGB": 10,
"managedDisk": {
"id": "/subscriptions/24ba3e4c-45e3-4d55-8132-6731cf25547f/resourceGroups/GREG/providers/Microsoft.Compute/disks/Data",
"storageAccountType": "Standard_LRS"
},
"caching": "None",
"toBeDetached": false,
"lun": 0
},
{
"name": "Disk2",
"createOption": "Attach",
"diskSizeGB": 10,
"managedDisk": {
"id": "/subscriptions/24ba3e4c-45e3-4d55-8132-6731cf25547f/resourceGroups/GREG/providers/Microsoft.Compute/disks/Disk2",
"storageAccountType": "Standard_LRS"
},
"caching": "None",
"toBeDetached": false,
"lun": 1
}
]
here's a direction you could follow (which assumes you actually needs to get back arrays and not to have each element in the array in its own row. if the latter is good, remove the rows with the comments (// *)
datatable(some_value:string, d:dynamic) // just a sample data set with 2 records
[
"hello", dynamic([
{
"name": "Data",
"createOption": "Attach",
"diskSizeGB": 10,
"managedDisk": {
"id": "/subscriptions/24ba3e4c-45e3-4d55-8132-6731cf25547f/resourceGroups/GREG/providers/Microsoft.Compute/disks/Data",
"storageAccountType": "Standard_LRS"
},
"caching": "None",
"toBeDetached": false,
"lun": 0
},
{
"name": "Disk2",
"createOption": "Attach",
"diskSizeGB": 10,
"managedDisk": {
"id": "/subscriptions/24ba3e4c-45e3-4d55-8132-6731cf25547f/resourceGroups/GREG/providers/Microsoft.Compute/disks/Disk2",
"storageAccountType": "Standard_LRS"
},
"caching": "None",
"toBeDetached": false,
"lun": 1
}
]), "world", dynamic([
{
"name": "Data3",
"createOption": "Attach",
"diskSizeGB": 10,
"managedDisk": {
"id": "/subscriptions/24ba3e4c-45e3-4d55-8132-6731cf25547f/resourceGroups/GREG/providers/Microsoft.Compute/disks/Data",
"storageAccountType": "Standard_LRS"
},
"caching": "None",
"toBeDetached": false,
"lun": 0
},
{
"name": "Disk23",
"createOption": "Attach",
"diskSizeGB": 10,
"managedDisk": {
"id": "/subscriptions/24ba3e4c-45e3-4d55-8132-6731cf25547f/resourceGroups/GREG/providers/Microsoft.Compute/disks/Disk2",
"storageAccountType": "Standard_LRS"
},
"caching": "None",
"toBeDetached": false,
"lun": 1
}
])
]
// --> answer starts here <--
| extend r = rand() // *
| mv-apply d on (
project d = pack("name", d.name, "storageAccountType", d.managedDisk.storageAccountType)
)
| summarize d = make_list(d) by r, some_value // *
| project-away r // *

How to I post this video?

I have tried to post this video to our word press site using the same approach via youtube approach and code. How do get this to work? Thanks.
{
"talk": {
"id": 1,
"name": "Al Gore: Averting the climate crisis",
"description": "With the same humor and humanity he exuded in <em>An Inconvenient Truth,<\/em> Al Gore spells out 15 ways that individuals can address climate change immediately, from buying a hybrid to inventing a new, hotter \"brand name\" for global warming.",
"slug": "al_gore_on_averting_climate_crisis",
"recorded_at": "2006-02-25 00:00:00",
"published_at": "2006-06-27 00:11:00",
"updated_at": "2014-07-03 20:42:24",
"viewed_count": 2459958,
"emailed_count": 720,
"commented_count": 239,
"event": {
"id": 3,
"name": "TED2006"
},
"images": [{
"image": {
"size": "113x85",
"url": "http:\/\/images.ted.com\/images\/ted\/205_113x85.jpg"
}
}, {
"image": {
"size": "240x180",
"url": "http:\/\/images.ted.com\/images\/ted\/205_240x180.jpg"
}
}, {
"image": {
"size": "480x360",
"url": "http:\/\/images.ted.com\/images\/ted\/205_480x360.jpg"
}
}],
"image_16x9": false,
"media": {
"internal": {
"64k": {
"uri": "http:\/\/download.ted.com\/talks\/AlGore_2006-64k.mp4?apikey=16c11a6054506983485e20e837125c1da6c5a46a"
},
"uri": "http:\/\/download.ted.com\/talks\/AlGore_2006-180k.mp4?apikey=16c11a6054506983485e20e837125c1da6c5a46a"
"180k": {
},
"320k": {
"uri": "http:\/\/download.ted.com\/talks\/AlGore_2006-320k.mp4?apikey=16c11a6054506983485e20e837125c1da6c5a46a"
},
"450k": {
"uri": "http:\/\/download.ted.com\/talks\/AlGore_2006-450k.mp4?apikey=16c11a6054506983485e20e837125c1da6c5a46a"
},
"600k": {
"uri": "http:\/\/download.ted.com\/talks\/AlGore_2006-600k.mp4?apikey=16c11a6054506983485e20e837125c1da6c5a46a"
},
"950k": {
"uri": "http:\/\/download.ted.com\/talks\/AlGore_2006-950k.mp4?apikey=16c11a6054506983485e20e837125c1da6c5a46a"
},
"podcast-light": {
"uri": "http:\/\/download.ted.com\/talks\/AlGore_2006-light.mp4?apikey=16c11a6054506983485e20e837125c1da6c5a46a"
},
"podcast-regular": {
"uri": "http:\/\/download.ted.com\/talks\/AlGore_2006.mp4?apikey=16c11a6054506983485e20e837125c1da6c5a46a"
},
"podcast-high": {
"uri": "http:\/\/download.ted.com\/talks\/AlGore_2006-480p.mp4?apikey=16c11a6054506983485e20e837125c1da6c5a46a"
},
"audio-podcast": {
"uri": "http:\/\/download.ted.com\/talks\/AlGore_2006.mp3?apikey=16c11a6054506983485e20e837125c1da6c5a46a"
},
"podcast-low-en": {
"uri": "http:\/\/download.ted.com\/talks\/AlGore_2006-low-en.mp4?apikey=16c11a6054506983485e20e837125c1da6c5a46a"
},
"podcast-high-en": {
"uri": "http:\/\/download.ted.com\/talks\/AlGore_2006-480p-en.mp4?apikey=16c11a6054506983485e20e837125c1da6c5a46a"
}
}
},
"languages": {
"sq": {
"name": "Albanian"
},
"ar": {
"name": "Arabic"
},
"bg": {
"name": "Bulgarian"
},
"zh-cn": {
"name": "Chinese, Simplified"
},
"zh-tw": {
"name": "Chinese, Traditional"
},
"hr": {
"name": "Croatian"
},
"nl": {
"name": "Dutch"
},
"en": {
"name": "English",
"native": true
},
"fr": {
"name": "French"
},
"fr-ca": {
"name": "French, Canadian"
},
"gl": {
"name": "Galician"
},
"de": {
"name": "German"
},
"el": {
"name": "Greek"
},
"gu": {
"name": "Gujarati"
},
"he": {
"name": "Hebrew"
},
"hi": {
"name": "Hindi"
},
"hu": {
"name": "Hungarian"
},
"id": {
"name": "Indonesian"
},
"it": {
"name": "Italian"
},
"ja": {
"name": "Japanese"
},
"ko": {
"name": "Korean"
},
"lv": {
"name": "Latvian"
},
"lt": {
"name": "Lithuanian"
},
"rup": {
"name": "Macedo"
},
"mk": {
"name": "Macedonian"
},
"fa": {
"name": "Persian"
},
"pl": {
"name": "Polish"
},
"pt": {
"name": "Portuguese"
},
"pt-br": {
"name": "Portuguese, Brazilian"
},
"ro": {
"name": "Romanian"
},
"ru": {
"name": "Russian"
},
"sr": {
"name": "Serbian"
},
"sk": {
"name": "Slovak"
},
"sl": {
"name": "Slovenian"
},
"es": {
"name": "Spanish"
},
"sw": {
"name": "Swahili"
},
"sv": {
"name": "Swedish"
},
"tl": {
"name": "Tagalog"
},
"th": {
"name": "Thai"
},
"tr": {
"name": "Turkish"
},
"uk": {
"name": "Ukrainian"
},
"ur": {
"name": "Urdu"
}
},
"tags": [{
"tag": "alternative energy"
}, {
"tag": "cars"
}, {
"tag": "climate change"
}, {
"tag": "culture"
}, {
"tag": "environment"
}, {
"tag": "global issues"
}, {
"tag": "politics"
}, {
"tag": "science"
}, {
"tag": "sustainability"
}, {
"tag": "technology"
}],
"themes": [{
"theme": {
"id": 7,
"name": "Presentation Innovation"
}
}, {
"theme": {
"id": 15,
"name": "A Greener Future?"
}
}, {
"theme": {
"id": 23,
"name": "Bold Predictions, Stern Warnings"
}
}, {
"theme": {
"id": 25,
"name": "Design That Matters"
}
}, {
"theme": {
"id": 28,
"name": "Not Business as Usual"
}
}, {
"theme": {
"id": 30,
"name": "Technology, History and Destiny"
}
}],
"speakers": [{
"speaker": {
"id": 2,
"name": "Al Gore"
}
}],
"ratings": [{
"rating": {
"id": 7,
"name": "Funny",
"count": 439
}
}, {
"rating": {
"id": 3,
"name": "Courageous",
"count": 122
}
}, {
"rating": {
"id": 2,
"name": "Confusing",
"count": 45
}
}, {
"rating": {
"id": 1,
"name": "Beautiful",
"count": 46
}
}, {
"rating": {
"id": 21,
"name": "Unconvincing",
"count": 209
}
}, {
"rating": {
"id": 11,
"name": "Longwinded",
"count": 90
}
}, {
"rating": {
"id": 8,
"name": "Informative",
"count": 361
}
}, {
"rating": {
"id": 10,
"name": "Inspiring",
"count": 337
}
}, {
"rating": {
"id": 22,
"name": "Fascinating",
"count": 91
}
}, {
"rating": {
"id": 9,
"name": "Ingenious",
"count": 49
}
}, {
"rating": {
"id": 24,
"name": "Persuasive",
"count": 227
}
}, {
"rating": {
"id": 23,
"name": "Jaw-dropping",
"count": 84
}
}, {
"rating": {
"id": 26,
"name": "Obnoxious",
"count": 96
}
}, {
"rating": {
"id": 25,
"name": "OK",
"count": 139
}
}]
}
}
What you've posted is in JSON format. For WordPress, your best bet is to either use an embed link in the HTML tab of the WYSIWYG -- or just use the built in media library tool for embedding any type of media. This explains it reasonably well enough. http://youtu.be/aejMIghQKYo?t=2m4s

Resources