I publish Obsidian content to my online knowledge base using [[Obsidian Publish]] and I publish selected guides on my [blog](https://eriktuck.com) and on [[Medium]]. My blog simply duplicates my Medium posts. > [!NOTE] Why Medium and a blog? > Cross-posting on Medium and my blog has a number of purposes: > - Prevents loss of articles in the unlikely event that Medium fails > - Makes it easier for my audience to find my content on my blog > - Allows sharing paywalled stories for free I'm still exploring better ways to more seamlessly publish content from Obsidian to my blog and Medium, as the process described below can be tedious. ## step 1: draft in Obsidian - Create a new file in the `guides` folder and set the property `draft` to True. ## step 2: publish with Obsidian Next, I publish with Obsidian Publish (use `Alt + P`). Because [[DataView]] is not supported by Obsidian Publish (yet), I have a process to [[write DataView query results as pure Markdown]] for key notes (e.g., my [[book shelf]]). I exclude the following folders from Publish (using the Publish filter settings). - `+` - `archive` - `per` - `writing` Manually exclude any `draft=True` guides still in the works. Make sure to also delete notes when publishing to handle file name changes and remove deleted files. ## step 3: publish on Medium Use [Markdown to Medium](https://markdown-to-medium.surge.sh/) to convert to Medium format. Copy/paste into a new Medium post. Some re-formatting is required including - Delete empty lines - Convert all callouts to Quotes - Set syntax for code blocks - Ensure spaces in code blocks were not read as two code blocks Before publishing, consider submitting to a publication. Leave as draft until accepted. Try another publication if the first isn't interested. When publishing, check the box to monetize posts and monitor the post over time. See [[tips for monetizing posts on Medium]] for more actions to help make money from the Medium Partner Program. ## step 4: publish on blog - Run the `copy_guides.py` script in project `obsidian-reader` ```bash mamba workon obsidian-reader python scripts/copy_guides.py ``` - Commit the changes in project `my-website/hugo-main-site` ```bash git add -A git commit -m "publish blog post" git push origin main ``` > [!NOTE] > While I was still using WordPress, I tried the [[Obsidian WordPress plugin]] to upload from Obsidian directly to WordPress. It wasn't great. The [[Copy document as HTML]] plugin gets the formatting closer to WordPress than this plugin, especially for callouts. This frustration ultimately led me to develop my own blog with Hugo.