Tonight begins Yom Kippur, and for the first time in my life, I will not be at services. There was no option, due to lack of committed individuals and rain, for an outdoor service, and I’m still uncomfortable with the way they are not distancing inside… di5.us/t/y_
{
"type": "entry",
"published": "2020-09-27T19:37:08+00:00",
"url": "https://twitter.com/dshanske/status/1310302473433817096",
"content": {
"text": "Tonight begins Yom Kippur, and for the first time in my life, I will not be at services. There was no option, due to lack of committed individuals and rain, for an outdoor service, and I\u2019m still uncomfortable with the way they are not distancing inside\u2026 di5.us/t/y_",
"html": "Tonight begins Yom Kippur, and for the first time in my life, I will not be at services. There was no option, due to lack of committed individuals and rain, for an outdoor service, and I\u2019m still uncomfortable with the way they are not distancing inside\u2026 <a href=\"https://di5.us/t/y_\">di5.us/t/y_</a>"
},
"author": {
"type": "card",
"name": "David Shanske",
"url": "https://twitter.com/dshanske",
"photo": "https://pbs.twimg.com/profile_images/945095985340080128/oHe8j2na.jpg"
},
"post-type": "note",
"_id": "15095531",
"_source": "2773"
}
Tonight begins Yom Kippur, and for the first time in my life, I will not be at services. There was no option, due to lack of committed individuals and rain, for an outdoor service, and I’m still uncomfortable with the way they are not distancing inside. So I will be fasting and praying at home. There is a very different feel to solo prayer than group prayer and Yom Kippur feels different than praying at home alone on Passover, which I also did. I am pleased that we were able to get services outside available for Rosh Hashanah. If Rosh Hashanah is, akin to a trial, the verdict, Yom Kippur is the final appeal before the sentence is carried out for the next year. In a year that included so many difficult things, and the challenges of the current situation the world finds itself in…most of us cannot imagine this continuing till next Yom Kippur. Here is hoping things will look better soon.
{
"type": "entry",
"published": "2020-09-27T15:37:01-04:00",
"url": "https://david.shanske.com/2020/09/27/yom-kippur-5781/",
"syndication": [
"https://twitter.com/dshanske/status/1310302473433817096",
"https://micro.blog/dshanske/10325044"
],
"content": {
"text": "Tonight begins Yom Kippur, and for the first time in my life, I will not be at services. There was no option, due to lack of committed individuals and rain, for an outdoor service, and I\u2019m still uncomfortable with the way they are not distancing inside. So I will be fasting and praying at home. There is a very different feel to solo prayer than group prayer and Yom Kippur feels different than praying at home alone on Passover, which I also did. I am pleased that we were able to get services outside available for Rosh Hashanah. If Rosh Hashanah is, akin to a trial, the verdict, Yom Kippur is the final appeal before the sentence is carried out for the next year. In a year that included so many difficult things, and the challenges of the current situation the world finds itself in\u2026most of us cannot imagine this continuing till next Yom Kippur. Here is hoping things will look better soon."
},
"author": {
"type": "card",
"name": "David Shanske",
"url": "https://david.shanske.com/",
"photo": "https://david.shanske.com/avatar/dshanske?s=49"
},
"post-type": "note",
"_id": "15095452",
"_source": "1905"
}
Not inspired. INSPIRED BY.
Such intrepid Christian warriors going after Atwood’s Utopian vision!
The religious group People of Praise did not inspire The Handmaid's Tale, Vox and National Review confirm twitter.com/i/events/13098…
{
"type": "entry",
"published": "2020-09-27T18:49:25+00:00",
"url": "https://twitter.com/karabaic/status/1310290463857848322",
"content": {
"text": "Not inspired. INSPIRED BY.\nSuch intrepid Christian warriors going after Atwood\u2019s Utopian vision!\n\n The religious group People of Praise did not inspire The Handmaid's Tale, Vox and National Review confirm twitter.com/i/events/13098\u2026",
"html": "Not inspired. INSPIRED BY.\nSuch intrepid Christian warriors going after Atwood\u2019s Utopian vision!\n\n The religious group People of Praise did not inspire The Handmaid's Tale, Vox and National Review confirm <a href=\"https://twitter.com/i/events/1309861985400401921\">twitter.com/i/events/13098\u2026</a>"
},
"author": {
"type": "card",
"name": "jk",
"url": "https://twitter.com/karabaic",
"photo": "https://pbs.twimg.com/profile_images/1256785873384861696/QfRzUvne.jpg"
},
"post-type": "note",
"_id": "15094575",
"_source": "2773"
}
I am halfway through the Enola Holmes film on netflix and I will tell you that apparently I desperately needed an Edwardian teenager suffragette coming-of-age drama with train fight scenes in bustles + corsets.
{
"type": "entry",
"published": "2020-09-27T18:01:12+00:00",
"url": "https://twitter.com/anomalily/status/1310278332420825088",
"photo": [
"https://pbs.twimg.com/media/Ei8LLk9VoAA7gR5.jpg"
],
"content": {
"text": "I am halfway through the Enola Holmes film on netflix and I will tell you that apparently I desperately needed an Edwardian teenager suffragette coming-of-age drama with train fight scenes in bustles + corsets."
},
"author": {
"type": "card",
"name": "Lillian Karabaic \ud83e\udd44\ud83c\udff3\ufe0f\u200d\ud83c\udf08 BLM",
"url": "https://twitter.com/anomalily",
"photo": "https://pbs.twimg.com/profile_images/1123802400731664385/dsHQG1nZ.jpg"
},
"post-type": "photo",
"_id": "15093479",
"_source": "2773"
}
She is so cute and so tired
{
"type": "entry",
"published": "2020-09-27T17:41:12+00:00",
"url": "https://twitter.com/anomalily/status/1310273297301479425",
"photo": [
"https://pbs.twimg.com/media/Ei8GnjZU0AA-UaE.jpg",
"https://pbs.twimg.com/media/Ei8GnjYU8AArCsQ.jpg",
"https://pbs.twimg.com/media/Ei8GnjZU0AExes7.jpg"
],
"content": {
"text": "She is so cute and so tired"
},
"author": {
"type": "card",
"name": "Lillian Karabaic \ud83e\udd44\ud83c\udff3\ufe0f\u200d\ud83c\udf08 BLM",
"url": "https://twitter.com/anomalily",
"photo": "https://pbs.twimg.com/profile_images/1123802400731664385/dsHQG1nZ.jpg"
},
"post-type": "photo",
"_id": "15093168",
"_source": "2773"
}
BRAINDANCE is... incredible! BRAINDANCE is... boundless; eclectic; entertaining; rephreshing; fulfilling; wholehearted; sensual; stimulating; bold; unconventional; real; imaginary; visionary; essential; debonair... BRAINDANCE is unique!
{
"type": "entry",
"published": "2020-09-27T17:32:45+00:00",
"url": "https://twitter.com/matthewmcvickar/status/1310271169497460738",
"photo": [
"https://pbs.twimg.com/media/Ei8EqO6UcAAjBIR.jpg"
],
"content": {
"text": "BRAINDANCE is... incredible! BRAINDANCE is... boundless; eclectic; entertaining; rephreshing; fulfilling; wholehearted; sensual; stimulating; bold; unconventional; real; imaginary; visionary; essential; debonair... BRAINDANCE is unique!"
},
"author": {
"type": "card",
"name": "Matthew McVickar",
"url": "https://twitter.com/matthewmcvickar",
"photo": "https://pbs.twimg.com/profile_images/1082744131414155264/Y6nU3C3a.jpg"
},
"post-type": "photo",
"_id": "15092869",
"_source": "2773"
}
Tl;Dr: FrAuD, LeT’s TrY MaSsIvE FrAuD!
#MAGA2020
How Donald Trump, facing financial ruin, sought control of his elderly father’s estate and ignited an epic family … washingtonpost.com/graphics/2020/…
{
"type": "entry",
"published": "2020-09-27T16:12:22+00:00",
"url": "https://twitter.com/karabaic/status/1310250942474776577",
"content": {
"text": "Tl;Dr: FrAuD, LeT\u2019s TrY MaSsIvE FrAuD!\n\n#MAGA2020\n\nHow Donald Trump, facing financial ruin, sought control of his elderly father\u2019s estate and ignited an epic family \u2026 washingtonpost.com/graphics/2020/\u2026",
"html": "Tl;Dr: FrAuD, LeT\u2019s TrY MaSsIvE FrAuD!\n\n<a href=\"https://twitter.com/search?q=%23MAGA2020\">#MAGA2020</a>\n\nHow Donald Trump, facing financial ruin, sought control of his elderly father\u2019s estate and ignited an epic family \u2026 <a href=\"https://www.washingtonpost.com/graphics/2020/politics/donald-trump-father-will/\">washingtonpost.com/graphics/2020/\u2026</a>"
},
"author": {
"type": "card",
"name": "jk",
"url": "https://twitter.com/karabaic",
"photo": "https://pbs.twimg.com/profile_images/1256785873384861696/QfRzUvne.jpg"
},
"post-type": "note",
"_id": "15091186",
"_source": "2773"
}
Rest like no one is watching during eternal Caturday.
{
"type": "entry",
"published": "2020-09-27T11:14:41-0400",
"url": "https://martymcgui.re/2020/09/27/111441/",
"category": [
"caturday"
],
"video": [
"https://media.martymcgui.re/d9/9c/a5/99/f6ee415e45ca9e805ef4d6b3db356a0e66e614d832a94a1cda8c9262.mov"
],
"content": {
"text": "Rest like no one is watching during eternal Caturday.",
"html": "<p>Rest like no one is watching during eternal Caturday.</p>"
},
"author": {
"type": "card",
"name": "Marty McGuire",
"url": "https://martymcgui.re/",
"photo": "https://martymcgui.re/images/logo.jpg"
},
"post-type": "video",
"_id": "15091070",
"_source": "175"
}
As opposed to the current situation, private schooled by functioning alcoholics
twitter.com/ruth_a_buzzi/s…
In 20 years America will be under the control of people who were home-schooled by day drinkers
{
"type": "entry",
"published": "2020-09-27T15:29:29+00:00",
"url": "https://twitter.com/karabaic/status/1310240150597693441",
"quotation-of": "https://twitter.com/Ruth_A_Buzzi/status/1310220601563533318",
"content": {
"text": "As opposed to the current situation, private schooled by functioning alcoholics\ntwitter.com/ruth_a_buzzi/s\u2026",
"html": "As opposed to the current situation, private schooled by functioning alcoholics\n<a href=\"https://twitter.com/ruth_a_buzzi/status/1310220601563533318\">twitter.com/ruth_a_buzzi/s\u2026</a>"
},
"author": {
"type": "card",
"name": "jk",
"url": "https://twitter.com/karabaic",
"photo": "https://pbs.twimg.com/profile_images/1256785873384861696/QfRzUvne.jpg"
},
"post-type": "note",
"refs": {
"https://twitter.com/Ruth_A_Buzzi/status/1310220601563533318": {
"type": "entry",
"published": "2020-09-27T14:11:48+00:00",
"url": "https://twitter.com/Ruth_A_Buzzi/status/1310220601563533318",
"content": {
"text": "In 20 years America will be under the control of people who were home-schooled by day drinkers"
},
"author": {
"type": "card",
"name": "RUTH BUZZI",
"url": "https://twitter.com/Ruth_A_Buzzi",
"photo": "https://pbs.twimg.com/profile_images/1274582919697358849/GyEoiNZN.jpg"
},
"post-type": "note"
}
},
"_id": "15090512",
"_source": "2773"
}
Type the year you turned 10 into the gif bar: twitter.com/sandi/status/1…
Type the year you turned 10 into the gif bar: twitter.com/_theghettomonk…
{
"type": "entry",
"published": "2020-09-27T15:07:04+00:00",
"url": "https://twitter.com/jaredcwhite/status/1310234509510541314",
"video": [
"https://video.twimg.com/tweet_video/Ei7jVe0U0AAAImH.mp4"
],
"quotation-of": "https://twitter.com/Sandi/status/1310212728913563648",
"content": {
"text": "Type the year you turned 10 into the gif bar: twitter.com/sandi/status/1\u2026",
"html": "Type the year you turned 10 into the gif bar: <a href=\"https://twitter.com/sandi/status/1310212728913563648\">twitter.com/sandi/status/1\u2026</a>"
},
"author": {
"type": "card",
"name": "Jared White",
"url": "https://twitter.com/jaredcwhite",
"photo": "https://pbs.twimg.com/profile_images/1300145786466959360/mfgpyZb8.jpg"
},
"post-type": "video",
"refs": {
"https://twitter.com/Sandi/status/1310212728913563648": {
"type": "entry",
"published": "2020-09-27T13:40:31+00:00",
"url": "https://twitter.com/Sandi/status/1310212728913563648",
"video": [
"https://video.twimg.com/tweet_video/Ei7Ph8sXsAElUE0.mp4"
],
"content": {
"text": "Type the year you turned 10 into the gif bar: twitter.com/_theghettomonk\u2026",
"html": "Type the year you turned 10 into the gif bar: <a href=\"https://twitter.com/_theghettomonk/status/1310211552037998592\">twitter.com/_theghettomonk\u2026</a>"
},
"author": {
"type": "card",
"name": "Sandi Villarreal",
"url": "https://twitter.com/Sandi",
"photo": "https://pbs.twimg.com/profile_images/845105360713240576/0wlwycMh.jpg"
},
"post-type": "video"
}
},
"_id": "15090149",
"_source": "2773"
}
I think that a lot of the public parking space should be built with public housing units either above it or in a way such that the vertical space there could be used. It’s like just empty when cars aren’t there.
{
"type": "entry",
"published": "2020-09-26T22:58:00.00000-07:00",
"url": "https://v2.jacky.wtf/post/91eb7709-687c-4916-8d7e-88ca84abb581",
"content": {
"text": "I think that a lot of the public parking space should be built with public housing units either above it or in a way such that the vertical space there could be used. It\u2019s like just empty when cars aren\u2019t there.",
"html": "<p>I think that a lot of the public parking space should be built with public housing units either above it or in a way such that the vertical space there could be used. It\u2019s like just empty when cars aren\u2019t there.</p>"
},
"author": {
"type": "card",
"name": "",
"url": "https://v2.jacky.wtf",
"photo": null
},
"post-type": "note",
"_id": "15083350",
"_source": "1886"
}
I think I’ve asked this before but I can’t find my answers. Has anyone used a service that manages a digital “library” of all of the games you own? Preferably with sync into game systems (Xbox, Steam and https://itch.io/ namely for me).
{
"type": "entry",
"published": "2020-09-26T20:00:45.09806-07:00",
"url": "https://v2.jacky.wtf/post/db361335-c8ea-49a1-953c-e195625ec47f",
"content": {
"text": "I think I\u2019ve asked this before but I can\u2019t find my answers. Has anyone used a service that manages a digital \u201clibrary\u201d of all of the games you own? Preferably with sync into game systems (Xbox, Steam and https://itch.io/ namely for me).",
"html": "<p>I think I\u2019ve asked this before but I can\u2019t find my answers. Has anyone used a service that manages a digital \u201clibrary\u201d of all of the games you own? Preferably with sync into game systems (Xbox, Steam and <a href=\"https://itch.io/\">https://itch.io/</a> namely for me).</p>"
},
"author": {
"type": "card",
"name": "",
"url": "https://v2.jacky.wtf",
"photo": null
},
"post-type": "note",
"_id": "15083351",
"_source": "1886"
}
Imagine a world where CalDav and GroupDav was more of a thing so vendor monopolization wouldn’t have been a thing. Where I could share a calendar and give one control without them having to be using a particular service.
{
"type": "entry",
"published": "2020-09-26T19:50:24.21085-07:00",
"url": "https://v2.jacky.wtf/post/79a114ce-6949-43e2-90e0-cd2d38fd27db",
"content": {
"text": "Imagine a world where CalDav and GroupDav was more of a thing so vendor monopolization wouldn\u2019t have been a thing. Where I could share a calendar and give one control without them having to be using a particular service.",
"html": "<p>Imagine a world where CalDav and GroupDav was more of a thing so vendor monopolization wouldn\u2019t have been a thing. Where I could share a calendar and give one control without them having to be using a particular service.</p>"
},
"author": {
"type": "card",
"name": "",
"url": "https://v2.jacky.wtf",
"photo": null
},
"post-type": "note",
"_id": "15083352",
"_source": "1886"
}
Fifty. Two. To. Ten.
52-10!
I’ve been a ‘Cane since the 80’s, and this is the most dominant win I’ve ever seen in the rivalry.
Love it.
{
"type": "entry",
"published": "2020-09-27T05:29:39+00:00",
"url": "https://twitter.com/cleverdevil/status/1310089196799815680",
"content": {
"text": "Fifty. Two. To. Ten. \n\n52-10!\n\nI\u2019ve been a \u2018Cane since the 80\u2019s, and this is the most dominant win I\u2019ve ever seen in the rivalry.\n\nLove it."
},
"author": {
"type": "card",
"name": "Jonathan LaCour",
"url": "https://twitter.com/cleverdevil",
"photo": "https://pbs.twimg.com/profile_images/744804831064317952/W-gMo7AO.jpg"
},
"post-type": "note",
"_id": "15081933",
"_source": "2773"
}
{
"type": "entry",
"published": "2020-09-27T03:21:19+00:00",
"url": "https://twitter.com/cleverdevil/status/1310056900378066947",
"quotation-of": "https://twitter.com/CanesFootball/status/1310055048299401218",
"content": {
"text": "Fiddy burger!"
},
"author": {
"type": "card",
"name": "Jonathan LaCour",
"url": "https://twitter.com/cleverdevil",
"photo": "https://pbs.twimg.com/profile_images/744804831064317952/W-gMo7AO.jpg"
},
"post-type": "note",
"refs": {
"https://twitter.com/CanesFootball/status/1310055048299401218": {
"type": "entry",
"published": "2020-09-27T03:13:57+00:00",
"url": "https://twitter.com/CanesFootball/status/1310055048299401218",
"content": {
"text": "\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54\ud83c\udf54"
},
"author": {
"type": "card",
"name": "Canes F\ud83d\ude37\ud83d\ude37tball",
"url": "https://twitter.com/CanesFootball",
"photo": "https://pbs.twimg.com/profile_images/1298634783044636673/Em3wDadY.jpg"
},
"post-type": "note"
}
},
"_id": "15080492",
"_source": "2773"
}
Converting Your WordPress Theme for Microformats 2 Part 2: di5.us/b/yV
{
"type": "entry",
"published": "2020-09-27T02:31:19+00:00",
"url": "https://twitter.com/dshanske/status/1310044319265566720",
"content": {
"text": "Converting Your WordPress Theme for Microformats 2 Part 2: di5.us/b/yV",
"html": "Converting Your WordPress Theme for Microformats 2 Part 2: <a href=\"https://di5.us/b/yV\">di5.us/b/yV</a>"
},
"author": {
"type": "card",
"name": "David Shanske",
"url": "https://twitter.com/dshanske",
"photo": "https://pbs.twimg.com/profile_images/945095985340080128/oHe8j2na.jpg"
},
"post-type": "note",
"_id": "15079778",
"_source": "2773"
}
{
"type": "entry",
"published": "2020-09-26T22:31:06-04:00",
"url": "https://david.shanske.com/2020/09/26/converting-your-wordpress-theme-for-microformats-2-part-2/",
"syndication": [
"https://news.indieweb.org/en/david.shanske.com/2020/09/26/converting-your-wordpress-theme-for-microformats-2-part-2/",
"https://twitter.com/dshanske/status/1310044319265566720",
"https://micro.blog/dshanske/10321960"
],
"name": "Converting Your WordPress Theme for Microformats 2 Part 2",
"content": {
"text": "Okay, so four years after I wrote how to start Converting Your WordPress Theme for Microformats 2, I\u2019m back with Part 2.\nFirst, four years later, we need to recap, update, and expand what we discussed last time.\nBefore you start, you need to clean up two very simple things.\n\u00a0Don\u2019t style any Microformats Classes. WordPress commonly supports classic microformats. WordPress actually adds hentry, the predecessor to h-entry, into every single post in the post_class filter. So, you want to be able to supplement, replace, or fix Microformats classes without changing the look of your theme. So if you are updating a theme that already does this, add a styling class and change your CSS to do that. For example, I add entry alongside hentry and rewrite all the CSS to style entry, then I can take hentry out where it shouldn\u2019t be.\nSomeone years ago decided to add hfeed to the header file of their theme and everyone copied it. hfeed indicates a page is a feed\u2026which means it contains multiple entries(date archive, author archive, main posts page, etc). This should therefore not appear on a single page\u2026so if it does, take it out.\nWhere do you start?\nAdd h-entry and h-feed in the proper places. See Part 1 for some sample code on how to do that using the body_class and post_class filters. You could also add it manually by surrounding your post, class=\"h-entry\", and surrounding all the posts in an archive/feed page with an element that has class=\"h-feed\" Congratulations, you\u2019ve now marked up your posts as posts and your feeds as feeds.\nNow that we\u2019ve marked up feeds and posts, we want to get down deeper\u2026namely, inside your posts. We want to mark up things like author, publish date, etc.\nIn most themes, time is already marked up, something like this, with an HTML5 time element. The full time is present in ISO8601 format, with the timezone offset for your site, and inside the tag is the human readable one.\n<time datetime=\"2016-06-22T23:52:09-04:00\">June 22, 2016</time>\nYou get two times per post..the published time and the updated time.\u00a0 Many themes have the updated time visually hidden, but available for parsing. If you do not have a fully formatted timestamp in datetime, you should do so. Positively, since WordPress 5.3, the offset is properly set based on your site settings, where previously you had to edit the theme to get this. The displayed time is up to you.\nAdd class=\"dt-published\" to the publish time of the post, and class=\"dt-updated\" to the updated/modified time of the post.\nWe also, most importantly, want to make sure the author is marked up correctly. That should include, at minimum, the author\u2019s name, if not URL and photo. All author properties should be surrounded by an element that has class=\"p-author h-card\". The photo should have class=\"u-photo\", indicating it is a representative photo of the element it is inside\u2026the h-card. H-cards represent people, organizations, or places. By adding the p-author, we indicate that this person is the author of the piece. The p- tells the parser that whatever text is inside here is the value of the author property. You can also add a url for the author website, marking it class=\"u-url\" which states it is the URL that represents the containing element\u2026the h-card/author property.\nHere is a simplified example of what this might look like\u2026\n<div class=\"h-entry\">\n<time class=\"dt-published\" datetime=\"2016-06-22T23:52:09-04:00\">June 22, 2016</time>\n<span class=\"p-author h-card\"><a href=\"https://joebloggs.com\">Joe Bloggs</a><img class=\"u-photo\" src=\"https://joebloggs.com/avatar.jpg\" /></span>\n</div>\nSo, if we run the new file through a Microformats parser(I like php.microformats.io), we\u2019d get a nice output\u2026\n{\n \"type\": [\n \"h-entry\"\n ],\n \"properties\": {\n \"published\": [\n \"2016-06-22T23:52:09-04:00\"\n ],\n \"author\": [\n {\n \"type\": [\n \"h-card\"\n ],\n \"properties\": {\n \"photo\": [\n \"https://joebloggs.com/avatar.jpg\"\n ],\n \"name\": [\n \"Joe Bloggs\"\n ]\n },\n \"value\": \"Joe Bloggs\"\n }\n ]\n }\n}\nLooks pretty good\u2026except no content\u2026 Content is a bit more complicated, because WordPress stores content in the database, but when outputting it, puts it through a filter called \u201cthe_content\u201d, which many plugins use to add things that aren\u2019t content to the post.\nContent is supposed to be wrapped in an element with the class=\"e-content\". If we wrap the output of the_content, we might incorporate things from other plugins.\nWhile it is by no means the most reliable way, my solution is to use the same content filter, but at the first priority, wrapping what original came out of post_content before all the other items.\nYou can do the same with the summary, if it exists, wrapping it in p-summary.\nfunction add_econtent( $content ) {\n // Do Not Add this is it is a Feed.\n if ( is_feed() ) {\n return $content;\n }\n $wrap = '<div class=\"e-content\">';\n // If there is no content, do not bother.\n if ( empty( $content ) ) {\n return $content;\n }\n return $wrap . $content . '</div>';\n}\nadd_filter( 'the_content', 'add_econtent', 1 ); \n\nfunction add_psummary( $excerpt ) {\n // Do Not Add this is it is a Feed.\n if ( is_feed() ) {\n return $excerpt;\n }\n $wrap = '<div class=\"p-summary\">';\n // If there is no excerpt, do not bother.\n if ( empty( $excerpt ) ) {\n return $excerpt;\n }\n return $wrap . $excerpt . '</div>';\n}\nadd_filter( 'the_excerpt', 'add_psummary', 1 );\nIn the next part, we\u2019ll dive even more into the weeds, talking about other classic microformats and rel-values and what to do with them. Probably before 2024.",
"html": "Okay, so four years after I wrote how to start <a href=\"https://david.shanske.com/2016/06/22/converting-wordpress-themes-microformats-2-part-1/\">Converting Your WordPress Theme for Microformats 2</a>, I\u2019m back with Part 2.\n<p>First, four years later, we need to recap, update, and expand what we discussed last time.</p>\n<p>Before you start, you need to clean up two very simple things.</p>\n<ul><li>\u00a0Don\u2019t style any Microformats Classes. WordPress commonly supports <a href=\"https://microformats.org/wiki/hentry\">classic microformats</a>. WordPress actually adds hentry, the predecessor to h-entry, into every single post in the post_class filter. So, you want to be able to supplement, replace, or fix Microformats classes without changing the look of your theme. So if you are updating a theme that already does this, add a styling class and change your CSS to do that. For example, I add entry alongside hentry and rewrite all the CSS to style entry, then I can take hentry out where it shouldn\u2019t be.</li>\n<li>Someone years ago decided to add hfeed to the header file of their theme and everyone copied it. hfeed indicates a page is a feed\u2026which means it contains multiple entries(date archive, author archive, main posts page, etc). This should therefore not appear on a single page\u2026so if it does, take it out.</li>\n</ul><p><strong>Where do you start?</strong></p>\n<p style=\"padding-left:40px;\">Add h-entry and h-feed in the proper places. See <a href=\"https://david.shanske.com/2016/06/22/converting-wordpress-themes-microformats-2-part-1/\">Part 1 </a>for some sample code on how to do that using the body_class and post_class filters. You could also add it manually by surrounding your post, <code>class=\"h-entry\"</code>, and surrounding all the posts in an archive/feed page with an element that has <code>class=\"h-feed\"</code> Congratulations, you\u2019ve now marked up your posts as posts and your feeds as feeds.</p>\n<p>Now that we\u2019ve marked up feeds and posts, we want to get down deeper\u2026namely, inside your posts. We want to mark up things like author, publish date, etc.</p>\n<p style=\"padding-left:40px;\">In most themes, time is already marked up, something like this, with an HTML5 time element. The full time is present in ISO8601 format, with the timezone offset for your site, and inside the tag is the human readable one.</p>\n<pre><<span>time</span> <span>datetime</span>=\"2016-06-22T23:52:09-04:00\">June 22, 2016</<span>time</span>></pre>\n<p style=\"padding-left:40px;\">You get two times per post..the published time and the updated time.\u00a0 Many themes have the updated time visually hidden, but available for parsing. If you do not have a fully formatted timestamp in datetime, you should do so. Positively, since WordPress 5.3, the offset is properly set based on your site settings, where previously you had to edit the theme to get this. The displayed time is up to you.</p>\n<p style=\"padding-left:40px;\">Add <code>class=\"dt-published\"</code> to the publish time of the post, and <code>class=\"dt-updated\"</code> to the updated/modified time of the post.</p>\n<p>We also, most importantly, want to make sure the author is marked up correctly. That should include, at minimum, the author\u2019s name, if not URL and photo. All author properties should be surrounded by an element that has <code>class=\"p-author h-card\"</code>. The photo should have <code>class=\"u-photo\"</code>, indicating it is a representative photo of the element it is inside\u2026the h-card. H-cards represent people, organizations, or places. By adding the p-author, we indicate that this person is the author of the piece. The p- tells the parser that whatever text is inside here is the value of the author property. You can also add a url for the author website, marking it <code>class=\"u-url\"</code> which states it is the URL that represents the containing element\u2026the h-card/author property.</p>\n<p>Here is a simplified example of what this might look like\u2026</p>\n<pre><div class=\"h-entry\">\n<time class=\"dt-published\" datetime=\"2016-06-22T23:52:09-04:00\">June 22, 2016</time>\n<span class=\"p-author h-card\"><a href=\"https://joebloggs.com\">Joe Bloggs</a><img class=\"u-photo\" src=\"https://joebloggs.com/avatar.jpg\" /></span>\n</div></pre>\n<p>So, if we run the new file through a Microformats parser(I like <a href=\"https://php.microformats.io\">php.microformats.io</a>), we\u2019d get a nice output\u2026</p>\n<pre>{\n \"type\": [\n \"h-entry\"\n ],\n \"properties\": {\n \"published\": [\n \"2016-06-22T23:52:09-04:00\"\n ],\n \"author\": [\n {\n \"type\": [\n \"h-card\"\n ],\n \"properties\": {\n \"photo\": [\n \"https://joebloggs.com/avatar.jpg\"\n ],\n \"name\": [\n \"Joe Bloggs\"\n ]\n },\n \"value\": \"Joe Bloggs\"\n }\n ]\n }\n}</pre>\n<p>Looks pretty good\u2026except no content\u2026 Content is a bit more complicated, because WordPress stores content in the database, but when outputting it, puts it through a filter called \u201cthe_content\u201d, which many plugins use to add things that aren\u2019t content to the post.</p>\n<p>Content is supposed to be wrapped in an element with the <code>class=\"e-content\"</code>. If we wrap the output of the_content, we might incorporate things from other plugins.</p>\n<p>While it is by no means the most reliable way, my solution is to use the same content filter, but at the first priority, wrapping what original came out of post_content before all the other items.</p>\n<p>You can do the same with the summary, if it exists, wrapping it in p-summary.</p>\n<pre>function add_econtent( $content ) {\n // Do Not Add this is it is a Feed.\n if ( is_feed() ) {\n return $content;\n }\n $wrap = '<span><div class=\"e-content\"></span>';\n // If there is no content, do not bother.\n if ( empty( $content ) ) {\n return $content;\n }\n return $wrap . $content . '<span></div>'</span>;\n}\nadd_filter( 'the_content', 'add_econtent', 1 ); \n\nfunction add_psummary( $excerpt ) {\n // Do Not Add this is it is a Feed.\n if ( is_feed() ) {\n return $excerpt;\n }\n $wrap = '<span><div class=\"p-summary\"></span>';\n // If there is no excerpt, do not bother.\n if ( empty( $excerpt ) ) {\n return $excerpt;\n }\n return $wrap . $excerpt . '<span></div>'</span>;\n}\nadd_filter( 'the_excerpt', 'add_psummary', 1 );</pre>\n<p>In the next part, we\u2019ll dive even more into the weeds, talking about other classic microformats and rel-values and what to do with them. Probably before 2024.</p>"
},
"author": {
"type": "card",
"name": "David Shanske",
"url": "https://david.shanske.com/",
"photo": "https://david.shanske.com/avatar/dshanske?s=49"
},
"post-type": "article",
"_id": "15079684",
"_source": "1905"
}
Watching the sunset (@ The Place in Portland, OR) swarmapp.com/c/gARtEglRHn5
{
"type": "entry",
"published": "2020-09-27T02:22:08+00:00",
"url": "https://twitter.com/karabaic/status/1310042006484398082",
"content": {
"text": "Watching the sunset (@ The Place in Portland, OR) swarmapp.com/c/gARtEglRHn5",
"html": "Watching the sunset (@ The Place in Portland, OR) <a href=\"https://www.swarmapp.com/c/gARtEglRHn5\">swarmapp.com/c/gARtEglRHn5</a>"
},
"author": {
"type": "card",
"name": "jk",
"url": "https://twitter.com/karabaic",
"photo": "https://pbs.twimg.com/profile_images/1256785873384861696/QfRzUvne.jpg"
},
"post-type": "note",
"_id": "15079607",
"_source": "2773"
}
Stupid broadcast TV rules are preventing me from watching the game from the beginning on YouTube TV while I am traveling. So dumb. I recorded it why can’t I watch it until its complete?
Oh well, at least we’re absolutely destroying them. I’ll watch the second half first I guess.
{
"type": "entry",
"published": "2020-09-27T01:49:54+00:00",
"url": "https://twitter.com/cleverdevil/status/1310033894805135360",
"content": {
"text": "Stupid broadcast TV rules are preventing me from watching the game from the beginning on YouTube TV while I am traveling. So dumb. I recorded it why can\u2019t I watch it until its complete?\n\nOh well, at least we\u2019re absolutely destroying them. I\u2019ll watch the second half first I guess."
},
"author": {
"type": "card",
"name": "Jonathan LaCour",
"url": "https://twitter.com/cleverdevil",
"photo": "https://pbs.twimg.com/profile_images/744804831064317952/W-gMo7AO.jpg"
},
"post-type": "note",
"_id": "15079245",
"_source": "2773"
}
I think Miami might just cover. #BeatFSU
{
"type": "entry",
"published": "2020-09-27T01:45:15+00:00",
"url": "https://twitter.com/cleverdevil/status/1310032725605195776",
"content": {
"text": "I think Miami might just cover. #BeatFSU",
"html": "I think Miami might just cover. <a href=\"https://twitter.com/search?q=%23BeatFSU\">#BeatFSU</a>"
},
"author": {
"type": "card",
"name": "Jonathan LaCour",
"url": "https://twitter.com/cleverdevil",
"photo": "https://pbs.twimg.com/profile_images/744804831064317952/W-gMo7AO.jpg"
},
"post-type": "note",
"_id": "15079029",
"_source": "2773"
}