Multipage Blog Dev Notes in split format
|
|
{{TableOfContents}}
| |
| Here are things I am working on finishing for the MultipageBlog feature. | Here are things I am working on finishing for the MultipageBlog feature. | |
| Here are the test blogs: * test:TestBlog - single-page * test:TestProcessorMultipageBlog - multi-page | Here are the test blogs: * [[https://bird.org/test/TestBlog|test:TestBlog]] - single-page * [[http://bird.org/test/TestProcessorMultipageBlog|test:TestProcessorMultipageBlog]] - multi-page | |
| Here is a sample personal blog (that is multi-page), see: https://bird.org/tbwiki/TimsBlog | Here is a sample personal blog (that is multi-page), see: [[https://bird.org/tbwiki/TimsBlog]] | |
To Do [edit section] | = To Do = * Layout: - Make it look like Jeff Geerling's blog - **1** ''' ''create preview page'' ''' - blog page is a single-column list of shortened blog entries - link takes you to an individual blog entry - entry page: - title, date, content, comments, search bar * Housekeeping: - make a sidebar page for the test blog - define default sidebar (show most recent 3 blog entries as a linked list, excluding the current entry) | |
| * Features: - make a default sidebar, if no sidebar page is provided - don't show the entry edit link if user does not match the entry author | |
| - create comment section - have each comment be its own page? or all comments on one talk page? - leaning towards each comment its own page - page name would be: comment_for_Test_blog_2025-10-11_22:50:27.11_on_2025-10-12_8:45:23.02 - prefix is comment_for_ - separator is _on_ - all on one page: - page name would be: Talk:Test_blog_2025-10-11_22:50:27.11 - either parse a single page into a complex (threaded) display - or parse multiple pages into a complex (threaded) display | |
| * Fix bugs: - blog entry list shows last entry first and last in list | |
| * Niceties: (nice to have items) - add 'return to Blog' on page showing 'saved' on a page edit - see 'save' action in tbwiki_engine.py - add a 'share' button, with a fixed url for accessing a blog entry in blog context (not using entry number, which will change over time) | |
done [edit section] | == done == * 2025-10-11 - by default, show pages in reverse chronological order * 2025-10-11 - add instructions to Blog entry form - markdown help, and tags field help (use commas for separators) * 2025-10-11 - rename ProcessorBlogMultipage to ProcessorMultipageBlog | |
Features I want the blog to have [edit section] | = Features I want the blog to have = | |
Storage/Format [edit section] | == Storage/Format == * use individual pages for each post * Each page has a header with fixed data fields, and then the blog content * The talk page has * the page name has the format: | |
Layout [edit section] | == Layout == * nicer Blog layout * sidebar with navigation * recent posts * categories * search bar * tags * page with background, layout, blog css | |
| * use graphics instead of characters for navigation arrows * customizable background image | |
Comments [edit section] | == Comments == * support for comments * all-in-one - use talk page, with indentation for nesting | |
| * create add-post form * page schema has title, content, date, tags, id | |
| * navigation to previous and next posts * response area * show threaded responses with "reply" button on each one * response form with "post comment button | |
| * show date, tags, response count | |
| * ability to drag and drop images to upload to wiki | |
Features that are not done yet [edit section] | == Features that are not done yet == | |
Ideas and references [edit section]https://www.jeffgeerling.com/blog/2025/how-much-radiation-can-pi-handle-space * https://borretti.me/article/unbundling-tools-for-thought * https://caseyhandmer.wordpress.com/ * obviously, this is a wordpress blog * https://idlewords.com/ * https://daniel.haxx.se/blog/2025/10/10/ * https://pebblebed.com/blog/kernel-bugs - simple and effective * and https://pebblebed.com/blog | = Ideas and references === Blogs that I like the look of == * https://www.jeffgeerling.com/blog/2025/how-much-radiation-can-pi-handle-space * https://borretti.me/article/unbundling-tools-for-thought * https://caseyhandmer.wordpress.com/ * obviously, this is a wordpress blog * https://idlewords.com/ * https://daniel.haxx.se/blog/2025/10/10/ * https://pebblebed.com/blog/kernel-bugs - simple and effective * and https://pebblebed.com/blog | |
Blog idea resources [edit section]https://borretti.me/article/unbundling-tools-for-thought * https://jekyllrb.com/docs/posts/ * See https://bird.org/tbwiki/Blog_Layouts_and_Features | == Blog idea resources == * (read this first) https://borretti.me/article/unbundling-tools-for-thought * https://jekyllrb.com/docs/posts/ * See https://bird.org/tbwiki/Blog_Layouts_and_Features | |
design details for ProcessorMultipageBlog [edit section] | = design details for ProcessorMultipageBlog = | |
| Here are some details about ProcessorMultipageBlog. | Here are some details about ProcessorMultipageBlog. | |
page names [edit section] | == page names ==blog pages consist of a prefix, and a date and time stamp. | |
| Here are some example page names: * Test_blog_2023-03-31_11:12:34 * Space_blog_2023-04-03_15:21:56 | Here are some example page names: * Test_blog_2023-03-31_11:12:34 * Space_blog_2023-04-03_15:21:56 | |
| Note that '_blog_' is not required. It is a convention to use'_blog_' in the prefix of the blog page name, though. | Note that '_blog_' is not required. It is a convention to use'_blog_' in the prefix of the blog page name, though. | |
discussion page names [edit section] | == discussion page names ==Comments are saved on the talk page for a blog page, and willthus have names like: * Talk:Test_blog_2023-03-31_11:12:34 * Talk:Space_blog_2023-04-03_15:21:56 | |
meta data format [edit section] | == meta data format ==Here is a sample page from a blog, showing the meta-data format. | |
| Note that a page can be edited as a wiki page.{{{#!YellowBox----; Subject: Blog entry title; Date: 2023-03-31_11:12:34; Tags: test, blog, first; Author: tbird----Blog entry content * in tbwiki Markdown!!Hurray!}}} |
Note that a page can be edited as a wiki page.{{{#!YellowBox----; Subject: Blog entry title; Date: 2023-03-31_11:12:34; Tags: test, blog, first; Author: tbird----Blog entry content * in ''tbwiki'' Markdown!!Hurray!}}}
| |
meta data format for discussion pages [edit section] | == meta data format for discussion pages ==Here is a sample page from a blog, showing the discussion meta-data format. | |
| Note that a page can be edited as a wiki page.{{{#!YellowBlockTBD}}} |
Note that a page can be edited as a wiki page.{{{#!YellowBlock'''TBD'''}}}
| |
processor arguments [edit section] | == processor arguments == * prefix=<page_prefix> - a string indicating the prefix for the set of pages that make up the blog * title - blog title * sidebar=<sidebar_page_name> - the name of the wiki page which has the sidebar definition * entries_to_show=x - number of entries to show (default is 5) * show_standalone=1 - show page without wiki decorations * show_edit_link=1 - show a link to edit the entry * background_image - filename of background image * show_entry_list=1 - show a list of entries, rather than the blog itself | |
processor actions [edit section] | == processor actions == * show_entry_form - used to show the edit form for creating a new blog entry * add_entry - used to save a new blog entry * main - show the blog | |
{{Category(Features|Blog)}}
|
Categories: Features|Blog