I’d like to keep track of what I’ve written on forums in case those places disappear. Are there any methods you recommend on how to incorporate Obsidian with forum posts and replies?
I could start writing in Obsidian first and then copy and paste the content into the forum, but perhaps there is a tool that can download the contents of the URL or something else.
1 Like
I’m not using this, but just as I read I think is a good idea, that Obsidian would recognize this…

… as an embedded link and showed the post! So maybe a “feature request” 
This one works, but it’s just not the same…
<iframe src="https://forum.obsidian.md/t/what-is-the-best-way-to-use-obsidian-for-forum-posts-and-replies/90604" width="100%"></iframe>
But yes, on the other hand, embedding doesn’t work if post disappear 
Cheers, Marko
Obsidian Web Clipper offers some template variables and filters.
Selector variables
Selector variables allow you to extract text content from elements on the page using the syntax {{selector:cssSelector?attribute}}
, where ?attribute
is optional. If no attribute is specified, the text content of the element is returned. You can also use {{selectorHtml:cssSelector}}
to get the HTML content of the element. Selector variables tend to work best on a specific website or set of websites that have consistent HTML structure.
{{selector:h1}}
returns text content of the first h1
element on the page.
{{selector:.author}}
returns text content of the first .author
element on the page.
{{selector:img.hero?src}}
returns the src
attribute of the first image with class hero
.
{{selector:a.main-link?href}}
returns the href
attribute of the first anchor tag with class main-link
.
{{selectorHtml:body|markdown}}
returns the entire HTML of the body
element, converted to Markdown using the markdown
filter.
- Nested CSS selectors and combinators are supported if you need more specificity.
- If multiple elements match the selector, an array is returned, which you can process with Arrays and objects filters like
join
or map
.
There’s no such tool that could process every web page to a desirable form but rather you need to code a special template for each website. Obsidian Web Clipper offers import/export of templates using .json
so you might want to ask clipper templates for specific websites.
1 Like
@blue_emperor got a good point! For me, Obsidian Web Clipper is something new and haven’t played a lot with it. Now you trigger me
and must admit it was fun!
{
"schemaVersion": "0.1.0",
"name": "Obsidian Forum",
"behavior": "create",
"noteContentFormat": "### Forum note\n**Date & Time:** {{date|date:\"YYYY-MM-DD HH:mm\"}}\n**Category:** {{selector:.user-stream .user-stream-item__details .badge-category__wrapper|first}}\n\n---\n\n{{selectorHtml:.user-stream .excerpt|first|markdown}}\n\n---\n\n### Personal note\n",
"properties": [
{
"name": "Date",
"value": "{{date|date:\\\"YYYY-MM-DD\\\"}}",
"type": "date"
},
{
"name": "Category",
"value": "{{selector:.user-stream .user-stream-item__details .badge-category__wrapper|first}}",
"type": "text"
},
{
"name": "Tags",
"value": "Post, Reply",
"type": "multitext"
}
],
"triggers": [
"https://forum.obsidian.md/u/[change-to-your-username]/activity"
],
"noteNameFormat": "{{date|date:\"YYYY-MM-DD\"}} - {{selector:.user-stream .stream-topic-title|first}}",
"path": "Obsidian Forum Activities"
}
So the idea is, that after posting, you go to your activity tab in a profile https://forum.obsidian.md/u/[change-to-your-username]/activity
, expand the last activity and run clipper. In the JSON file, there’s a “trigger”, which preselect this template when you’re on your activity page.
My first template, and definitely there’s plenty of space for improvement. And yes, just as an idea (and for me to learn and play), you can do whatever you need.
Cheers, Marko
1 Like