├── .gitignore ├── README.md ├── example ├── build │ ├── _data.json │ ├── _harp.json │ ├── _layout.jade │ ├── _linkInfo.json │ ├── _partials │ │ ├── comments.jade │ │ └── post.jade │ ├── comments │ │ └── _data.json │ ├── css │ │ └── style.less │ ├── index.jade │ └── posts │ │ ├── 1164.md │ │ ├── about.md │ │ ├── blog.md │ │ ├── clearing-floats.md │ │ ├── edge-case-many-categories.md │ │ ├── edge-case-many-tags.md │ │ ├── edge-case-nested-and-mixed-lists.md │ │ ├── edge-case-no-content.md │ │ ├── edge-case-no-title.md │ │ ├── front-page.md │ │ ├── level-1.md │ │ ├── level-2.md │ │ ├── level-2a.md │ │ ├── level-2b.md │ │ ├── level-3.md │ │ ├── level-3a.md │ │ ├── level-3b.md │ │ ├── lorem-ipsum.md │ │ ├── markup-html-tags-and-formatting.md │ │ ├── markup-image-alignment.md │ │ ├── markup-text-alignment.md │ │ ├── markup-title-with-markup.md │ │ ├── media-twitter-embeds.md │ │ ├── page-a.md │ │ ├── page-b.md │ │ ├── page-image-alignment.md │ │ ├── page-markup-and-formatting.md │ │ ├── page-with-comments-disabled.md │ │ ├── page-with-comments.md │ │ ├── post-format-aside.md │ │ ├── post-format-audio.md │ │ ├── post-format-chat.md │ │ ├── post-format-gallery-tiled.md │ │ ├── post-format-gallery.md │ │ ├── post-format-image-caption.md │ │ ├── post-format-image-linked.md │ │ ├── post-format-image.md │ │ ├── post-format-link.md │ │ ├── post-format-quote.md │ │ ├── post-format-standard.md │ │ ├── post-format-status.md │ │ ├── post-format-video-videopress.md │ │ ├── post-format-video-wordpresstv.md │ │ ├── post-format-video-youtube.md │ │ ├── scheduled.md │ │ ├── template-comments-disabled.md │ │ ├── template-comments.md │ │ ├── template-excerpt-defined.md │ │ ├── template-excerpt-generated.md │ │ ├── template-featured-image-horizontal.md │ │ ├── template-featured-image-vertical.md │ │ ├── template-more-tag.md │ │ ├── template-paginated.md │ │ ├── template-password-protected.md │ │ ├── template-pingbacks-an-trackbacks.md │ │ ├── template-sticky.md │ │ ├── title-should-not-overflow-the-content-area.md │ │ └── title-with-special-characters.md └── theme-unit-test-data.xml ├── index.js ├── package.json ├── templates ├── _layout.jade ├── _partials │ ├── comments.jade │ └── post.jade ├── css │ └── style.less └── index.jade └── wp2harp.js /.gitignore: -------------------------------------------------------------------------------- 1 | ref 2 | test 3 | tmp* 4 | node_modules -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # wp2harp 2 | 3 | First blush at a tool for converting Wordpress XML exports into a 4 | [harp.js](http://harpjs.com/)-ready static site. 5 | 6 | *Experimental!* 7 | 8 | ### Usage 9 | 10 | ```shell 11 | git clone [this repo] 12 | cd wp2harp 13 | npm install 14 | mkdir output 15 | node wp2harp.js example/theme-unit-test-data.xml output 16 | ``` 17 | This converts the included sample XML, and puts the results in `example/build`. 18 | To try it with your own blog, export the XML from **Dashboard > Tools > Export**. 19 | 20 | If you have `harp` installed globally, you can check the results with: 21 | 22 | ```shell 23 | harp server output --port 8080 24 | ``` 25 | 26 | ### Output 27 | 28 | This script fills the build directory with files looking like this: 29 | 30 | ``` 31 | /your-build-folder 32 | _harp.json <-- overall site metadata 33 | _data.json <-- post/page metadata 34 | _linkInfo.json <-- see below 35 | comments/ 36 | _data.json <-- json with all comment data 37 | posts/ 38 | title-1.md <-- one md file for each post or page 39 | title-2.md 40 | ... 41 | index.jade <-- everything below here is boilerplate 42 | _layout.jade static boilerplate for the harp site 43 | css/ 44 | style.less 45 | _partials/ 46 | comments.jade 47 | post.jade 48 | ``` 49 | 50 | Mostly it should be fairly clear what's where. 51 | 52 | > **Note about links:** 53 | In general wordpress blogs use links like 54 | `/?p=123` or `/2015/12/post-title`, whereas static site articles 55 | will generally end with `post-title.html`, and use whatever folder structure 56 | you choose for your site. This probably means that converting from 57 | wordpress to static will break lots of links, which you may want to address 58 | with `.htaccess` redirects, an HTML5 `pushState` router, etc. 59 | To make this easier, this script writes out `_linkInfo.json`, 60 | which isn't used by the harp site, but merely lists up the 61 | old/new URLs you might want to redirect. 62 | 63 | 64 | ### Features 65 | 66 | This script is experimental. Currently it exports harp content which can: 67 | 68 | 1. Display overall site metadata and authors 69 | 2. Show lists of pages and posts 70 | 3. Show post/pages - metadata, post content, and comments 71 | 72 | The script also parses `attachments` and `navItems` from the XML, but doesn't 73 | write out any accompanying data. 74 | Categories and tags are ignored so far, but should be reasonably easy to 75 | hack in if you know what you want to do with them. 76 | 77 | > **Note:** 78 | I couldn't find any documentation of Wordpress's export format, so your 79 | XML dump might well be different from mine. 80 | If the script barfs on you log an issue or send a PR! 81 | 82 | ### Credits: 83 | 84 | by Andy Hall. ISC license, enjoy. 85 | -------------------------------------------------------------------------------- /example/build/_data.json: -------------------------------------------------------------------------------- 1 | { 2 | "wp_posts": { 3 | "1164": { 4 | "slug": "1164", 5 | "title": "Draft", 6 | "link": "http://wpthemetestdata.wordpress.com/?p=1164", 7 | "pubDate": "Tue, 09 Apr 2013 18:20:39 +0000", 8 | "dc:creator": "themedemos", 9 | "guid": "http://wptest.io/demo/?p=922", 10 | "guid:isPermaLink": "false", 11 | "description": "", 12 | "excerpt:encoded": "", 13 | "wp:post_id": "1164", 14 | "wp:post_date": "2013-04-09 11:20:39", 15 | "wp:post_date_gmt": "2013-04-09 18:20:39", 16 | "wp:comment_status": "closed", 17 | "wp:ping_status": "closed", 18 | "wp:post_name": "", 19 | "wp:status": "draft", 20 | "wp:post_parent": "0", 21 | "wp:menu_order": "0", 22 | "wp:post_type": "post", 23 | "wp:post_password": "", 24 | "wp:is_sticky": "0", 25 | "category": { 26 | "content": "post_tag : content-2", 27 | "Unpublished": "category : unpublished" 28 | }, 29 | "wp:postmeta": { 30 | "standard_seo_post_level_layout": "", 31 | "standard_link_url_field": "", 32 | "standard_seo_post_meta_description": "", 33 | "original_post_id": "922", 34 | "_wp_old_slug": "922" 35 | }, 36 | "wp_link_path": "" 37 | }, 38 | "about": { 39 | "slug": "about", 40 | "title": "About The Tests", 41 | "link": "http://wpthemetestdata.wordpress.com/about/", 42 | "pubDate": "Mon, 26 Jul 2010 02:40:01 +0000", 43 | "dc:creator": "themedemos", 44 | "guid": "http://wpthemetestdata.wordpress.com/about/", 45 | "guid:isPermaLink": "false", 46 | "description": "", 47 | "excerpt:encoded": "", 48 | "wp:post_id": "2", 49 | "wp:post_date": "2010-07-25 19:40:01", 50 | "wp:post_date_gmt": "2010-07-26 02:40:01", 51 | "wp:comment_status": "closed", 52 | "wp:ping_status": "closed", 53 | "wp:post_name": "about", 54 | "wp:status": "publish", 55 | "wp:post_parent": "0", 56 | "wp:menu_order": "1", 57 | "wp:post_type": "page", 58 | "wp:post_password": "", 59 | "wp:is_sticky": "0", 60 | "wp:postmeta": { 61 | "_wp_page_template": "default" 62 | }, 63 | "wp_link_path": "" 64 | }, 65 | "lorem-ipsum": { 66 | "slug": "lorem-ipsum", 67 | "title": "Lorem Ipsum", 68 | "link": "http://wpthemetestdata.wordpress.com/lorem-ipsum/", 69 | "pubDate": "Tue, 04 Sep 2007 16:52:50 +0000", 70 | "dc:creator": "themedemos", 71 | "guid": "http://wpthemetestdata.wordpress.com/lorem-ipsum/", 72 | "guid:isPermaLink": "false", 73 | "description": "", 74 | "excerpt:encoded": "", 75 | "wp:post_id": "146", 76 | "wp:post_date": "2007-09-04 09:52:50", 77 | "wp:post_date_gmt": "2007-09-04 16:52:50", 78 | "wp:comment_status": "closed", 79 | "wp:ping_status": "closed", 80 | "wp:post_name": "lorem-ipsum", 81 | "wp:status": "publish", 82 | "wp:post_parent": "0", 83 | "wp:menu_order": "7", 84 | "wp:post_type": "page", 85 | "wp:post_password": "", 86 | "wp:is_sticky": "0", 87 | "wp:postmeta": { 88 | "_wp_page_template": "default" 89 | }, 90 | "wp_link_path": "" 91 | }, 92 | "page-with-comments": { 93 | "slug": "page-with-comments", 94 | "title": "Page with comments", 95 | "link": "http://wpthemetestdata.wordpress.com/about/page-with-comments/", 96 | "pubDate": "Tue, 04 Sep 2007 17:47:47 +0000", 97 | "dc:creator": "themedemos", 98 | "guid": "http://wpthemetestdata.wordpress.com/page-with-comments/", 99 | "guid:isPermaLink": "false", 100 | "description": "", 101 | "excerpt:encoded": "", 102 | "wp:post_id": "155", 103 | "wp:post_date": "2007-09-04 10:47:47", 104 | "wp:post_date_gmt": "2007-09-04 17:47:47", 105 | "wp:comment_status": "open", 106 | "wp:ping_status": "closed", 107 | "wp:post_name": "page-with-comments", 108 | "wp:status": "publish", 109 | "wp:post_parent": "2", 110 | "wp:menu_order": "3", 111 | "wp:post_type": "page", 112 | "wp:post_password": "", 113 | "wp:is_sticky": "0", 114 | "wp:postmeta": { 115 | "_wp_page_template": "default" 116 | }, 117 | "wp_link_path": "about" 118 | }, 119 | "page-with-comments-disabled": { 120 | "slug": "page-with-comments-disabled", 121 | "title": "Page with comments disabled", 122 | "link": "http://wpthemetestdata.wordpress.com/about/page-with-comments-disabled/", 123 | "pubDate": "Tue, 04 Sep 2007 17:48:10 +0000", 124 | "dc:creator": "themedemos", 125 | "guid": "http://wpthemetestdata.wordpress.com/page-with-comments-disabled/", 126 | "guid:isPermaLink": "false", 127 | "description": "", 128 | "excerpt:encoded": "", 129 | "wp:post_id": "156", 130 | "wp:post_date": "2007-09-04 10:48:10", 131 | "wp:post_date_gmt": "2007-09-04 17:48:10", 132 | "wp:comment_status": "closed", 133 | "wp:ping_status": "closed", 134 | "wp:post_name": "page-with-comments-disabled", 135 | "wp:status": "publish", 136 | "wp:post_parent": "2", 137 | "wp:menu_order": "4", 138 | "wp:post_type": "page", 139 | "wp:post_password": "", 140 | "wp:is_sticky": "0", 141 | "wp:postmeta": { 142 | "_wp_page_template": "default" 143 | }, 144 | "wp_link_path": "about" 145 | }, 146 | "level-3": { 147 | "slug": "level-3", 148 | "title": "Level 3", 149 | "link": "http://wpthemetestdata.wordpress.com/level-1/level-2/level-3/", 150 | "pubDate": "Tue, 11 Dec 2007 06:23:16 +0000", 151 | "dc:creator": "themedemos", 152 | "guid": "http://wpthemetestdata.wordpress.com/level-3/", 153 | "guid:isPermaLink": "false", 154 | "description": "", 155 | "excerpt:encoded": "", 156 | "wp:post_id": "172", 157 | "wp:post_date": "2007-12-11 16:23:16", 158 | "wp:post_date_gmt": "2007-12-11 06:23:16", 159 | "wp:comment_status": "closed", 160 | "wp:ping_status": "closed", 161 | "wp:post_name": "level-3", 162 | "wp:status": "publish", 163 | "wp:post_parent": "173", 164 | "wp:menu_order": "0", 165 | "wp:post_type": "page", 166 | "wp:post_password": "", 167 | "wp:is_sticky": "0", 168 | "wp:postmeta": { 169 | "_wp_page_template": "default" 170 | }, 171 | "wp_link_path": "level-1/level-2" 172 | }, 173 | "level-2": { 174 | "slug": "level-2", 175 | "title": "Level 2", 176 | "link": "http://wpthemetestdata.wordpress.com/level-1/level-2/", 177 | "pubDate": "Tue, 11 Dec 2007 06:23:33 +0000", 178 | "dc:creator": "themedemos", 179 | "guid": "http://wpthemetestdata.wordpress.com/level-2/", 180 | "guid:isPermaLink": "false", 181 | "description": "", 182 | "excerpt:encoded": "", 183 | "wp:post_id": "173", 184 | "wp:post_date": "2007-12-11 16:23:33", 185 | "wp:post_date_gmt": "2007-12-11 06:23:33", 186 | "wp:comment_status": "closed", 187 | "wp:ping_status": "closed", 188 | "wp:post_name": "level-2", 189 | "wp:status": "publish", 190 | "wp:post_parent": "174", 191 | "wp:menu_order": "0", 192 | "wp:post_type": "page", 193 | "wp:post_password": "", 194 | "wp:is_sticky": "0", 195 | "wp:postmeta": { 196 | "_wp_page_template": "default" 197 | }, 198 | "wp_link_path": "level-1" 199 | }, 200 | "level-1": { 201 | "slug": "level-1", 202 | "title": "Level 1", 203 | "link": "http://wpthemetestdata.wordpress.com/level-1/", 204 | "pubDate": "Tue, 11 Dec 2007 23:25:40 +0000", 205 | "dc:creator": "themedemos", 206 | "guid": "http://wpthemetestdata.wordpress.com/level-1/", 207 | "guid:isPermaLink": "false", 208 | "description": "", 209 | "excerpt:encoded": "", 210 | "wp:post_id": "174", 211 | "wp:post_date": "2007-12-11 16:25:40", 212 | "wp:post_date_gmt": "2007-12-11 23:25:40", 213 | "wp:comment_status": "closed", 214 | "wp:ping_status": "closed", 215 | "wp:post_name": "level-1", 216 | "wp:status": "publish", 217 | "wp:post_parent": "0", 218 | "wp:menu_order": "5", 219 | "wp:post_type": "page", 220 | "wp:post_password": "", 221 | "wp:is_sticky": "0", 222 | "wp:postmeta": { 223 | "_wp_page_template": "default" 224 | }, 225 | "wp_link_path": "" 226 | }, 227 | "clearing-floats": { 228 | "slug": "clearing-floats", 229 | "title": "Clearing Floats", 230 | "link": "http://wpthemetestdata.wordpress.com/about/clearing-floats/", 231 | "pubDate": "Sun, 01 Aug 2010 16:42:26 +0000", 232 | "dc:creator": "themedemos", 233 | "guid": "http://wpthemetestdata.wordpress.com/", 234 | "guid:isPermaLink": "false", 235 | "description": "", 236 | "excerpt:encoded": "", 237 | "wp:post_id": "501", 238 | "wp:post_date": "2010-08-01 09:42:26", 239 | "wp:post_date_gmt": "2010-08-01 16:42:26", 240 | "wp:comment_status": "closed", 241 | "wp:ping_status": "closed", 242 | "wp:post_name": "clearing-floats", 243 | "wp:status": "publish", 244 | "wp:post_parent": "2", 245 | "wp:menu_order": "2", 246 | "wp:post_type": "page", 247 | "wp:post_password": "", 248 | "wp:is_sticky": "0", 249 | "wp:postmeta": { 250 | "_wp_page_template": "default" 251 | }, 252 | "wp_link_path": "about" 253 | }, 254 | "front-page": { 255 | "slug": "front-page", 256 | "title": "Front Page", 257 | "link": "http://wpthemetestdata.wordpress.com/front-page/", 258 | "pubDate": "Sat, 21 May 2011 01:49:43 +0000", 259 | "dc:creator": "themedemos", 260 | "guid": "http://wpthemetestdata.wordpress.com/?page_id=701", 261 | "guid:isPermaLink": "false", 262 | "description": "", 263 | "excerpt:encoded": "", 264 | "wp:post_id": "701", 265 | "wp:post_date": "2011-05-20 18:49:43", 266 | "wp:post_date_gmt": "2011-05-21 01:49:43", 267 | "wp:comment_status": "open", 268 | "wp:ping_status": "closed", 269 | "wp:post_name": "front-page", 270 | "wp:status": "publish", 271 | "wp:post_parent": "0", 272 | "wp:menu_order": "0", 273 | "wp:post_type": "page", 274 | "wp:post_password": "", 275 | "wp:is_sticky": "0", 276 | "wp:postmeta": { 277 | "_wp_page_template": "default" 278 | }, 279 | "wp_link_path": "" 280 | }, 281 | "blog": { 282 | "slug": "blog", 283 | "title": "Blog", 284 | "link": "http://wpthemetestdata.wordpress.com/blog/", 285 | "pubDate": "Sat, 21 May 2011 01:51:43 +0000", 286 | "dc:creator": "themedemos", 287 | "guid": "http://wpthemetestdata.wordpress.com/?page_id=703", 288 | "guid:isPermaLink": "false", 289 | "description": "", 290 | "excerpt:encoded": "", 291 | "wp:post_id": "703", 292 | "wp:post_date": "2011-05-20 18:51:43", 293 | "wp:post_date_gmt": "2011-05-21 01:51:43", 294 | "wp:comment_status": "open", 295 | "wp:ping_status": "closed", 296 | "wp:post_name": "blog", 297 | "wp:status": "publish", 298 | "wp:post_parent": "0", 299 | "wp:menu_order": "0", 300 | "wp:post_type": "page", 301 | "wp:post_password": "", 302 | "wp:is_sticky": "0", 303 | "wp:postmeta": { 304 | "_wp_page_template": "default" 305 | }, 306 | "wp_link_path": "" 307 | }, 308 | "post-format-standard": { 309 | "slug": "post-format-standard", 310 | "title": "Post Format: Standard", 311 | "link": "http://wpthemetestdata.wordpress.com/2010/10/05/post-format-standard/", 312 | "pubDate": "Tue, 05 Oct 2010 07:27:25 +0000", 313 | "dc:creator": "themedemos", 314 | "guid": "http://wpthemetestdata.wordpress.com/?p=358", 315 | "guid:isPermaLink": "false", 316 | "description": "", 317 | "excerpt:encoded": "", 318 | "wp:post_id": "358", 319 | "wp:post_date": "2010-10-05 00:27:25", 320 | "wp:post_date_gmt": "2010-10-05 07:27:25", 321 | "wp:comment_status": "closed", 322 | "wp:ping_status": "closed", 323 | "wp:post_name": "post-format-standard", 324 | "wp:status": "publish", 325 | "wp:post_parent": "0", 326 | "wp:menu_order": "0", 327 | "wp:post_type": "post", 328 | "wp:post_password": "", 329 | "wp:is_sticky": "0", 330 | "category": { 331 | "Post Formats": "category : post-formats", 332 | "readability": "post_tag : readability", 333 | "standard": "post_tag : standard-2" 334 | }, 335 | "wp:postmeta": { 336 | "_wp_old_slug": "markup-readability-test" 337 | }, 338 | "wp_link_path": "2010/10/05" 339 | }, 340 | "post-format-gallery": { 341 | "slug": "post-format-gallery", 342 | "title": "Post Format: Gallery", 343 | "link": "http://wpthemetestdata.wordpress.com/2010/09/10/post-format-gallery/", 344 | "pubDate": "Fri, 10 Sep 2010 14:24:14 +0000", 345 | "dc:creator": "themedemos", 346 | "guid": "http://wpthemetestdata.wordpress.com/?p=555", 347 | "guid:isPermaLink": "false", 348 | "description": "", 349 | "excerpt:encoded": "", 350 | "wp:post_id": "555", 351 | "wp:post_date": "2010-09-10 07:24:14", 352 | "wp:post_date_gmt": "2010-09-10 14:24:14", 353 | "wp:comment_status": "closed", 354 | "wp:ping_status": "closed", 355 | "wp:post_name": "post-format-gallery", 356 | "wp:status": "publish", 357 | "wp:post_parent": "0", 358 | "wp:menu_order": "0", 359 | "wp:post_type": "post", 360 | "wp:post_password": "", 361 | "wp:is_sticky": "0", 362 | "category": { 363 | "gallery": "post_tag : gallery", 364 | "Post Formats": "category : post-formats", 365 | "Gallery": "post_format : post-format-gallery", 366 | "shortcode": "post_tag : shortcode" 367 | }, 368 | "wp:postmeta": { 369 | "_wp_old_slug": "post-format-test-gallery", 370 | "_thumbnail_id": "771" 371 | }, 372 | "wp_link_path": "2010/09/10" 373 | }, 374 | "post-format-aside": { 375 | "slug": "post-format-aside", 376 | "title": "Post Format: Aside", 377 | "link": "http://wpthemetestdata.wordpress.com/2010/05/09/post-format-aside/", 378 | "pubDate": "Sun, 09 May 2010 14:51:54 +0000", 379 | "dc:creator": "themedemos", 380 | "guid": "http://wpthemetestdata.wordpress.com/?p=559", 381 | "guid:isPermaLink": "false", 382 | "description": "", 383 | "excerpt:encoded": "", 384 | "wp:post_id": "559", 385 | "wp:post_date": "2010-05-09 07:51:54", 386 | "wp:post_date_gmt": "2010-05-09 14:51:54", 387 | "wp:comment_status": "closed", 388 | "wp:ping_status": "closed", 389 | "wp:post_name": "post-format-aside", 390 | "wp:status": "publish", 391 | "wp:post_parent": "0", 392 | "wp:menu_order": "0", 393 | "wp:post_type": "post", 394 | "wp:post_password": "", 395 | "wp:is_sticky": "0", 396 | "category": { 397 | "aside": "post_tag : aside", 398 | "Post Formats": "category : post-formats", 399 | "Aside": "post_format : post-format-aside" 400 | }, 401 | "wp:postmeta": { 402 | "_wp_old_slug": "post-format-test-aside" 403 | }, 404 | "wp_link_path": "2010/05/09" 405 | }, 406 | "post-format-chat": { 407 | "slug": "post-format-chat", 408 | "title": "Post Format: Chat", 409 | "link": "http://wpthemetestdata.wordpress.com/2010/01/08/post-format-chat/", 410 | "pubDate": "Fri, 08 Jan 2010 14:59:31 +0000", 411 | "dc:creator": "themedemos", 412 | "guid": "http://wpthemetestdata.wordpress.com/?p=562", 413 | "guid:isPermaLink": "false", 414 | "description": "", 415 | "excerpt:encoded": "", 416 | "wp:post_id": "562", 417 | "wp:post_date": "2010-01-08 07:59:31", 418 | "wp:post_date_gmt": "2010-01-08 14:59:31", 419 | "wp:comment_status": "closed", 420 | "wp:ping_status": "closed", 421 | "wp:post_name": "post-format-chat", 422 | "wp:status": "publish", 423 | "wp:post_parent": "0", 424 | "wp:menu_order": "0", 425 | "wp:post_type": "post", 426 | "wp:post_password": "", 427 | "wp:is_sticky": "0", 428 | "category": { 429 | "chat": "post_tag : chat", 430 | "Post Formats": "category : post-formats", 431 | "Chat": "post_format : post-format-chat" 432 | }, 433 | "wp:postmeta": { 434 | "_wp_old_slug": "post-format-test-chat" 435 | }, 436 | "wp_link_path": "2010/01/08" 437 | }, 438 | "post-format-link": { 439 | "slug": "post-format-link", 440 | "title": "Post Format: Link", 441 | "link": "http://wpthemetestdata.wordpress.com/2010/03/07/post-format-link/", 442 | "pubDate": "Sun, 07 Mar 2010 15:06:53 +0000", 443 | "dc:creator": "themedemos", 444 | "guid": "http://wpthemetestdata.wordpress.com/?p=565", 445 | "guid:isPermaLink": "false", 446 | "description": "", 447 | "excerpt:encoded": "", 448 | "wp:post_id": "565", 449 | "wp:post_date": "2010-03-07 08:06:53", 450 | "wp:post_date_gmt": "2010-03-07 15:06:53", 451 | "wp:comment_status": "closed", 452 | "wp:ping_status": "closed", 453 | "wp:post_name": "post-format-link", 454 | "wp:status": "publish", 455 | "wp:post_parent": "0", 456 | "wp:menu_order": "0", 457 | "wp:post_type": "post", 458 | "wp:post_password": "", 459 | "wp:is_sticky": "0", 460 | "category": { 461 | "link": "post_tag : link", 462 | "Post Formats": "category : post-formats", 463 | "Link": "post_format : post-format-link" 464 | }, 465 | "wp:postmeta": { 466 | "_wp_old_slug": "post-format-test-link" 467 | }, 468 | "wp_link_path": "2010/03/07" 469 | }, 470 | "post-format-image-linked": { 471 | "slug": "post-format-image-linked", 472 | "title": "Post Format: Image (Linked)", 473 | "link": "http://wpthemetestdata.wordpress.com/2010/08/06/post-format-image-linked/", 474 | "pubDate": "Fri, 06 Aug 2010 15:09:39 +0000", 475 | "dc:creator": "themedemos", 476 | "guid": "http://wpthemetestdata.wordpress.com/?p=568", 477 | "guid:isPermaLink": "false", 478 | "description": "", 479 | "excerpt:encoded": "", 480 | "wp:post_id": "568", 481 | "wp:post_date": "2010-08-06 08:09:39", 482 | "wp:post_date_gmt": "2010-08-06 15:09:39", 483 | "wp:comment_status": "closed", 484 | "wp:ping_status": "closed", 485 | "wp:post_name": "post-format-image-linked", 486 | "wp:status": "publish", 487 | "wp:post_parent": "0", 488 | "wp:menu_order": "0", 489 | "wp:post_type": "post", 490 | "wp:post_password": "", 491 | "wp:is_sticky": "0", 492 | "category": { 493 | "image": "post_tag : image", 494 | "Post Formats": "category : post-formats", 495 | "Image": "post_format : post-format-image" 496 | }, 497 | "wp:postmeta": { 498 | "_wp_old_slug": "post-format-test-image-linked" 499 | }, 500 | "wp_link_path": "2010/08/06" 501 | }, 502 | "post-format-quote": { 503 | "slug": "post-format-quote", 504 | "title": "Post Format: Quote", 505 | "link": "http://wpthemetestdata.wordpress.com/2010/02/05/post-format-quote/", 506 | "pubDate": "Fri, 05 Feb 2010 15:13:15 +0000", 507 | "dc:creator": "themedemos", 508 | "guid": "http://wpthemetestdata.wordpress.com/?p=575", 509 | "guid:isPermaLink": "false", 510 | "description": "", 511 | "excerpt:encoded": "", 512 | "wp:post_id": "575", 513 | "wp:post_date": "2010-02-05 08:13:15", 514 | "wp:post_date_gmt": "2010-02-05 15:13:15", 515 | "wp:comment_status": "closed", 516 | "wp:ping_status": "closed", 517 | "wp:post_name": "post-format-quote", 518 | "wp:status": "publish", 519 | "wp:post_parent": "0", 520 | "wp:menu_order": "0", 521 | "wp:post_type": "post", 522 | "wp:post_password": "", 523 | "wp:is_sticky": "0", 524 | "category": { 525 | "Post Formats": "category : post-formats", 526 | "Quote": "post_format : post-format-quote", 527 | "quote": "post_tag : quote" 528 | }, 529 | "wp:postmeta": { 530 | "_wp_old_slug": "post-format-test-quote" 531 | }, 532 | "wp_link_path": "2010/02/05" 533 | }, 534 | "post-format-status": { 535 | "slug": "post-format-status", 536 | "title": "Post Format: Status", 537 | "link": "http://wpthemetestdata.wordpress.com/2010/04/04/post-format-status/", 538 | "pubDate": "Sun, 04 Apr 2010 15:21:24 +0000", 539 | "dc:creator": "themedemos", 540 | "guid": "http://wpthemetestdata.wordpress.com/?p=579", 541 | "guid:isPermaLink": "false", 542 | "description": "", 543 | "excerpt:encoded": "", 544 | "wp:post_id": "579", 545 | "wp:post_date": "2010-04-04 08:21:24", 546 | "wp:post_date_gmt": "2010-04-04 15:21:24", 547 | "wp:comment_status": "closed", 548 | "wp:ping_status": "closed", 549 | "wp:post_name": "post-format-status", 550 | "wp:status": "publish", 551 | "wp:post_parent": "0", 552 | "wp:menu_order": "0", 553 | "wp:post_type": "post", 554 | "wp:post_password": "", 555 | "wp:is_sticky": "0", 556 | "category": { 557 | "Post Formats": "category : post-formats", 558 | "Status": "post_format : post-format-status", 559 | "status": "post_tag : status" 560 | }, 561 | "wp:postmeta": { 562 | "_wp_old_slug": "post-format-test-status" 563 | }, 564 | "wp_link_path": "2010/04/04" 565 | }, 566 | "post-format-video-wordpresstv": { 567 | "slug": "post-format-video-wordpresstv", 568 | "title": "Post Format: Video (WordPress.tv)", 569 | "link": "http://wpthemetestdata.wordpress.com/2010/06/03/post-format-video-wordpresstv/", 570 | "pubDate": "Thu, 03 Jun 2010 15:25:58 +0000", 571 | "dc:creator": "themedemos", 572 | "guid": "http://wpthemetestdata.wordpress.com/?p=582", 573 | "guid:isPermaLink": "false", 574 | "description": "", 575 | "excerpt:encoded": "", 576 | "wp:post_id": "582", 577 | "wp:post_date": "2010-06-03 08:25:58", 578 | "wp:post_date_gmt": "2010-06-03 15:25:58", 579 | "wp:comment_status": "closed", 580 | "wp:ping_status": "closed", 581 | "wp:post_name": "post-format-video-wordpresstv", 582 | "wp:status": "publish", 583 | "wp:post_parent": "0", 584 | "wp:menu_order": "0", 585 | "wp:post_type": "post", 586 | "wp:post_password": "", 587 | "wp:is_sticky": "0", 588 | "category": { 589 | "embeds": "post_tag : embeds-2", 590 | "Post Formats": "category : post-formats", 591 | "Video": "post_format : post-format-video", 592 | "video": "post_tag : video", 593 | "wordpress.tv": "post_tag : wordpress-tv" 594 | }, 595 | "wp:postmeta": { 596 | "_wp_old_slug": "post-format-test-video", 597 | "_oembed_4321638fc1a6fee26443f7fe8a70a871": "", 598 | "_oembed_29351fff85c1be1d1e9a965a0332a861": "
", 599 | "_oembed_9fcc86d7d9398ff736577f922307f64d": "
", 600 | "_oembed_366237792d32461d0052efb2edec37f5": "
", 601 | "_oembed_37fdfe862c13c46a93be2921279bf675": "
" 602 | }, 603 | "wp_link_path": "2010/06/03" 604 | }, 605 | "post-format-audio": { 606 | "slug": "post-format-audio", 607 | "title": "Post Format: Audio", 608 | "link": "http://wpthemetestdata.wordpress.com/2010/07/02/post-format-audio/", 609 | "pubDate": "Fri, 02 Jul 2010 15:36:44 +0000", 610 | "dc:creator": "themedemos", 611 | "guid": "http://wpthemetestdata.wordpress.com/?p=587", 612 | "guid:isPermaLink": "false", 613 | "description": "", 614 | "excerpt:encoded": "", 615 | "wp:post_id": "587", 616 | "wp:post_date": "2010-07-02 08:36:44", 617 | "wp:post_date_gmt": "2010-07-02 15:36:44", 618 | "wp:comment_status": "closed", 619 | "wp:ping_status": "closed", 620 | "wp:post_name": "post-format-audio", 621 | "wp:status": "publish", 622 | "wp:post_parent": "0", 623 | "wp:menu_order": "0", 624 | "wp:post_type": "post", 625 | "wp:post_password": "", 626 | "wp:is_sticky": "0", 627 | "category": { 628 | "audio": "post_tag : audio", 629 | "Post Formats": "category : post-formats", 630 | "Audio": "post_format : post-format-audio", 631 | "shortcode": "post_tag : shortcode" 632 | }, 633 | "wp:postmeta": { 634 | "enclosure": "http://wpthemetestdata.files.wordpress.com/2008/06/originaldixielandjazzbandwithalbernard-stlouisblues.mp3\n3043247\naudio/mpeg\n", 635 | "_wp_old_slug": "post-format-test-audio" 636 | }, 637 | "wp_link_path": "2010/07/02" 638 | }, 639 | "page-a": { 640 | "slug": "page-a", 641 | "title": "Page A", 642 | "link": "http://wpthemetestdata.wordpress.com/page-a/", 643 | "pubDate": "Fri, 24 Jun 2011 01:38:52 +0000", 644 | "dc:creator": "themedemos", 645 | "guid": "http://wpthemetestdata.wordpress.com/?page_id=733", 646 | "guid:isPermaLink": "false", 647 | "description": "", 648 | "excerpt:encoded": "", 649 | "wp:post_id": "733", 650 | "wp:post_date": "2011-06-23 18:38:52", 651 | "wp:post_date_gmt": "2011-06-24 01:38:52", 652 | "wp:comment_status": "open", 653 | "wp:ping_status": "closed", 654 | "wp:post_name": "page-a", 655 | "wp:status": "publish", 656 | "wp:post_parent": "0", 657 | "wp:menu_order": "10", 658 | "wp:post_type": "page", 659 | "wp:post_password": "", 660 | "wp:is_sticky": "0", 661 | "wp:postmeta": { 662 | "_wp_page_template": "default" 663 | }, 664 | "wp_link_path": "" 665 | }, 666 | "page-b": { 667 | "slug": "page-b", 668 | "title": "Page B", 669 | "link": "http://wpthemetestdata.wordpress.com/page-b/", 670 | "pubDate": "Fri, 24 Jun 2011 01:39:14 +0000", 671 | "dc:creator": "themedemos", 672 | "guid": "http://wpthemetestdata.wordpress.com/?page_id=735", 673 | "guid:isPermaLink": "false", 674 | "description": "", 675 | "excerpt:encoded": "", 676 | "wp:post_id": "735", 677 | "wp:post_date": "2011-06-23 18:39:14", 678 | "wp:post_date_gmt": "2011-06-24 01:39:14", 679 | "wp:comment_status": "open", 680 | "wp:ping_status": "closed", 681 | "wp:post_name": "page-b", 682 | "wp:status": "publish", 683 | "wp:post_parent": "0", 684 | "wp:menu_order": "11", 685 | "wp:post_type": "page", 686 | "wp:post_password": "", 687 | "wp:is_sticky": "0", 688 | "wp:postmeta": { 689 | "_wp_page_template": "default" 690 | }, 691 | "wp_link_path": "" 692 | }, 693 | "level-2a": { 694 | "slug": "level-2a", 695 | "title": "Level 2a", 696 | "link": "http://wpthemetestdata.wordpress.com/level-1/level-2a/", 697 | "pubDate": "Fri, 24 Jun 2011 02:03:33 +0000", 698 | "dc:creator": "themedemos", 699 | "guid": "http://wpthemetestdata.wordpress.com/?page_id=742", 700 | "guid:isPermaLink": "false", 701 | "description": "", 702 | "excerpt:encoded": "", 703 | "wp:post_id": "742", 704 | "wp:post_date": "2011-06-23 19:03:33", 705 | "wp:post_date_gmt": "2011-06-24 02:03:33", 706 | "wp:comment_status": "open", 707 | "wp:ping_status": "closed", 708 | "wp:post_name": "level-2a", 709 | "wp:status": "publish", 710 | "wp:post_parent": "174", 711 | "wp:menu_order": "0", 712 | "wp:post_type": "page", 713 | "wp:post_password": "", 714 | "wp:is_sticky": "0", 715 | "wp:postmeta": { 716 | "_wp_page_template": "default" 717 | }, 718 | "wp_link_path": "level-1" 719 | }, 720 | "level-2b": { 721 | "slug": "level-2b", 722 | "title": "Level 2b", 723 | "link": "http://wpthemetestdata.wordpress.com/level-1/level-2b/", 724 | "pubDate": "Fri, 24 Jun 2011 02:04:03 +0000", 725 | "dc:creator": "themedemos", 726 | "guid": "http://wpthemetestdata.wordpress.com/?page_id=744", 727 | "guid:isPermaLink": "false", 728 | "description": "", 729 | "excerpt:encoded": "", 730 | "wp:post_id": "744", 731 | "wp:post_date": "2011-06-23 19:04:03", 732 | "wp:post_date_gmt": "2011-06-24 02:04:03", 733 | "wp:comment_status": "open", 734 | "wp:ping_status": "closed", 735 | "wp:post_name": "level-2b", 736 | "wp:status": "publish", 737 | "wp:post_parent": "174", 738 | "wp:menu_order": "0", 739 | "wp:post_type": "page", 740 | "wp:post_password": "", 741 | "wp:is_sticky": "0", 742 | "wp:postmeta": { 743 | "_wp_page_template": "default" 744 | }, 745 | "wp_link_path": "level-1" 746 | }, 747 | "level-3a": { 748 | "slug": "level-3a", 749 | "title": "Level 3a", 750 | "link": "http://wpthemetestdata.wordpress.com/level-1/level-2/level-3a/", 751 | "pubDate": "Fri, 24 Jun 2011 02:04:24 +0000", 752 | "dc:creator": "themedemos", 753 | "guid": "http://wpthemetestdata.wordpress.com/?page_id=746", 754 | "guid:isPermaLink": "false", 755 | "description": "", 756 | "excerpt:encoded": "", 757 | "wp:post_id": "746", 758 | "wp:post_date": "2011-06-23 19:04:24", 759 | "wp:post_date_gmt": "2011-06-24 02:04:24", 760 | "wp:comment_status": "open", 761 | "wp:ping_status": "closed", 762 | "wp:post_name": "level-3a", 763 | "wp:status": "publish", 764 | "wp:post_parent": "173", 765 | "wp:menu_order": "0", 766 | "wp:post_type": "page", 767 | "wp:post_password": "", 768 | "wp:is_sticky": "0", 769 | "wp:postmeta": { 770 | "_wp_page_template": "default" 771 | }, 772 | "wp_link_path": "level-1/level-2" 773 | }, 774 | "level-3b": { 775 | "slug": "level-3b", 776 | "title": "Level 3b", 777 | "link": "http://wpthemetestdata.wordpress.com/level-1/level-2/level-3b/", 778 | "pubDate": "Fri, 24 Jun 2011 02:04:46 +0000", 779 | "dc:creator": "themedemos", 780 | "guid": "http://wpthemetestdata.wordpress.com/?page_id=748", 781 | "guid:isPermaLink": "false", 782 | "description": "", 783 | "excerpt:encoded": "", 784 | "wp:post_id": "748", 785 | "wp:post_date": "2011-06-23 19:04:46", 786 | "wp:post_date_gmt": "2011-06-24 02:04:46", 787 | "wp:comment_status": "open", 788 | "wp:ping_status": "closed", 789 | "wp:post_name": "level-3b", 790 | "wp:status": "publish", 791 | "wp:post_parent": "173", 792 | "wp:menu_order": "0", 793 | "wp:post_type": "page", 794 | "wp:post_password": "", 795 | "wp:is_sticky": "0", 796 | "wp:postmeta": { 797 | "_wp_page_template": "default" 798 | }, 799 | "wp_link_path": "level-1/level-2" 800 | }, 801 | "template-excerpt-defined": { 802 | "slug": "template-excerpt-defined", 803 | "title": "Template: Excerpt (Defined)", 804 | "link": "http://wpthemetestdata.wordpress.com/2012/03/15/template-excerpt-defined/", 805 | "pubDate": "Thu, 15 Mar 2012 21:38:08 +0000", 806 | "dc:creator": "themedemos", 807 | "guid": "http://wptest.io/demo/?p=993", 808 | "guid:isPermaLink": "false", 809 | "description": "", 810 | "excerpt:encoded": "This is a user-defined post excerpt. It should be displayed in place of the post content in archive-index pages.", 811 | "wp:post_id": "993", 812 | "wp:post_date": "2012-03-15 14:38:08", 813 | "wp:post_date_gmt": "2012-03-15 21:38:08", 814 | "wp:comment_status": "closed", 815 | "wp:ping_status": "closed", 816 | "wp:post_name": "template-excerpt-defined", 817 | "wp:status": "publish", 818 | "wp:post_parent": "0", 819 | "wp:menu_order": "0", 820 | "wp:post_type": "post", 821 | "wp:post_password": "", 822 | "wp:is_sticky": "0", 823 | "category": { 824 | "content": "post_tag : content-2", 825 | "excerpt": "post_tag : excerpt-2", 826 | "template": "post_tag : template", 827 | "Template": "category : template-2", 828 | "Uncategorized": "category : uncategorized" 829 | }, 830 | "wp:postmeta": { 831 | "_wp_old_slug": "993", 832 | "_publicize_pending": "1", 833 | "original_post_id": "993" 834 | }, 835 | "wp_link_path": "2012/03/15" 836 | }, 837 | "template-more-tag": { 838 | "slug": "template-more-tag", 839 | "title": "Template: More Tag", 840 | "link": "http://wpthemetestdata.wordpress.com/2012/03/15/template-more-tag/", 841 | "pubDate": "Thu, 15 Mar 2012 21:41:11 +0000", 842 | "dc:creator": "themedemos", 843 | "guid": "http://wptest.io/demo/?p=996", 844 | "guid:isPermaLink": "false", 845 | "description": "", 846 | "excerpt:encoded": "", 847 | "wp:post_id": "996", 848 | "wp:post_date": "2012-03-15 14:41:11", 849 | "wp:post_date_gmt": "2012-03-15 21:41:11", 850 | "wp:comment_status": "closed", 851 | "wp:ping_status": "closed", 852 | "wp:post_name": "template-more-tag", 853 | "wp:status": "publish", 854 | "wp:post_parent": "0", 855 | "wp:menu_order": "0", 856 | "wp:post_type": "post", 857 | "wp:post_password": "", 858 | "wp:is_sticky": "0", 859 | "category": { 860 | "content": "post_tag : content-2", 861 | "read more": "post_tag : read-more", 862 | "template": "post_tag : template", 863 | "Template": "category : template-2", 864 | "Uncategorized": "category : uncategorized" 865 | }, 866 | "wp:postmeta": { 867 | "_wp_old_slug": "996", 868 | "_publicize_pending": "1", 869 | "original_post_id": "996" 870 | }, 871 | "wp_link_path": "2012/03/15" 872 | }, 873 | "edge-case-nested-and-mixed-lists": { 874 | "slug": "edge-case-nested-and-mixed-lists", 875 | "title": "Edge Case: Nested And Mixed Lists", 876 | "link": "http://wpthemetestdata.wordpress.com/2009/05/15/edge-case-nested-and-mixed-lists/", 877 | "pubDate": "Fri, 15 May 2009 21:48:32 +0000", 878 | "dc:creator": "themedemos", 879 | "guid": "http://wptest.io/demo/?p=1000", 880 | "guid:isPermaLink": "false", 881 | "description": "", 882 | "excerpt:encoded": "", 883 | "wp:post_id": "1000", 884 | "wp:post_date": "2009-05-15 14:48:32", 885 | "wp:post_date_gmt": "2009-05-15 21:48:32", 886 | "wp:comment_status": "closed", 887 | "wp:ping_status": "closed", 888 | "wp:post_name": "edge-case-nested-and-mixed-lists", 889 | "wp:status": "publish", 890 | "wp:post_parent": "0", 891 | "wp:menu_order": "0", 892 | "wp:post_type": "post", 893 | "wp:post_password": "", 894 | "wp:is_sticky": "0", 895 | "category": { 896 | "content": "post_tag : content-2", 897 | "css": "post_tag : css", 898 | "edge case": "post_tag : edge-case", 899 | "Edge Case": "category : edge-case-2", 900 | "lists": "post_tag : lists-2", 901 | "markup": "post_tag : markup-2" 902 | }, 903 | "wp:postmeta": { 904 | "_wp_old_slug": "1000", 905 | "_publicize_pending": "1", 906 | "original_post_id": "1000" 907 | }, 908 | "wp_link_path": "2009/05/15" 909 | }, 910 | "post-format-video-videopress": { 911 | "slug": "post-format-video-videopress", 912 | "title": "Post Format: Video (VideoPress)", 913 | "link": "http://wpthemetestdata.wordpress.com/2010/06/02/post-format-video-videopress/", 914 | "pubDate": "Wed, 02 Jun 2010 10:00:34 +0000", 915 | "dc:creator": "themedemos", 916 | "guid": "http://wptest.io/demo/?p=1005", 917 | "guid:isPermaLink": "false", 918 | "description": "", 919 | "excerpt:encoded": "", 920 | "wp:post_id": "1005", 921 | "wp:post_date": "2010-06-02 03:00:34", 922 | "wp:post_date_gmt": "2010-06-02 10:00:34", 923 | "wp:comment_status": "closed", 924 | "wp:ping_status": "closed", 925 | "wp:post_name": "post-format-video-videopress", 926 | "wp:status": "publish", 927 | "wp:post_parent": "0", 928 | "wp:menu_order": "0", 929 | "wp:post_type": "post", 930 | "wp:post_password": "", 931 | "wp:is_sticky": "0", 932 | "category": { 933 | "embeds": "post_tag : embeds-2", 934 | "jetpack": "post_tag : jetpack-2", 935 | "Post Formats": "category : post-formats", 936 | "Video": "post_format : post-format-video", 937 | "shortcode": "post_tag : shortcode", 938 | "video": "post_tag : video", 939 | "videopress": "post_tag : videopress" 940 | }, 941 | "wp:postmeta": { 942 | "_publicize_pending": "1", 943 | "standard_seo_post_level_layout": "", 944 | "standard_link_url_field": "", 945 | "standard_seo_post_meta_description": "", 946 | "original_post_id": "1005", 947 | "_wp_old_slug": "1005" 948 | }, 949 | "wp_link_path": "2010/06/02" 950 | }, 951 | "template-featured-image-horizontal": { 952 | "slug": "template-featured-image-horizontal", 953 | "title": "Template: Featured Image (Horizontal)", 954 | "link": "http://wpthemetestdata.wordpress.com/2012/03/15/template-featured-image-horizontal/", 955 | "pubDate": "Thu, 15 Mar 2012 22:15:12 +0000", 956 | "dc:creator": "themedemos", 957 | "guid": "http://wptest.io/demo/?p=1011", 958 | "guid:isPermaLink": "false", 959 | "description": "", 960 | "excerpt:encoded": "", 961 | "wp:post_id": "1011", 962 | "wp:post_date": "2012-03-15 15:15:12", 963 | "wp:post_date_gmt": "2012-03-15 22:15:12", 964 | "wp:comment_status": "closed", 965 | "wp:ping_status": "closed", 966 | "wp:post_name": "template-featured-image-horizontal", 967 | "wp:status": "publish", 968 | "wp:post_parent": "0", 969 | "wp:menu_order": "0", 970 | "wp:post_type": "post", 971 | "wp:post_password": "", 972 | "wp:is_sticky": "0", 973 | "category": { 974 | "Codex": "post_tag : codex", 975 | "edge case": "post_tag : edge-case", 976 | "featured image": "post_tag : featured-image", 977 | "image": "post_tag : image", 978 | "template": "post_tag : template", 979 | "Template": "category : template-2", 980 | "Uncategorized": "category : uncategorized" 981 | }, 982 | "wp:postmeta": { 983 | "_wp_old_slug": "1011", 984 | "_publicize_pending": "1", 985 | "_thumbnail_id": "1022", 986 | "standard_seo_post_level_layout": "", 987 | "standard_link_url_field": "", 988 | "standard_seo_post_meta_description": "", 989 | "original_post_id": "1011" 990 | }, 991 | "wp_link_path": "2012/03/15" 992 | }, 993 | "template-featured-image-vertical": { 994 | "slug": "template-featured-image-vertical", 995 | "title": "Template: Featured Image (Vertical)", 996 | "link": "http://wpthemetestdata.wordpress.com/2012/03/15/template-featured-image-vertical/", 997 | "pubDate": "Thu, 15 Mar 2012 22:36:32 +0000", 998 | "dc:creator": "themedemos", 999 | "guid": "http://wptest.io/demo/?p=1016", 1000 | "guid:isPermaLink": "false", 1001 | "description": "", 1002 | "excerpt:encoded": "", 1003 | "wp:post_id": "1016", 1004 | "wp:post_date": "2012-03-15 15:36:32", 1005 | "wp:post_date_gmt": "2012-03-15 22:36:32", 1006 | "wp:comment_status": "closed", 1007 | "wp:ping_status": "closed", 1008 | "wp:post_name": "template-featured-image-vertical", 1009 | "wp:status": "publish", 1010 | "wp:post_parent": "0", 1011 | "wp:menu_order": "0", 1012 | "wp:post_type": "post", 1013 | "wp:post_password": "", 1014 | "wp:is_sticky": "0", 1015 | "category": { 1016 | "Codex": "post_tag : codex", 1017 | "edge case": "post_tag : edge-case", 1018 | "featured image": "post_tag : featured-image", 1019 | "image": "post_tag : image", 1020 | "template": "post_tag : template", 1021 | "Template": "category : template-2", 1022 | "Uncategorized": "category : uncategorized" 1023 | }, 1024 | "wp:postmeta": { 1025 | "_wp_old_slug": "1016", 1026 | "_publicize_pending": "1", 1027 | "_thumbnail_id": "1027", 1028 | "standard_seo_post_level_layout": "", 1029 | "standard_link_url_field": "", 1030 | "standard_seo_post_meta_description": "", 1031 | "original_post_id": "1016" 1032 | }, 1033 | "wp_link_path": "2012/03/15" 1034 | }, 1035 | "post-format-gallery-tiled": { 1036 | "slug": "post-format-gallery-tiled", 1037 | "title": "Post Format: Gallery (Tiled)", 1038 | "link": "http://wpthemetestdata.wordpress.com/2010/09/09/post-format-gallery-tiled/", 1039 | "pubDate": "Fri, 10 Sep 2010 00:23:27 +0000", 1040 | "dc:creator": "themedemos", 1041 | "guid": "http://wptest.io/demo/?p=1031", 1042 | "guid:isPermaLink": "false", 1043 | "description": "", 1044 | "excerpt:encoded": "", 1045 | "wp:post_id": "1031", 1046 | "wp:post_date": "2010-09-09 17:23:27", 1047 | "wp:post_date_gmt": "2010-09-10 00:23:27", 1048 | "wp:comment_status": "closed", 1049 | "wp:ping_status": "closed", 1050 | "wp:post_name": "post-format-gallery-tiled", 1051 | "wp:status": "publish", 1052 | "wp:post_parent": "0", 1053 | "wp:menu_order": "0", 1054 | "wp:post_type": "post", 1055 | "wp:post_password": "", 1056 | "wp:is_sticky": "0", 1057 | "category": { 1058 | "gallery": "post_tag : gallery", 1059 | "jetpack": "post_tag : jetpack-2", 1060 | "Post Formats": "category : post-formats", 1061 | "Gallery": "post_format : post-format-gallery", 1062 | "shortcode": "post_tag : shortcode", 1063 | "tiled": "post_tag : tiled" 1064 | }, 1065 | "wp:postmeta": { 1066 | "_wp_old_slug": "1031", 1067 | "_publicize_pending": "1", 1068 | "standard_seo_post_level_layout": "", 1069 | "standard_link_url_field": "", 1070 | "standard_seo_post_meta_description": "", 1071 | "original_post_id": "1031" 1072 | }, 1073 | "wp_link_path": "2010/09/09" 1074 | }, 1075 | "page-image-alignment": { 1076 | "slug": "page-image-alignment", 1077 | "title": "Page Image Alignment", 1078 | "link": "http://wpthemetestdata.wordpress.com/about/page-image-alignment/", 1079 | "pubDate": "Fri, 15 Mar 2013 23:19:23 +0000", 1080 | "dc:creator": "themedemos", 1081 | "guid": "http://wptest.io/demo/?page_id=1080", 1082 | "guid:isPermaLink": "false", 1083 | "description": "", 1084 | "excerpt:encoded": "", 1085 | "wp:post_id": "1133", 1086 | "wp:post_date": "2013-03-15 18:19:23", 1087 | "wp:post_date_gmt": "2013-03-15 23:19:23", 1088 | "wp:comment_status": "open", 1089 | "wp:ping_status": "open", 1090 | "wp:post_name": "page-image-alignment", 1091 | "wp:status": "publish", 1092 | "wp:post_parent": "2", 1093 | "wp:menu_order": "0", 1094 | "wp:post_type": "page", 1095 | "wp:post_password": "", 1096 | "wp:is_sticky": "0", 1097 | "wp:postmeta": { 1098 | "_publicize_pending": "1", 1099 | "_wp_page_template": "default", 1100 | "original_post_id": "1080", 1101 | "_wp_old_slug": "1080" 1102 | }, 1103 | "wp_link_path": "about" 1104 | }, 1105 | "page-markup-and-formatting": { 1106 | "slug": "page-markup-and-formatting", 1107 | "title": "Page Markup And Formatting", 1108 | "link": "http://wpthemetestdata.wordpress.com/about/page-markup-and-formatting/", 1109 | "pubDate": "Fri, 15 Mar 2013 23:20:05 +0000", 1110 | "dc:creator": "themedemos", 1111 | "guid": "http://wptest.io/demo/?page_id=1083", 1112 | "guid:isPermaLink": "false", 1113 | "description": "", 1114 | "excerpt:encoded": "", 1115 | "wp:post_id": "1134", 1116 | "wp:post_date": "2013-03-15 18:20:05", 1117 | "wp:post_date_gmt": "2013-03-15 23:20:05", 1118 | "wp:comment_status": "open", 1119 | "wp:ping_status": "open", 1120 | "wp:post_name": "page-markup-and-formatting", 1121 | "wp:status": "publish", 1122 | "wp:post_parent": "2", 1123 | "wp:menu_order": "0", 1124 | "wp:post_type": "page", 1125 | "wp:post_password": "", 1126 | "wp:is_sticky": "0", 1127 | "wp:postmeta": { 1128 | "_publicize_pending": "1", 1129 | "_wp_page_template": "default", 1130 | "standard_seo_post_meta_description": "", 1131 | "original_post_id": "1083", 1132 | "_wp_old_slug": "1083" 1133 | }, 1134 | "wp_link_path": "about" 1135 | }, 1136 | "template-comments": { 1137 | "slug": "template-comments", 1138 | "title": "Template: Comments", 1139 | "link": "http://wpthemetestdata.wordpress.com/2012/01/03/template-comments/", 1140 | "pubDate": "Tue, 03 Jan 2012 17:11:37 +0000", 1141 | "dc:creator": "themedemos", 1142 | "guid": "http://wpthemetestdata.wordpress.com/2007/09/04/comment-test/", 1143 | "guid:isPermaLink": "false", 1144 | "description": "", 1145 | "excerpt:encoded": "", 1146 | "wp:post_id": "1148", 1147 | "wp:post_date": "2012-01-03 10:11:37", 1148 | "wp:post_date_gmt": "2012-01-03 17:11:37", 1149 | "wp:comment_status": "open", 1150 | "wp:ping_status": "closed", 1151 | "wp:post_name": "template-comments", 1152 | "wp:status": "publish", 1153 | "wp:post_parent": "0", 1154 | "wp:menu_order": "0", 1155 | "wp:post_type": "post", 1156 | "wp:post_password": "", 1157 | "wp:is_sticky": "0", 1158 | "category": { 1159 | "comments": "post_tag : comments-2", 1160 | "template": "post_tag : template", 1161 | "Template": "category : template-2", 1162 | "Uncategorized": "category : uncategorized" 1163 | }, 1164 | "wp:postmeta": { 1165 | "_publicize_pending": "1", 1166 | "_wp_old_slug": "comments", 1167 | "original_post_id": "149" 1168 | }, 1169 | "wp_link_path": "2012/01/03" 1170 | }, 1171 | "template-pingbacks-an-trackbacks": { 1172 | "slug": "template-pingbacks-an-trackbacks", 1173 | "title": "Template: Pingbacks And Trackbacks", 1174 | "link": "http://wpthemetestdata.wordpress.com/2012/01/01/template-pingbacks-an-trackbacks/", 1175 | "pubDate": "Sun, 01 Jan 2012 17:17:18 +0000", 1176 | "dc:creator": "themedemos", 1177 | "guid": "http://wpthemetestdata.wordpress.com/2007/09/04/many-trackbacks/", 1178 | "guid:isPermaLink": "false", 1179 | "description": "", 1180 | "excerpt:encoded": "", 1181 | "wp:post_id": "1149", 1182 | "wp:post_date": "2012-01-01 10:17:18", 1183 | "wp:post_date_gmt": "2012-01-01 17:17:18", 1184 | "wp:comment_status": "closed", 1185 | "wp:ping_status": "closed", 1186 | "wp:post_name": "template-pingbacks-an-trackbacks", 1187 | "wp:status": "publish", 1188 | "wp:post_parent": "0", 1189 | "wp:menu_order": "0", 1190 | "wp:post_type": "post", 1191 | "wp:post_password": "", 1192 | "wp:is_sticky": "0", 1193 | "category": { 1194 | "comments": "post_tag : comments-2", 1195 | "pingbacks": "post_tag : pingbacks-2", 1196 | "template": "post_tag : template", 1197 | "Template": "category : template-2", 1198 | "trackbacks": "post_tag : trackbacks-2", 1199 | "Uncategorized": "category : uncategorized" 1200 | }, 1201 | "wp:postmeta": { 1202 | "_wp_old_slug": "151", 1203 | "_publicize_pending": "1", 1204 | "original_post_id": "151" 1205 | }, 1206 | "wp_link_path": "2012/01/01" 1207 | }, 1208 | "template-comments-disabled": { 1209 | "slug": "template-comments-disabled", 1210 | "title": "Template: Comments Disabled", 1211 | "link": "http://wpthemetestdata.wordpress.com/2012/01/02/template-comments-disabled/", 1212 | "pubDate": "Mon, 02 Jan 2012 17:21:15 +0000", 1213 | "dc:creator": "themedemos", 1214 | "guid": "http://wpthemetestdata.wordpress.com/2007/09/04/no-comments/", 1215 | "guid:isPermaLink": "false", 1216 | "description": "", 1217 | "excerpt:encoded": "", 1218 | "wp:post_id": "1150", 1219 | "wp:post_date": "2012-01-02 10:21:15", 1220 | "wp:post_date_gmt": "2012-01-02 17:21:15", 1221 | "wp:comment_status": "closed", 1222 | "wp:ping_status": "closed", 1223 | "wp:post_name": "template-comments-disabled", 1224 | "wp:status": "publish", 1225 | "wp:post_parent": "0", 1226 | "wp:menu_order": "0", 1227 | "wp:post_type": "post", 1228 | "wp:post_password": "", 1229 | "wp:is_sticky": "0", 1230 | "category": { 1231 | "comments": "post_tag : comments-2", 1232 | "template": "post_tag : template", 1233 | "Template": "category : template-2", 1234 | "Uncategorized": "category : uncategorized" 1235 | }, 1236 | "wp:postmeta": { 1237 | "_publicize_pending": "1", 1238 | "_wp_old_slug": "comments-disabled-2", 1239 | "original_post_id": "152" 1240 | }, 1241 | "wp_link_path": "2012/01/02" 1242 | }, 1243 | "edge-case-many-tags": { 1244 | "slug": "edge-case-many-tags", 1245 | "title": "Edge Case: Many Tags", 1246 | "link": "http://wpthemetestdata.wordpress.com/2009/06/01/edge-case-many-tags/", 1247 | "pubDate": "Mon, 01 Jun 2009 08:00:34 +0000", 1248 | "dc:creator": "themedemos", 1249 | "guid": "http://wpthemetestdata.wordpress.com/2007/11/24/many-tags/", 1250 | "guid:isPermaLink": "false", 1251 | "description": "", 1252 | "excerpt:encoded": "", 1253 | "wp:post_id": "1151", 1254 | "wp:post_date": "2009-06-01 01:00:34", 1255 | "wp:post_date_gmt": "2009-06-01 08:00:34", 1256 | "wp:comment_status": "closed", 1257 | "wp:ping_status": "closed", 1258 | "wp:post_name": "edge-case-many-tags", 1259 | "wp:status": "publish", 1260 | "wp:post_parent": "0", 1261 | "wp:menu_order": "0", 1262 | "wp:post_type": "post", 1263 | "wp:post_password": "", 1264 | "wp:is_sticky": "0", 1265 | "category": { 1266 | "8BIT": "post_tag : 8bit", 1267 | "alignment": "post_tag : alignment-2", 1268 | "Articles": "post_tag : articles", 1269 | "captions": "post_tag : captions-2", 1270 | "categories": "post_tag : categories", 1271 | "chat": "post_tag : chat", 1272 | "Codex": "post_tag : codex", 1273 | "comments": "post_tag : comments-2", 1274 | "content": "post_tag : content-2", 1275 | "css": "post_tag : css", 1276 | "dowork": "post_tag : dowork", 1277 | "edge case": "post_tag : edge-case", 1278 | "Edge Case": "category : edge-case-2", 1279 | "embeds": "post_tag : embeds-2", 1280 | "excerpt": "post_tag : excerpt-2", 1281 | "Fail": "post_tag : fail", 1282 | "featured image": "post_tag : featured-image", 1283 | "FTW": "post_tag : ftw", 1284 | "Fun": "post_tag : fun", 1285 | "gallery": "post_tag : gallery", 1286 | "html": "post_tag : html", 1287 | "image": "post_tag : image", 1288 | "jetpack": "post_tag : jetpack-2", 1289 | "layout": "post_tag : layout", 1290 | "link": "post_tag : link", 1291 | "Love": "post_tag : love", 1292 | "markup": "post_tag : markup-2", 1293 | "Mothership": "post_tag : mothership", 1294 | "Must Read": "post_tag : mustread", 1295 | "Nailed It": "post_tag : nailedit", 1296 | "Pictures": "post_tag : pictures", 1297 | "Post Formats": "post_tag : post-formats", 1298 | "quote": "post_tag : quote", 1299 | "shortcode": "post_tag : shortcode", 1300 | "standard": "post_tag : standard-2", 1301 | "Success": "post_tag : success", 1302 | "Swagger": "post_tag : swagger", 1303 | "Tags": "post_tag : tags", 1304 | "template": "post_tag : template", 1305 | "title": "post_tag : title", 1306 | "twitter": "post_tag : twitter-2", 1307 | "Unseen": "post_tag : unseen", 1308 | "video": "post_tag : video", 1309 | "videopress": "post_tag : videopress", 1310 | "WordPress": "post_tag : wordpress", 1311 | "wordpress.tv": "post_tag : wordpress-tv" 1312 | }, 1313 | "wp:postmeta": { 1314 | "_publicize_pending": "1", 1315 | "original_post_id": "167", 1316 | "_wp_old_slug": "many-tags-2" 1317 | }, 1318 | "wp_link_path": "2009/06/01" 1319 | }, 1320 | "edge-case-many-categories": { 1321 | "slug": "edge-case-many-categories", 1322 | "title": "Edge Case: Many Categories", 1323 | "link": "http://wpthemetestdata.wordpress.com/2009/07/02/edge-case-many-categories/", 1324 | "pubDate": "Thu, 02 Jul 2009 09:00:03 +0000", 1325 | "dc:creator": "themedemos", 1326 | "guid": "http://wpthemetestdata.wordpress.com/2007/11/24/many-categories/", 1327 | "guid:isPermaLink": "false", 1328 | "description": "", 1329 | "excerpt:encoded": "", 1330 | "wp:post_id": "1152", 1331 | "wp:post_date": "2009-07-02 02:00:03", 1332 | "wp:post_date_gmt": "2009-07-02 09:00:03", 1333 | "wp:comment_status": "closed", 1334 | "wp:ping_status": "closed", 1335 | "wp:post_name": "edge-case-many-categories", 1336 | "wp:status": "publish", 1337 | "wp:post_parent": "0", 1338 | "wp:menu_order": "0", 1339 | "wp:post_type": "post", 1340 | "wp:post_password": "", 1341 | "wp:is_sticky": "0", 1342 | "category": { 1343 | "aciform": "category : aciform", 1344 | "antiquarianism": "category : antiquarianism", 1345 | "arrangement": "category : arrangement", 1346 | "asmodeus": "category : asmodeus", 1347 | "broder": "category : broder", 1348 | "buying": "category : buying", 1349 | "Cat A": "category : cat-a", 1350 | "Cat B": "category : cat-b", 1351 | "Cat C": "category : cat-c", 1352 | "categories": "post_tag : categories", 1353 | "championship": "category : championship", 1354 | "chastening": "category : chastening", 1355 | "Child 1": "category : child-1", 1356 | "Child 2": "category : child-2", 1357 | "Child Category 01": "category : child-category-01", 1358 | "Child Category 02": "category : child-category-02", 1359 | "Child Category 03": "category : child-category-03", 1360 | "Child Category 04": "category : child-category-04", 1361 | "Child Category 05": "category : child-category-05", 1362 | "clerkship": "category : clerkship", 1363 | "disinclination": "category : disinclination", 1364 | "disinfection": "category : disinfection", 1365 | "dispatch": "category : dispatch", 1366 | "echappee": "category : echappee", 1367 | "edge case": "post_tag : edge-case", 1368 | "Edge Case": "category : edge-case-2", 1369 | "enphagy": "category : enphagy", 1370 | "equipollent": "category : equipollent", 1371 | "fatuity": "category : fatuity", 1372 | "Foo A": "category : foo-a-foo-parent", 1373 | "Foo Parent": "category : foo-parent", 1374 | "gaberlunzie": "category : gaberlunzie", 1375 | "Grandchild Category": "category : grandchild-category", 1376 | "illtempered": "category : illtempered", 1377 | "insubordination": "category : insubordination", 1378 | "lender": "category : lender", 1379 | "Markup": "category : markup", 1380 | "Media": "category : media-2", 1381 | "monosyllable": "category : monosyllable", 1382 | "packthread": "category : packthread", 1383 | "palter": "category : palter", 1384 | "papilionaceous": "category : papilionaceous", 1385 | "Parent": "category : parent", 1386 | "Parent Category": "category : parent-category", 1387 | "personable": "category : personable", 1388 | "Post Formats": "category : post-formats", 1389 | "propylaeum": "category : propylaeum", 1390 | "pustule": "category : pustule", 1391 | "quartern": "category : quartern", 1392 | "scholarship": "category : scholarship", 1393 | "selfconvicted": "category : selfconvicted", 1394 | "showshoe": "category : showshoe", 1395 | "sloyd": "category : sloyd", 1396 | "sub": "category : sub", 1397 | "sublunary": "category : sublunary", 1398 | "tamtam": "category : tamtam", 1399 | "Unpublished": "category : unpublished", 1400 | "weakhearted": "category : weakhearted", 1401 | "ween": "category : ween", 1402 | "wellhead": "category : wellhead", 1403 | "wellintentioned": "category : wellintentioned", 1404 | "whetstone": "category : whetstone", 1405 | "years": "category : years" 1406 | }, 1407 | "wp:postmeta": { 1408 | "_wp_old_slug": "168", 1409 | "_publicize_pending": "1", 1410 | "original_post_id": "168" 1411 | }, 1412 | "wp_link_path": "2009/07/02" 1413 | }, 1414 | "scheduled": { 1415 | "slug": "scheduled", 1416 | "title": "Scheduled", 1417 | "link": "http://wpthemetestdata.wordpress.com/2020/01/01/scheduled/", 1418 | "pubDate": "Wed, 01 Jan 2020 19:00:18 +0000", 1419 | "dc:creator": "themedemos", 1420 | "guid": "http://wpthemetestdata.wordpress.com/?p=418", 1421 | "guid:isPermaLink": "false", 1422 | "description": "", 1423 | "excerpt:encoded": "", 1424 | "wp:post_id": "1153", 1425 | "wp:post_date": "2020-01-01 12:00:18", 1426 | "wp:post_date_gmt": "2020-01-01 19:00:18", 1427 | "wp:comment_status": "closed", 1428 | "wp:ping_status": "closed", 1429 | "wp:post_name": "scheduled", 1430 | "wp:status": "future", 1431 | "wp:post_parent": "0", 1432 | "wp:menu_order": "0", 1433 | "wp:post_type": "post", 1434 | "wp:post_password": "", 1435 | "wp:is_sticky": "0", 1436 | "category": { 1437 | "content": "post_tag : content-2", 1438 | "Unpublished": "category : unpublished" 1439 | }, 1440 | "wp:postmeta": { 1441 | "original_post_id": "418", 1442 | "_wp_old_slug": "418" 1443 | }, 1444 | "wp_link_path": "2020/01/01" 1445 | }, 1446 | "post-format-image": { 1447 | "slug": "post-format-image", 1448 | "title": "Post Format: Image", 1449 | "link": "http://wpthemetestdata.wordpress.com/2010/08/08/post-format-image/", 1450 | "pubDate": "Sun, 08 Aug 2010 12:00:39 +0000", 1451 | "dc:creator": "themedemos", 1452 | "guid": "http://wpthemetestdata.wordpress.com/?p=568", 1453 | "guid:isPermaLink": "false", 1454 | "description": "", 1455 | "excerpt:encoded": "", 1456 | "wp:post_id": "1158", 1457 | "wp:post_date": "2010-08-08 05:00:39", 1458 | "wp:post_date_gmt": "2010-08-08 12:00:39", 1459 | "wp:comment_status": "closed", 1460 | "wp:ping_status": "closed", 1461 | "wp:post_name": "post-format-image", 1462 | "wp:status": "publish", 1463 | "wp:post_parent": "0", 1464 | "wp:menu_order": "0", 1465 | "wp:post_type": "post", 1466 | "wp:post_password": "", 1467 | "wp:is_sticky": "0", 1468 | "category": { 1469 | "image": "post_tag : image", 1470 | "Post Formats": "category : post-formats", 1471 | "Image": "post_format : post-format-image" 1472 | }, 1473 | "wp:postmeta": { 1474 | "_publicize_pending": "1", 1475 | "_wp_old_slug": "568", 1476 | "original_post_id": "568" 1477 | }, 1478 | "wp_link_path": "2010/08/08" 1479 | }, 1480 | "post-format-video-youtube": { 1481 | "slug": "post-format-video-youtube", 1482 | "title": "Post Format: Video (YouTube)", 1483 | "link": "http://wpthemetestdata.wordpress.com/2010/06/02/post-format-video-youtube/", 1484 | "pubDate": "Wed, 02 Jun 2010 09:00:58 +0000", 1485 | "dc:creator": "themedemos", 1486 | "guid": "http://wpthemetestdata.wordpress.com/?p=582", 1487 | "guid:isPermaLink": "false", 1488 | "description": "", 1489 | "excerpt:encoded": "", 1490 | "wp:post_id": "1161", 1491 | "wp:post_date": "2010-06-02 02:00:58", 1492 | "wp:post_date_gmt": "2010-06-02 09:00:58", 1493 | "wp:comment_status": "closed", 1494 | "wp:ping_status": "closed", 1495 | "wp:post_name": "post-format-video-youtube", 1496 | "wp:status": "publish", 1497 | "wp:post_parent": "0", 1498 | "wp:menu_order": "0", 1499 | "wp:post_type": "post", 1500 | "wp:post_password": "", 1501 | "wp:is_sticky": "0", 1502 | "category": { 1503 | "Post Formats": "category : post-formats", 1504 | "Video": "post_format : post-format-video" 1505 | }, 1506 | "wp:postmeta": { 1507 | "_publicize_pending": "1", 1508 | "_wp_old_slug": "582", 1509 | "original_post_id": "582" 1510 | }, 1511 | "wp_link_path": "2010/06/02" 1512 | }, 1513 | "post-format-image-caption": { 1514 | "slug": "post-format-image-caption", 1515 | "title": "Post Format: Image (Caption)", 1516 | "link": "http://wpthemetestdata.wordpress.com/2010/08/07/post-format-image-caption/", 1517 | "pubDate": "Sat, 07 Aug 2010 13:00:19 +0000", 1518 | "dc:creator": "themedemos", 1519 | "guid": "http://wpthemetestdata.wordpress.com/?p=674", 1520 | "guid:isPermaLink": "false", 1521 | "description": "", 1522 | "excerpt:encoded": "", 1523 | "wp:post_id": "1163", 1524 | "wp:post_date": "2010-08-07 06:00:19", 1525 | "wp:post_date_gmt": "2010-08-07 13:00:19", 1526 | "wp:comment_status": "closed", 1527 | "wp:ping_status": "closed", 1528 | "wp:post_name": "post-format-image-caption", 1529 | "wp:status": "publish", 1530 | "wp:post_parent": "0", 1531 | "wp:menu_order": "0", 1532 | "wp:post_type": "post", 1533 | "wp:post_password": "", 1534 | "wp:is_sticky": "0", 1535 | "category": { 1536 | "image": "post_tag : image", 1537 | "Post Formats": "category : post-formats", 1538 | "Image": "post_format : post-format-image", 1539 | "shortcode": "post_tag : shortcode" 1540 | }, 1541 | "wp:postmeta": { 1542 | "_publicize_pending": "1", 1543 | "_wp_old_slug": "674", 1544 | "original_post_id": "674", 1545 | "_thumbnail_id": "1628", 1546 | "_format_url": "", 1547 | "_format_link_url": "", 1548 | "_format_quote_source_url": "", 1549 | "_format_quote_source_name": "", 1550 | "_format_image": "", 1551 | "_format_audio_embed": "", 1552 | "_format_video_embed": "" 1553 | }, 1554 | "wp_link_path": "2010/08/07" 1555 | }, 1556 | "template-password-protected": { 1557 | "slug": "template-password-protected", 1558 | "title": "Template: Password Protected (the password is \"enter\")", 1559 | "link": "http://wpthemetestdata.wordpress.com/2012/01/04/template-password-protected/", 1560 | "pubDate": "Wed, 04 Jan 2012 16:38:05 +0000", 1561 | "dc:creator": "themedemos", 1562 | "guid": "http://wpthemetestdata.wordpress.com/2007/09/04/test-with-secret-password/", 1563 | "guid:isPermaLink": "false", 1564 | "description": "", 1565 | "excerpt:encoded": "", 1566 | "wp:post_id": "1168", 1567 | "wp:post_date": "2012-01-04 09:38:05", 1568 | "wp:post_date_gmt": "2012-01-04 16:38:05", 1569 | "wp:comment_status": "closed", 1570 | "wp:ping_status": "closed", 1571 | "wp:post_name": "template-password-protected", 1572 | "wp:status": "publish", 1573 | "wp:post_parent": "0", 1574 | "wp:menu_order": "0", 1575 | "wp:post_type": "post", 1576 | "wp:post_password": "enter", 1577 | "wp:is_sticky": "0", 1578 | "category": { 1579 | "password": "post_tag : password-2", 1580 | "template": "post_tag : template", 1581 | "Template": "category : template-2", 1582 | "Uncategorized": "category : uncategorized" 1583 | }, 1584 | "wp:postmeta": { 1585 | "_wp_old_slug": "131", 1586 | "_publicize_pending": "1", 1587 | "original_post_id": "131" 1588 | }, 1589 | "wp_link_path": "2012/01/04" 1590 | }, 1591 | "edge-case-no-title": { 1592 | "slug": "edge-case-no-title", 1593 | "title": "", 1594 | "link": "http://wpthemetestdata.wordpress.com/2009/09/05/edge-case-no-title/", 1595 | "pubDate": "Sat, 05 Sep 2009 16:00:23 +0000", 1596 | "dc:creator": "themedemos", 1597 | "guid": "http://wpthemetestdata.wordpress.com/2007/09/04/14/", 1598 | "guid:isPermaLink": "false", 1599 | "description": "", 1600 | "excerpt:encoded": "", 1601 | "wp:post_id": "1169", 1602 | "wp:post_date": "2009-09-05 09:00:23", 1603 | "wp:post_date_gmt": "2009-09-05 16:00:23", 1604 | "wp:comment_status": "closed", 1605 | "wp:ping_status": "closed", 1606 | "wp:post_name": "edge-case-no-title", 1607 | "wp:status": "publish", 1608 | "wp:post_parent": "0", 1609 | "wp:menu_order": "0", 1610 | "wp:post_type": "post", 1611 | "wp:post_password": "", 1612 | "wp:is_sticky": "0", 1613 | "category": { 1614 | "edge case": "post_tag : edge-case", 1615 | "Edge Case": "category : edge-case-2", 1616 | "layout": "post_tag : layout", 1617 | "title": "post_tag : title" 1618 | }, 1619 | "wp:postmeta": { 1620 | "_publicize_pending": "1", 1621 | "_wp_old_slug": "no-title-2", 1622 | "original_post_id": "133" 1623 | }, 1624 | "wp_link_path": "2009/09/05" 1625 | }, 1626 | "edge-case-no-content": { 1627 | "slug": "edge-case-no-content", 1628 | "title": "Edge Case: No Content", 1629 | "link": "http://wpthemetestdata.wordpress.com/2009/08/06/edge-case-no-content/", 1630 | "pubDate": "Thu, 06 Aug 2009 16:39:56 +0000", 1631 | "dc:creator": "themedemos", 1632 | "guid": "http://wpthemetestdata.wordpress.com/2007/09/04/this-post-has-no-body/", 1633 | "guid:isPermaLink": "false", 1634 | "description": "", 1635 | "excerpt:encoded": "", 1636 | "wp:post_id": "1170", 1637 | "wp:post_date": "2009-08-06 09:39:56", 1638 | "wp:post_date_gmt": "2009-08-06 16:39:56", 1639 | "wp:comment_status": "closed", 1640 | "wp:ping_status": "closed", 1641 | "wp:post_name": "edge-case-no-content", 1642 | "wp:status": "publish", 1643 | "wp:post_parent": "0", 1644 | "wp:menu_order": "0", 1645 | "wp:post_type": "post", 1646 | "wp:post_password": "", 1647 | "wp:is_sticky": "0", 1648 | "category": { 1649 | "content": "post_tag : content-2", 1650 | "edge case": "post_tag : edge-case", 1651 | "Edge Case": "category : edge-case-2", 1652 | "layout": "post_tag : layout" 1653 | }, 1654 | "wp:postmeta": { 1655 | "_publicize_pending": "1", 1656 | "_wp_old_slug": "no-content", 1657 | "original_post_id": "134" 1658 | }, 1659 | "wp_link_path": "2009/08/06" 1660 | }, 1661 | "template-paginated": { 1662 | "slug": "template-paginated", 1663 | "title": "Template: Paginated", 1664 | "link": "http://wpthemetestdata.wordpress.com/2012/01/08/template-paginated/", 1665 | "pubDate": "Sun, 08 Jan 2012 17:00:20 +0000", 1666 | "dc:creator": "themedemos", 1667 | "guid": "http://noeltest.wordpress.com/?p=188", 1668 | "guid:isPermaLink": "false", 1669 | "description": "", 1670 | "excerpt:encoded": "", 1671 | "wp:post_id": "1171", 1672 | "wp:post_date": "2012-01-08 10:00:20", 1673 | "wp:post_date_gmt": "2012-01-08 17:00:20", 1674 | "wp:comment_status": "closed", 1675 | "wp:ping_status": "closed", 1676 | "wp:post_name": "template-paginated", 1677 | "wp:status": "publish", 1678 | "wp:post_parent": "0", 1679 | "wp:menu_order": "0", 1680 | "wp:post_type": "post", 1681 | "wp:post_password": "", 1682 | "wp:is_sticky": "0", 1683 | "category": { 1684 | "content": "post_tag : content-2", 1685 | "pagination": "post_tag : pagination", 1686 | "template": "post_tag : template", 1687 | "Template": "category : template-2", 1688 | "Uncategorized": "category : uncategorized" 1689 | }, 1690 | "wp:postmeta": { 1691 | "_publicize_pending": "1", 1692 | "_wp_old_slug": "paginated", 1693 | "original_post_id": "188" 1694 | }, 1695 | "wp_link_path": "2012/01/08" 1696 | }, 1697 | "markup-title-with-markup": { 1698 | "slug": "markup-title-with-markup", 1699 | "title": "Markup: Title With Markup", 1700 | "link": "http://wpthemetestdata.wordpress.com/2013/01/05/markup-title-with-markup/", 1701 | "pubDate": "Sat, 05 Jan 2013 17:00:49 +0000", 1702 | "dc:creator": "themedemos", 1703 | "guid": "http://wptest.io/demo/?p=861", 1704 | "guid:isPermaLink": "false", 1705 | "description": "", 1706 | "excerpt:encoded": "", 1707 | "wp:post_id": "1173", 1708 | "wp:post_date": "2013-01-05 10:00:49", 1709 | "wp:post_date_gmt": "2013-01-05 17:00:49", 1710 | "wp:comment_status": "closed", 1711 | "wp:ping_status": "closed", 1712 | "wp:post_name": "markup-title-with-markup", 1713 | "wp:status": "publish", 1714 | "wp:post_parent": "0", 1715 | "wp:menu_order": "0", 1716 | "wp:post_type": "post", 1717 | "wp:post_password": "", 1718 | "wp:is_sticky": "0", 1719 | "category": { 1720 | "css": "post_tag : css", 1721 | "html": "post_tag : html", 1722 | "Markup": "category : markup", 1723 | "title": "post_tag : title" 1724 | }, 1725 | "wp:postmeta": { 1726 | "_publicize_pending": "1", 1727 | "original_post_id": "861", 1728 | "_wp_old_slug": "title-with-markup" 1729 | }, 1730 | "wp_link_path": "2013/01/05" 1731 | }, 1732 | "title-with-special-characters": { 1733 | "slug": "title-with-special-characters", 1734 | "title": "Markup: Title With Special Characters", 1735 | "link": "http://wpthemetestdata.wordpress.com/2013/01/05/title-with-special-characters/", 1736 | "pubDate": "Sat, 05 Jan 2013 18:00:20 +0000", 1737 | "dc:creator": "themedemos", 1738 | "guid": "http://wptest.io/demo/?p=867", 1739 | "guid:isPermaLink": "false", 1740 | "description": "", 1741 | "excerpt:encoded": "", 1742 | "wp:post_id": "1174", 1743 | "wp:post_date": "2013-01-05 11:00:20", 1744 | "wp:post_date_gmt": "2013-01-05 18:00:20", 1745 | "wp:comment_status": "closed", 1746 | "wp:ping_status": "closed", 1747 | "wp:post_name": "title-with-special-characters", 1748 | "wp:status": "publish", 1749 | "wp:post_parent": "0", 1750 | "wp:menu_order": "0", 1751 | "wp:post_type": "post", 1752 | "wp:post_password": "", 1753 | "wp:is_sticky": "0", 1754 | "category": { 1755 | "html": "post_tag : html", 1756 | "Markup": "category : markup", 1757 | "markup": "post_tag : markup-2", 1758 | "post": "post_tag : post", 1759 | "title": "post_tag : title" 1760 | }, 1761 | "wp:postmeta": { 1762 | "_publicize_pending": "1", 1763 | "original_post_id": "867", 1764 | "_wp_old_slug": "867" 1765 | }, 1766 | "wp_link_path": "2013/01/05" 1767 | }, 1768 | "title-should-not-overflow-the-content-area": { 1769 | "slug": "title-should-not-overflow-the-content-area", 1770 | "title": "Antidisestablishmentarianism", 1771 | "link": "http://wpthemetestdata.wordpress.com/2009/10/05/title-should-not-overflow-the-content-area/", 1772 | "pubDate": "Mon, 05 Oct 2009 19:00:59 +0000", 1773 | "dc:creator": "themedemos", 1774 | "guid": "http://wptest.io/demo/?p=877", 1775 | "guid:isPermaLink": "false", 1776 | "description": "", 1777 | "excerpt:encoded": "", 1778 | "wp:post_id": "1175", 1779 | "wp:post_date": "2009-10-05 12:00:59", 1780 | "wp:post_date_gmt": "2009-10-05 19:00:59", 1781 | "wp:comment_status": "closed", 1782 | "wp:ping_status": "closed", 1783 | "wp:post_name": "title-should-not-overflow-the-content-area", 1784 | "wp:status": "publish", 1785 | "wp:post_parent": "0", 1786 | "wp:menu_order": "0", 1787 | "wp:post_type": "post", 1788 | "wp:post_password": "", 1789 | "wp:is_sticky": "0", 1790 | "category": { 1791 | "content": "post_tag : content-2", 1792 | "css": "post_tag : css", 1793 | "edge case": "post_tag : edge-case", 1794 | "Edge Case": "category : edge-case-2", 1795 | "html": "post_tag : html", 1796 | "layout": "post_tag : layout", 1797 | "title": "post_tag : title" 1798 | }, 1799 | "wp:postmeta": { 1800 | "_wp_old_slug": "877", 1801 | "_publicize_pending": "1", 1802 | "original_post_id": "877" 1803 | }, 1804 | "wp_link_path": "2009/10/05" 1805 | }, 1806 | "markup-text-alignment": { 1807 | "slug": "markup-text-alignment", 1808 | "title": "Markup: Text Alignment", 1809 | "link": "http://wpthemetestdata.wordpress.com/2013/01/09/markup-text-alignment/", 1810 | "pubDate": "Wed, 09 Jan 2013 16:00:39 +0000", 1811 | "dc:creator": "themedemos", 1812 | "guid": "http://wptest.io/demo/?p=895", 1813 | "guid:isPermaLink": "false", 1814 | "description": "", 1815 | "excerpt:encoded": "", 1816 | "wp:post_id": "1176", 1817 | "wp:post_date": "2013-01-09 09:00:39", 1818 | "wp:post_date_gmt": "2013-01-09 16:00:39", 1819 | "wp:comment_status": "closed", 1820 | "wp:ping_status": "closed", 1821 | "wp:post_name": "markup-text-alignment", 1822 | "wp:status": "publish", 1823 | "wp:post_parent": "0", 1824 | "wp:menu_order": "0", 1825 | "wp:post_type": "post", 1826 | "wp:post_password": "", 1827 | "wp:is_sticky": "0", 1828 | "category": { 1829 | "alignment": "post_tag : alignment-2", 1830 | "content": "post_tag : content-2", 1831 | "css": "post_tag : css", 1832 | "Markup": "category : markup", 1833 | "markup": "post_tag : markup-2" 1834 | }, 1835 | "wp:postmeta": { 1836 | "_wp_old_slug": "895", 1837 | "_publicize_pending": "1", 1838 | "original_post_id": "895" 1839 | }, 1840 | "wp_link_path": "2013/01/09" 1841 | }, 1842 | "markup-image-alignment": { 1843 | "slug": "markup-image-alignment", 1844 | "title": "Markup: Image Alignment", 1845 | "link": "http://wpthemetestdata.wordpress.com/2013/01/10/markup-image-alignment/", 1846 | "pubDate": "Fri, 11 Jan 2013 03:15:40 +0000", 1847 | "dc:creator": "themedemos", 1848 | "guid": "http://wptest.io/demo/?p=903", 1849 | "guid:isPermaLink": "false", 1850 | "description": "", 1851 | "excerpt:encoded": "", 1852 | "wp:post_id": "1177", 1853 | "wp:post_date": "2013-01-10 20:15:40", 1854 | "wp:post_date_gmt": "2013-01-11 03:15:40", 1855 | "wp:comment_status": "closed", 1856 | "wp:ping_status": "closed", 1857 | "wp:post_name": "markup-image-alignment", 1858 | "wp:status": "publish", 1859 | "wp:post_parent": "0", 1860 | "wp:menu_order": "0", 1861 | "wp:post_type": "post", 1862 | "wp:post_password": "", 1863 | "wp:is_sticky": "0", 1864 | "category": { 1865 | "alignment": "post_tag : alignment-2", 1866 | "captions": "post_tag : captions-2", 1867 | "content": "post_tag : content-2", 1868 | "css": "post_tag : css", 1869 | "image": "post_tag : image", 1870 | "Markup": "category : markup", 1871 | "markup": "post_tag : markup-2" 1872 | }, 1873 | "wp:postmeta": { 1874 | "_thumbnail_id": "1023", 1875 | "_wp_old_slug": "903", 1876 | "_publicize_pending": "1", 1877 | "standard_seo_post_level_layout": "", 1878 | "standard_link_url_field": "", 1879 | "standard_seo_post_meta_description": "", 1880 | "original_post_id": "903" 1881 | }, 1882 | "wp_link_path": "2013/01/10" 1883 | }, 1884 | "markup-html-tags-and-formatting": { 1885 | "slug": "markup-html-tags-and-formatting", 1886 | "title": "Markup: HTML Tags and Formatting", 1887 | "link": "http://wpthemetestdata.wordpress.com/2013/01/11/markup-html-tags-and-formatting/", 1888 | "pubDate": "Sat, 12 Jan 2013 03:22:19 +0000", 1889 | "dc:creator": "themedemos", 1890 | "guid": "http://wptest.io/demo/?p=919", 1891 | "guid:isPermaLink": "false", 1892 | "description": "", 1893 | "excerpt:encoded": "", 1894 | "wp:post_id": "1178", 1895 | "wp:post_date": "2013-01-11 20:22:19", 1896 | "wp:post_date_gmt": "2013-01-12 03:22:19", 1897 | "wp:comment_status": "closed", 1898 | "wp:ping_status": "closed", 1899 | "wp:post_name": "markup-html-tags-and-formatting", 1900 | "wp:status": "publish", 1901 | "wp:post_parent": "0", 1902 | "wp:menu_order": "0", 1903 | "wp:post_type": "post", 1904 | "wp:post_password": "", 1905 | "wp:is_sticky": "0", 1906 | "category": { 1907 | "content": "post_tag : content-2", 1908 | "css": "post_tag : css", 1909 | "formatting": "post_tag : formatting-2", 1910 | "html": "post_tag : html", 1911 | "Markup": "category : markup", 1912 | "markup": "post_tag : markup-2" 1913 | }, 1914 | "wp:postmeta": { 1915 | "_wp_old_slug": "919", 1916 | "_publicize_pending": "1", 1917 | "standard_seo_post_level_layout": "", 1918 | "standard_link_url_field": "", 1919 | "standard_seo_post_meta_description": "", 1920 | "original_post_id": "919" 1921 | }, 1922 | "wp_link_path": "2013/01/11" 1923 | }, 1924 | "media-twitter-embeds": { 1925 | "slug": "media-twitter-embeds", 1926 | "title": "Media: Twitter Embeds", 1927 | "link": "http://wpthemetestdata.wordpress.com/2011/03/15/media-twitter-embeds/", 1928 | "pubDate": "Tue, 15 Mar 2011 22:47:16 +0000", 1929 | "dc:creator": "themedemos", 1930 | "guid": "http://wptest.io/demo/?p=1027", 1931 | "guid:isPermaLink": "false", 1932 | "description": "", 1933 | "excerpt:encoded": "", 1934 | "wp:post_id": "1179", 1935 | "wp:post_date": "2011-03-15 15:47:16", 1936 | "wp:post_date_gmt": "2011-03-15 22:47:16", 1937 | "wp:comment_status": "closed", 1938 | "wp:ping_status": "closed", 1939 | "wp:post_name": "media-twitter-embeds", 1940 | "wp:status": "publish", 1941 | "wp:post_parent": "0", 1942 | "wp:menu_order": "0", 1943 | "wp:post_type": "post", 1944 | "wp:post_password": "", 1945 | "wp:is_sticky": "0", 1946 | "category": { 1947 | "content": "post_tag : content-2", 1948 | "embeds": "post_tag : embeds-2", 1949 | "media": "post_tag : media", 1950 | "Media": "category : media-2", 1951 | "twitter": "post_tag : twitter-2" 1952 | }, 1953 | "wp:postmeta": { 1954 | "_publicize_pending": "1", 1955 | "standard_seo_post_level_layout": "", 1956 | "standard_link_url_field": "", 1957 | "standard_seo_post_meta_description": "", 1958 | "_wp_old_slug": "1027", 1959 | "original_post_id": "1027" 1960 | }, 1961 | "wp_link_path": "2011/03/15" 1962 | }, 1963 | "template-sticky": { 1964 | "slug": "template-sticky", 1965 | "title": "Template: Sticky", 1966 | "link": "http://wpthemetestdata.wordpress.com/2012/01/07/template-sticky/", 1967 | "pubDate": "Sat, 07 Jan 2012 14:07:21 +0000", 1968 | "dc:creator": "themedemos", 1969 | "guid": "http://wptest.io/demo/?p=1241", 1970 | "guid:isPermaLink": "false", 1971 | "description": "", 1972 | "excerpt:encoded": "", 1973 | "wp:post_id": "1241", 1974 | "wp:post_date": "2012-01-07 07:07:21", 1975 | "wp:post_date_gmt": "2012-01-07 14:07:21", 1976 | "wp:comment_status": "closed", 1977 | "wp:ping_status": "closed", 1978 | "wp:post_name": "template-sticky", 1979 | "wp:status": "publish", 1980 | "wp:post_parent": "0", 1981 | "wp:menu_order": "0", 1982 | "wp:post_type": "post", 1983 | "wp:post_password": "", 1984 | "wp:is_sticky": "1", 1985 | "category": { 1986 | "sticky": "post_tag : sticky-2", 1987 | "template": "post_tag : template", 1988 | "Uncategorized": "category : uncategorized" 1989 | }, 1990 | "wp:postmeta": { 1991 | "_publicize_pending": "1", 1992 | "standard_seo_post_level_layout": "", 1993 | "standard_link_url_field": "", 1994 | "standard_seo_post_meta_description": "", 1995 | "original_post_id": "1241", 1996 | "_wp_old_slug": "sticky" 1997 | }, 1998 | "wp_link_path": "2012/01/07" 1999 | }, 2000 | "template-excerpt-generated": { 2001 | "slug": "template-excerpt-generated", 2002 | "title": "Template: Excerpt (Generated)", 2003 | "link": "http://wpthemetestdata.wordpress.com/2012/03/14/template-excerpt-generated/", 2004 | "pubDate": "Wed, 14 Mar 2012 16:49:22 +0000", 2005 | "dc:creator": "themedemos", 2006 | "guid": "http://wpthemetestdata.wordpress.com/?p=1446", 2007 | "guid:isPermaLink": "false", 2008 | "description": "", 2009 | "excerpt:encoded": "", 2010 | "wp:post_id": "1446", 2011 | "wp:post_date": "2012-03-14 09:49:22", 2012 | "wp:post_date_gmt": "2012-03-14 16:49:22", 2013 | "wp:comment_status": "closed", 2014 | "wp:ping_status": "closed", 2015 | "wp:post_name": "template-excerpt-generated", 2016 | "wp:status": "publish", 2017 | "wp:post_parent": "0", 2018 | "wp:menu_order": "0", 2019 | "wp:post_type": "post", 2020 | "wp:post_password": "", 2021 | "wp:is_sticky": "0", 2022 | "category": { 2023 | "content": "post_tag : content-2", 2024 | "excerpt": "post_tag : excerpt-2", 2025 | "template": "post_tag : template", 2026 | "Template": "category : template-2", 2027 | "Uncategorized": "category : uncategorized" 2028 | }, 2029 | "wp:postmeta": { 2030 | "_publicize_pending": "1" 2031 | }, 2032 | "wp_link_path": "2012/03/14" 2033 | } 2034 | } 2035 | } -------------------------------------------------------------------------------- /example/build/_harp.json: -------------------------------------------------------------------------------- 1 | { 2 | "globals": { 3 | "wp_data": { 4 | "title": "Theme Unit Test Data", 5 | "link": "http://wpthemetestdata.wordpress.com", 6 | "description": "Just another WordPress website with a purposefully really long description", 7 | "pubDate": "Tue, 02 Sep 2014 17:16:26 +0000", 8 | "language": "en", 9 | "wp:wxr_version": "1.2", 10 | "wp:base_site_url": "http://wordpress.com/", 11 | "wp:base_blog_url": "http://wpthemetestdata.wordpress.com", 12 | "generator": "http://wordpress.com/" 13 | }, 14 | "wp_authors": [ 15 | { 16 | "login": "themedemos", 17 | "email": "themeshaperwp+demos@gmail.com", 18 | "display_name": "Theme Buster", 19 | "first_name": "", 20 | "last_name": "" 21 | }, 22 | { 23 | "login": "chipbennett", 24 | "email": "chip@chipbennett.net", 25 | "display_name": "Chip Bennett", 26 | "first_name": "", 27 | "last_name": "" 28 | }, 29 | { 30 | "login": "lance", 31 | "email": "lance@automattic.com", 32 | "display_name": "Lance Willett", 33 | "first_name": "", 34 | "last_name": "" 35 | }, 36 | { 37 | "login": "emiluzelac", 38 | "email": "emil@uzelac.me", 39 | "display_name": "Emil Uzelac", 40 | "first_name": "", 41 | "last_name": "" 42 | } 43 | ] 44 | } 45 | } -------------------------------------------------------------------------------- /example/build/_layout.jade: -------------------------------------------------------------------------------- 1 | doctype 2 | html 3 | head 4 | title #{ wp_data.title } 5 | meta(name="viewport", content="width=device-width, initial-scale=1.0") 6 | link(rel="stylesheet", href="/css/style.css") 7 | body 8 | - if (current.source==='index' && current.path[0]==='index') 9 | != yield 10 | - else 11 | - var slug = current.source 12 | - var post = public._data.wp_posts[slug] 13 | != partial("_partials/post", {post:post}) 14 | 15 | - var comments = public.comments._data[slug] 16 | - if (comments) 17 | != partial("_partials/comments", {comments:comments}) 18 | -------------------------------------------------------------------------------- /example/build/_linkInfo.json: -------------------------------------------------------------------------------- 1 | { 2 | "1164": { 3 | "converted_path": "/posts/1164.md", 4 | "wordpress_link": "/?p=1164", 5 | "wordpress_pver": "/?p=1164" 6 | }, 7 | "about": { 8 | "converted_path": "/posts/about.md", 9 | "wordpress_link": "/about", 10 | "wordpress_pver": "/?p=2" 11 | }, 12 | "lorem-ipsum": { 13 | "converted_path": "/posts/lorem-ipsum.md", 14 | "wordpress_link": "/lorem-ipsum", 15 | "wordpress_pver": "/?p=146" 16 | }, 17 | "page-with-comments": { 18 | "converted_path": "/posts/page-with-comments.md", 19 | "wordpress_link": "/about/page-with-comments", 20 | "wordpress_pver": "/?p=155" 21 | }, 22 | "page-with-comments-disabled": { 23 | "converted_path": "/posts/page-with-comments-disabled.md", 24 | "wordpress_link": "/about/page-with-comments-disabled", 25 | "wordpress_pver": "/?p=156" 26 | }, 27 | "level-3": { 28 | "converted_path": "/posts/level-3.md", 29 | "wordpress_link": "/level-1/level-2/level-3", 30 | "wordpress_pver": "/?p=172" 31 | }, 32 | "level-2": { 33 | "converted_path": "/posts/level-2.md", 34 | "wordpress_link": "/level-1/level-2", 35 | "wordpress_pver": "/?p=173" 36 | }, 37 | "level-1": { 38 | "converted_path": "/posts/level-1.md", 39 | "wordpress_link": "/level-1", 40 | "wordpress_pver": "/?p=174" 41 | }, 42 | "clearing-floats": { 43 | "converted_path": "/posts/clearing-floats.md", 44 | "wordpress_link": "/about/clearing-floats", 45 | "wordpress_pver": "/?p=501" 46 | }, 47 | "front-page": { 48 | "converted_path": "/posts/front-page.md", 49 | "wordpress_link": "/front-page", 50 | "wordpress_pver": "/?p=701" 51 | }, 52 | "blog": { 53 | "converted_path": "/posts/blog.md", 54 | "wordpress_link": "/blog", 55 | "wordpress_pver": "/?p=703" 56 | }, 57 | "post-format-standard": { 58 | "converted_path": "/posts/post-format-standard.md", 59 | "wordpress_link": "/2010/10/05/post-format-standard", 60 | "wordpress_pver": "/?p=358" 61 | }, 62 | "post-format-gallery": { 63 | "converted_path": "/posts/post-format-gallery.md", 64 | "wordpress_link": "/2010/09/10/post-format-gallery", 65 | "wordpress_pver": "/?p=555" 66 | }, 67 | "post-format-aside": { 68 | "converted_path": "/posts/post-format-aside.md", 69 | "wordpress_link": "/2010/05/09/post-format-aside", 70 | "wordpress_pver": "/?p=559" 71 | }, 72 | "post-format-chat": { 73 | "converted_path": "/posts/post-format-chat.md", 74 | "wordpress_link": "/2010/01/08/post-format-chat", 75 | "wordpress_pver": "/?p=562" 76 | }, 77 | "post-format-link": { 78 | "converted_path": "/posts/post-format-link.md", 79 | "wordpress_link": "/2010/03/07/post-format-link", 80 | "wordpress_pver": "/?p=565" 81 | }, 82 | "post-format-image-linked": { 83 | "converted_path": "/posts/post-format-image-linked.md", 84 | "wordpress_link": "/2010/08/06/post-format-image-linked", 85 | "wordpress_pver": "/?p=568" 86 | }, 87 | "post-format-quote": { 88 | "converted_path": "/posts/post-format-quote.md", 89 | "wordpress_link": "/2010/02/05/post-format-quote", 90 | "wordpress_pver": "/?p=575" 91 | }, 92 | "post-format-status": { 93 | "converted_path": "/posts/post-format-status.md", 94 | "wordpress_link": "/2010/04/04/post-format-status", 95 | "wordpress_pver": "/?p=579" 96 | }, 97 | "post-format-video-wordpresstv": { 98 | "converted_path": "/posts/post-format-video-wordpresstv.md", 99 | "wordpress_link": "/2010/06/03/post-format-video-wordpresstv", 100 | "wordpress_pver": "/?p=582" 101 | }, 102 | "post-format-audio": { 103 | "converted_path": "/posts/post-format-audio.md", 104 | "wordpress_link": "/2010/07/02/post-format-audio", 105 | "wordpress_pver": "/?p=587" 106 | }, 107 | "page-a": { 108 | "converted_path": "/posts/page-a.md", 109 | "wordpress_link": "/page-a", 110 | "wordpress_pver": "/?p=733" 111 | }, 112 | "page-b": { 113 | "converted_path": "/posts/page-b.md", 114 | "wordpress_link": "/page-b", 115 | "wordpress_pver": "/?p=735" 116 | }, 117 | "level-2a": { 118 | "converted_path": "/posts/level-2a.md", 119 | "wordpress_link": "/level-1/level-2a", 120 | "wordpress_pver": "/?p=742" 121 | }, 122 | "level-2b": { 123 | "converted_path": "/posts/level-2b.md", 124 | "wordpress_link": "/level-1/level-2b", 125 | "wordpress_pver": "/?p=744" 126 | }, 127 | "level-3a": { 128 | "converted_path": "/posts/level-3a.md", 129 | "wordpress_link": "/level-1/level-2/level-3a", 130 | "wordpress_pver": "/?p=746" 131 | }, 132 | "level-3b": { 133 | "converted_path": "/posts/level-3b.md", 134 | "wordpress_link": "/level-1/level-2/level-3b", 135 | "wordpress_pver": "/?p=748" 136 | }, 137 | "template-excerpt-defined": { 138 | "converted_path": "/posts/template-excerpt-defined.md", 139 | "wordpress_link": "/2012/03/15/template-excerpt-defined", 140 | "wordpress_pver": "/?p=993" 141 | }, 142 | "template-more-tag": { 143 | "converted_path": "/posts/template-more-tag.md", 144 | "wordpress_link": "/2012/03/15/template-more-tag", 145 | "wordpress_pver": "/?p=996" 146 | }, 147 | "edge-case-nested-and-mixed-lists": { 148 | "converted_path": "/posts/edge-case-nested-and-mixed-lists.md", 149 | "wordpress_link": "/2009/05/15/edge-case-nested-and-mixed-lists", 150 | "wordpress_pver": "/?p=1000" 151 | }, 152 | "post-format-video-videopress": { 153 | "converted_path": "/posts/post-format-video-videopress.md", 154 | "wordpress_link": "/2010/06/02/post-format-video-videopress", 155 | "wordpress_pver": "/?p=1005" 156 | }, 157 | "template-featured-image-horizontal": { 158 | "converted_path": "/posts/template-featured-image-horizontal.md", 159 | "wordpress_link": "/2012/03/15/template-featured-image-horizontal", 160 | "wordpress_pver": "/?p=1011" 161 | }, 162 | "template-featured-image-vertical": { 163 | "converted_path": "/posts/template-featured-image-vertical.md", 164 | "wordpress_link": "/2012/03/15/template-featured-image-vertical", 165 | "wordpress_pver": "/?p=1016" 166 | }, 167 | "post-format-gallery-tiled": { 168 | "converted_path": "/posts/post-format-gallery-tiled.md", 169 | "wordpress_link": "/2010/09/09/post-format-gallery-tiled", 170 | "wordpress_pver": "/?p=1031" 171 | }, 172 | "page-image-alignment": { 173 | "converted_path": "/posts/page-image-alignment.md", 174 | "wordpress_link": "/about/page-image-alignment", 175 | "wordpress_pver": "/?p=1133" 176 | }, 177 | "page-markup-and-formatting": { 178 | "converted_path": "/posts/page-markup-and-formatting.md", 179 | "wordpress_link": "/about/page-markup-and-formatting", 180 | "wordpress_pver": "/?p=1134" 181 | }, 182 | "template-comments": { 183 | "converted_path": "/posts/template-comments.md", 184 | "wordpress_link": "/2012/01/03/template-comments", 185 | "wordpress_pver": "/?p=1148" 186 | }, 187 | "template-pingbacks-an-trackbacks": { 188 | "converted_path": "/posts/template-pingbacks-an-trackbacks.md", 189 | "wordpress_link": "/2012/01/01/template-pingbacks-an-trackbacks", 190 | "wordpress_pver": "/?p=1149" 191 | }, 192 | "template-comments-disabled": { 193 | "converted_path": "/posts/template-comments-disabled.md", 194 | "wordpress_link": "/2012/01/02/template-comments-disabled", 195 | "wordpress_pver": "/?p=1150" 196 | }, 197 | "edge-case-many-tags": { 198 | "converted_path": "/posts/edge-case-many-tags.md", 199 | "wordpress_link": "/2009/06/01/edge-case-many-tags", 200 | "wordpress_pver": "/?p=1151" 201 | }, 202 | "edge-case-many-categories": { 203 | "converted_path": "/posts/edge-case-many-categories.md", 204 | "wordpress_link": "/2009/07/02/edge-case-many-categories", 205 | "wordpress_pver": "/?p=1152" 206 | }, 207 | "scheduled": { 208 | "converted_path": "/posts/scheduled.md", 209 | "wordpress_link": "/2020/01/01/scheduled", 210 | "wordpress_pver": "/?p=1153" 211 | }, 212 | "post-format-image": { 213 | "converted_path": "/posts/post-format-image.md", 214 | "wordpress_link": "/2010/08/08/post-format-image", 215 | "wordpress_pver": "/?p=1158" 216 | }, 217 | "post-format-video-youtube": { 218 | "converted_path": "/posts/post-format-video-youtube.md", 219 | "wordpress_link": "/2010/06/02/post-format-video-youtube", 220 | "wordpress_pver": "/?p=1161" 221 | }, 222 | "post-format-image-caption": { 223 | "converted_path": "/posts/post-format-image-caption.md", 224 | "wordpress_link": "/2010/08/07/post-format-image-caption", 225 | "wordpress_pver": "/?p=1163" 226 | }, 227 | "template-password-protected": { 228 | "converted_path": "/posts/template-password-protected.md", 229 | "wordpress_link": "/2012/01/04/template-password-protected", 230 | "wordpress_pver": "/?p=1168" 231 | }, 232 | "edge-case-no-title": { 233 | "converted_path": "/posts/edge-case-no-title.md", 234 | "wordpress_link": "/2009/09/05/edge-case-no-title", 235 | "wordpress_pver": "/?p=1169" 236 | }, 237 | "edge-case-no-content": { 238 | "converted_path": "/posts/edge-case-no-content.md", 239 | "wordpress_link": "/2009/08/06/edge-case-no-content", 240 | "wordpress_pver": "/?p=1170" 241 | }, 242 | "template-paginated": { 243 | "converted_path": "/posts/template-paginated.md", 244 | "wordpress_link": "/2012/01/08/template-paginated", 245 | "wordpress_pver": "/?p=1171" 246 | }, 247 | "markup-title-with-markup": { 248 | "converted_path": "/posts/markup-title-with-markup.md", 249 | "wordpress_link": "/2013/01/05/markup-title-with-markup", 250 | "wordpress_pver": "/?p=1173" 251 | }, 252 | "title-with-special-characters": { 253 | "converted_path": "/posts/title-with-special-characters.md", 254 | "wordpress_link": "/2013/01/05/title-with-special-characters", 255 | "wordpress_pver": "/?p=1174" 256 | }, 257 | "title-should-not-overflow-the-content-area": { 258 | "converted_path": "/posts/title-should-not-overflow-the-content-area.md", 259 | "wordpress_link": "/2009/10/05/title-should-not-overflow-the-content-area", 260 | "wordpress_pver": "/?p=1175" 261 | }, 262 | "markup-text-alignment": { 263 | "converted_path": "/posts/markup-text-alignment.md", 264 | "wordpress_link": "/2013/01/09/markup-text-alignment", 265 | "wordpress_pver": "/?p=1176" 266 | }, 267 | "markup-image-alignment": { 268 | "converted_path": "/posts/markup-image-alignment.md", 269 | "wordpress_link": "/2013/01/10/markup-image-alignment", 270 | "wordpress_pver": "/?p=1177" 271 | }, 272 | "markup-html-tags-and-formatting": { 273 | "converted_path": "/posts/markup-html-tags-and-formatting.md", 274 | "wordpress_link": "/2013/01/11/markup-html-tags-and-formatting", 275 | "wordpress_pver": "/?p=1178" 276 | }, 277 | "media-twitter-embeds": { 278 | "converted_path": "/posts/media-twitter-embeds.md", 279 | "wordpress_link": "/2011/03/15/media-twitter-embeds", 280 | "wordpress_pver": "/?p=1179" 281 | }, 282 | "template-sticky": { 283 | "converted_path": "/posts/template-sticky.md", 284 | "wordpress_link": "/2012/01/07/template-sticky", 285 | "wordpress_pver": "/?p=1241" 286 | }, 287 | "template-excerpt-generated": { 288 | "converted_path": "/posts/template-excerpt-generated.md", 289 | "wordpress_link": "/2012/03/14/template-excerpt-generated", 290 | "wordpress_pver": "/?p=1446" 291 | } 292 | } -------------------------------------------------------------------------------- /example/build/_partials/comments.jade: -------------------------------------------------------------------------------- 1 | 2 | h1 Comments 3 | each com in comments 4 | table 5 | each val, name in com 6 | tr 7 | td 8 | strong 9 | = name 10 | td 11 | = val 12 | hr 13 | -------------------------------------------------------------------------------- /example/build/_partials/post.jade: -------------------------------------------------------------------------------- 1 | h1 Post metadata 2 | 3 | table 4 | each val, name in post 5 | - if (name==='wp:comment') continue 6 | tr 7 | td 8 | strong 9 | = name 10 | td 11 | - if (name==='category' || name==='wp:postmeta') 12 | table 13 | each val2, name2 in val 14 | tr 15 | td 16 | = name2 17 | td 18 | = val2 19 | - else 20 | = val 21 | 22 | h1 Post content 23 | 24 | != yield 25 | 26 | 27 | -------------------------------------------------------------------------------- /example/build/comments/_data.json: -------------------------------------------------------------------------------- 1 | { 2 | "1164": [], 3 | "about": [], 4 | "lorem-ipsum": [], 5 | "page-with-comments": [ 6 | { 7 | "wp:comment_id": "167", 8 | "wp:comment_author": "Anon", 9 | "wp:comment_author_email": "anon@example.com", 10 | "wp:comment_author_url": "", 11 | "wp:comment_author_IP": "59.167.157.3", 12 | "wp:comment_date": "2007-09-04 10:49:28", 13 | "wp:comment_date_gmt": "2007-09-04 00:49:28", 14 | "wp:comment_content": "Anonymous comment.", 15 | "wp:comment_approved": "1", 16 | "wp:comment_type": "", 17 | "wp:comment_parent": "0", 18 | "wp:comment_user_id": "0" 19 | }, 20 | { 21 | "wp:comment_id": "168", 22 | "wp:comment_author": "tellyworthtest2", 23 | "wp:comment_author_email": "tellyworth+test2@gmail.com", 24 | "wp:comment_author_url": "", 25 | "wp:comment_author_IP": "59.167.157.3", 26 | "wp:comment_date": "2007-09-04 10:49:03", 27 | "wp:comment_date_gmt": "2007-09-04 00:49:03", 28 | "wp:comment_content": "Contributor comment.", 29 | "wp:comment_approved": "1", 30 | "wp:comment_type": "", 31 | "wp:comment_parent": "0", 32 | "wp:comment_user_id": "0" 33 | }, 34 | { 35 | "wp:comment_id": "169", 36 | "wp:comment_author": "John Doe", 37 | "wp:comment_author_email": "example@example.org", 38 | "wp:comment_author_url": "http://example.org", 39 | "wp:comment_author_IP": "59.167.157.3", 40 | "wp:comment_date": "2007-09-04 10:48:51", 41 | "wp:comment_date_gmt": "2007-09-04 17:48:51", 42 | "wp:comment_content": "Author comment.", 43 | "wp:comment_approved": "1", 44 | "wp:comment_type": "", 45 | "wp:comment_parent": "0", 46 | "wp:comment_user_id": "0" 47 | } 48 | ], 49 | "page-with-comments-disabled": [], 50 | "level-3": [], 51 | "level-2": [], 52 | "level-1": [], 53 | "clearing-floats": [], 54 | "front-page": [], 55 | "blog": [], 56 | "post-format-standard": [], 57 | "post-format-gallery": [], 58 | "post-format-aside": [], 59 | "post-format-chat": [], 60 | "post-format-link": [], 61 | "post-format-image-linked": [], 62 | "post-format-quote": [], 63 | "post-format-status": [], 64 | "post-format-video-wordpresstv": [], 65 | "post-format-audio": [], 66 | "page-a": [], 67 | "page-b": [], 68 | "level-2a": [], 69 | "level-2b": [], 70 | "level-3a": [], 71 | "level-3b": [], 72 | "template-excerpt-defined": [], 73 | "template-more-tag": [], 74 | "edge-case-nested-and-mixed-lists": [], 75 | "post-format-video-videopress": [], 76 | "template-featured-image-horizontal": [], 77 | "template-featured-image-vertical": [], 78 | "post-format-gallery-tiled": [], 79 | "page-image-alignment": [], 80 | "page-markup-and-formatting": [], 81 | "template-comments": [ 82 | { 83 | "wp:comment_id": "881", 84 | "wp:comment_author": "John Doe", 85 | "wp:comment_author_email": "example@example.org", 86 | "wp:comment_author_url": "http://example.org/", 87 | "wp:comment_author_IP": "59.167.157.3", 88 | "wp:comment_date": "2012-09-03 10:18:04", 89 | "wp:comment_date_gmt": "2012-09-03 17:18:04", 90 | "wp:comment_content": "

Headings

\n

Header one

\n

Header two

\n

Header three

\n

Header four

\n
Header five
\n
Header six
\n

Blockquotes

\nSingle line blockquote:\n
Stay hungry. Stay foolish.
\nMulti line blockquote with a cite reference:\n
People think focus means saying yes to the thing you've got to focus on. But that's not what it means at all. It means saying no to the hundred other good ideas that there are. You have to pick carefully. I'm actually as proud of the things we haven't done as the things I have done. Innovation is saying no to 1,000 things. Steve Jobs - Apple Worldwide Developers' Conference, 1997
\n

Tables

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
EmployeeSalary
John Saddington$1Because that's all Steve Job' needed for a salary.
Tom McFarlin$100KFor all the blogging he does.
Jared Erickson$100MPictures are worth a thousand words, right? So Tom x 1,000.
Chris Ames$100BWith hair like that?! Enough said...
\n

Definition Lists

\n
Definition List Title
Definition list division.
Startup
A startup company or startup is a company or temporary organization designed to search for a repeatable and scalable business model.
#dowork
Coined by Rob Dyrdek and his personal body guard Christopher \"Big Black\" Boykins, \"Do Work\" works as a self motivator, to motivating your friends.
Do It Live
I'll let Bill O'Reilly will explain this one.
\n

Unordered Lists (Nested)

\n\n

Ordered List (Nested)

\n
    \n\t
  1. List item one\n
      \n\t
    1. List item one\n
        \n\t
      1. List item one
      2. \n\t
      3. List item two
      4. \n\t
      5. List item three
      6. \n\t
      7. List item four
      8. \n
      \n
    2. \n\t
    3. List item two
    4. \n\t
    5. List item three
    6. \n\t
    7. List item four
    8. \n
    \n
  2. \n\t
  3. List item two
  4. \n\t
  5. List item three
  6. \n\t
  7. List item four
  8. \n
\n

HTML Tags

\nThese supported tags come from the WordPress.com code FAQ.\n\nAddress Tag\n\n
1 Infinite Loop\nCupertino, CA 95014\nUnited States
Anchor Tag (aka. Link)\n\nThis is an example of a link.\n\nAbbreviation Tag\n\nThe abbreviation srsly stands for \"seriously\".\n\nAcronym Tag\n\nThe acronym ftw stands for \"for the win\".\n\nBig Tag\n\nThese tests are a big deal, but this tag is no longer supported in HTML5.\n\nCite Tag\n\n\"Code is poetry.\" --Automattic\n\nCode Tag\n\nYou will learn later on in these tests that word-wrap: break-word; will be your best friend.\n\nDelete Tag\n\nThis tag will let you strikeout text, but this tag is no longer supported in HTML5 (use the <strike> instead).\n\nEmphasize Tag\n\nThe emphasize tag should italicize text.\n\nInsert Tag\n\nThis tag should denote inserted text.\n\nKeyboard Tag\n\nThis scarcely known tag emulates keyboard text, which is usually styled like the <code> tag.\n\nPreformatted Tag\n\nThis tag styles large blocks of code.\n
.post-title {\n  margin: 0 0 5px;\n  font-weight: bold;\n  font-size: 38px;\n  line-height: 1.2;\n}
\n\nQuote Tag\n\nDevelopers, developers, developers... --Steve Ballmer\n\nStrong Tag\n\nThis tag shows bold text.\n\nSubscript Tag\n\nGetting our science styling on with H2O, which should push the \"2\" down.\n\nSuperscript Tag\n\nStill sticking with science and Isaac Newton's E = MC2, which should lift the 2 up.\n\nTeletype Tag\n\nThis rarely used tag emulates teletype text, which is usually styled like the <code> tag.\n\nVariable Tag\n\nThis allows you to denote variables.", 91 | "wp:comment_approved": "1", 92 | "wp:comment_type": "", 93 | "wp:comment_parent": "0", 94 | "wp:comment_user_id": "0" 95 | }, 96 | { 97 | "wp:comment_id": "899", 98 | "wp:comment_author": "Anonymous User", 99 | "wp:comment_author_email": "fake@email.com", 100 | "wp:comment_author_url": "", 101 | "wp:comment_author_IP": "67.3.69.40", 102 | "wp:comment_date": "2013-03-11 23:45:54", 103 | "wp:comment_date_gmt": "2013-03-12 04:45:54", 104 | "wp:comment_content": "This user it trying to be anonymous.\n\n\n They used a fake email, so there should be no Gravatar associated with it.\n They did not speify a website, so there should be no link to it in the comment.\n", 105 | "wp:comment_approved": "1", 106 | "wp:comment_type": "", 107 | "wp:comment_parent": "0", 108 | "wp:comment_user_id": "0" 109 | }, 110 | { 111 | "wp:comment_id": "900", 112 | "wp:comment_author": "Jane Doe", 113 | "wp:comment_author_email": "example@example.org", 114 | "wp:comment_author_url": "http://example.org/", 115 | "wp:comment_author_IP": "204.54.106.1", 116 | "wp:comment_date": "2013-03-12 13:17:35", 117 | "wp:comment_date_gmt": "2013-03-12 20:17:35", 118 | "wp:comment_content": "Comments? I love comments!", 119 | "wp:comment_approved": "1", 120 | "wp:comment_type": "", 121 | "wp:comment_parent": "0", 122 | "wp:comment_user_id": "0" 123 | }, 124 | { 125 | "wp:comment_id": "901", 126 | "wp:comment_author": "John Doe", 127 | "wp:comment_author_email": "example@example.org", 128 | "wp:comment_author_url": "http://example.org", 129 | "wp:comment_author_IP": "24.126.245.62", 130 | "wp:comment_date": "2013-03-14 07:53:26", 131 | "wp:comment_date_gmt": "2013-03-14 14:53:26", 132 | "wp:comment_content": "These tests are amazing!", 133 | "wp:comment_approved": "1", 134 | "wp:comment_type": "", 135 | "wp:comment_parent": "0", 136 | "wp:comment_user_id": "0" 137 | }, 138 | { 139 | "wp:comment_id": "903", 140 | "wp:comment_author": "John Doe", 141 | "wp:comment_author_email": "example@example.org", 142 | "wp:comment_author_url": "http://example.org/", 143 | "wp:comment_author_IP": "24.126.245.62", 144 | "wp:comment_date": "2013-03-14 07:56:46", 145 | "wp:comment_date_gmt": "2013-03-14 14:56:46", 146 | "wp:comment_content": "Author Comment.", 147 | "wp:comment_approved": "1", 148 | "wp:comment_type": "", 149 | "wp:comment_parent": "0", 150 | "wp:comment_user_id": "24783058" 151 | }, 152 | { 153 | "wp:comment_id": "904", 154 | "wp:comment_author": "John Doe", 155 | "wp:comment_author_email": "example@example.org", 156 | "wp:comment_author_url": "http://example.org/", 157 | "wp:comment_author_IP": "24.126.245.62", 158 | "wp:comment_date": "2013-03-14 07:57:01", 159 | "wp:comment_date_gmt": "2013-03-14 14:57:01", 160 | "wp:comment_content": "Comment Depth 01", 161 | "wp:comment_approved": "1", 162 | "wp:comment_type": "", 163 | "wp:comment_parent": "0", 164 | "wp:comment_user_id": "0" 165 | }, 166 | { 167 | "wp:comment_id": "905", 168 | "wp:comment_author": "Jane Bloggs", 169 | "wp:comment_author_email": "example@example.org", 170 | "wp:comment_author_url": "http://example.org/", 171 | "wp:comment_author_IP": "24.126.245.62", 172 | "wp:comment_date": "2013-03-14 08:01:21", 173 | "wp:comment_date_gmt": "2013-03-14 15:01:21", 174 | "wp:comment_content": "Comment Depth 02", 175 | "wp:comment_approved": "1", 176 | "wp:comment_type": "", 177 | "wp:comment_parent": "904", 178 | "wp:comment_user_id": "0" 179 | }, 180 | { 181 | "wp:comment_id": "906", 182 | "wp:comment_author": "Fred Bloggs", 183 | "wp:comment_author_email": "example@example.org", 184 | "wp:comment_author_url": "http://example.org/", 185 | "wp:comment_author_IP": "24.126.245.62", 186 | "wp:comment_date": "2013-03-14 08:02:06", 187 | "wp:comment_date_gmt": "2013-03-14 15:02:06", 188 | "wp:comment_content": "Comment Depth 03", 189 | "wp:comment_approved": "1", 190 | "wp:comment_type": "", 191 | "wp:comment_parent": "905", 192 | "wp:comment_user_id": "0" 193 | }, 194 | { 195 | "wp:comment_id": "907", 196 | "wp:comment_author": "Fred Bloggs", 197 | "wp:comment_author_email": "example@example.org", 198 | "wp:comment_author_url": "http://example.org/", 199 | "wp:comment_author_IP": "24.126.245.62", 200 | "wp:comment_date": "2013-03-14 08:03:22", 201 | "wp:comment_date_gmt": "2013-03-14 15:03:22", 202 | "wp:comment_content": "Comment Depth 04", 203 | "wp:comment_approved": "1", 204 | "wp:comment_type": "", 205 | "wp:comment_parent": "906", 206 | "wp:comment_user_id": "0" 207 | }, 208 | { 209 | "wp:comment_id": "910", 210 | "wp:comment_author": "Joe Bloggs", 211 | "wp:comment_author_email": "example@example.org", 212 | "wp:comment_author_url": "http://example.org/", 213 | "wp:comment_author_IP": "24.126.245.62", 214 | "wp:comment_date": "2013-03-14 08:10:29", 215 | "wp:comment_date_gmt": "2013-03-14 15:10:29", 216 | "wp:comment_content": "Comment Depth 05\n\nAlso an author comment.", 217 | "wp:comment_approved": "1", 218 | "wp:comment_type": "", 219 | "wp:comment_parent": "907", 220 | "wp:comment_user_id": "24783058" 221 | }, 222 | { 223 | "wp:comment_id": "911", 224 | "wp:comment_author": "Jane Bloggs", 225 | "wp:comment_author_email": "example@example.org", 226 | "wp:comment_author_url": "http://example.org/", 227 | "wp:comment_author_IP": "24.126.245.62", 228 | "wp:comment_date": "2013-03-14 08:12:16", 229 | "wp:comment_date_gmt": "2013-03-14 15:12:16", 230 | "wp:comment_content": "Comment Depth 06", 231 | "wp:comment_approved": "1", 232 | "wp:comment_type": "", 233 | "wp:comment_parent": "910", 234 | "wp:comment_user_id": "0" 235 | }, 236 | { 237 | "wp:comment_id": "912", 238 | "wp:comment_author": "Joe Bloggs", 239 | "wp:comment_author_email": "example@example.org", 240 | "wp:comment_author_url": "http://example.org/", 241 | "wp:comment_author_IP": "24.126.245.62", 242 | "wp:comment_date": "2013-03-14 08:12:58", 243 | "wp:comment_date_gmt": "2013-03-14 15:12:58", 244 | "wp:comment_content": "Comment Depth 07", 245 | "wp:comment_approved": "1", 246 | "wp:comment_type": "", 247 | "wp:comment_parent": "911", 248 | "wp:comment_user_id": "0" 249 | }, 250 | { 251 | "wp:comment_id": "913", 252 | "wp:comment_author": "Jane Bloggs", 253 | "wp:comment_author_email": "example@example.org", 254 | "wp:comment_author_url": "http://example.org/", 255 | "wp:comment_author_IP": "24.126.245.62", 256 | "wp:comment_date": "2013-03-14 08:13:42", 257 | "wp:comment_date_gmt": "2013-03-14 15:13:42", 258 | "wp:comment_content": "Comment Depth 08", 259 | "wp:comment_approved": "1", 260 | "wp:comment_type": "", 261 | "wp:comment_parent": "912", 262 | "wp:comment_user_id": "0" 263 | }, 264 | { 265 | "wp:comment_id": "914", 266 | "wp:comment_author": "Joe Bloggs", 267 | "wp:comment_author_email": "example@example.org", 268 | "wp:comment_author_url": "http://example.org/", 269 | "wp:comment_author_IP": "24.126.245.62", 270 | "wp:comment_date": "2013-03-14 08:14:13", 271 | "wp:comment_date_gmt": "2013-03-14 15:14:13", 272 | "wp:comment_content": "Comment Depth 09", 273 | "wp:comment_approved": "1", 274 | "wp:comment_type": "", 275 | "wp:comment_parent": "913", 276 | "wp:comment_user_id": "0" 277 | }, 278 | { 279 | "wp:comment_id": "915", 280 | "wp:comment_author": "John Doe", 281 | "wp:comment_author_email": "example@example.org", 282 | "wp:comment_author_url": "http://example.org/", 283 | "wp:comment_author_IP": "24.126.245.62", 284 | "wp:comment_date": "2013-03-14 08:14:47", 285 | "wp:comment_date_gmt": "2013-03-14 15:14:47", 286 | "wp:comment_content": "Comment Depth 10\n\nAlso an author comment.", 287 | "wp:comment_approved": "1", 288 | "wp:comment_type": "", 289 | "wp:comment_parent": "914", 290 | "wp:comment_user_id": "24783058" 291 | }, 292 | { 293 | "wp:comment_id": "917", 294 | "wp:comment_author": "Jane Doe", 295 | "wp:comment_author_email": "example@example.org", 296 | "wp:comment_author_url": "http://example.org/", 297 | "wp:comment_author_IP": "24.126.245.62", 298 | "wp:comment_date": "2013-03-14 09:56:43", 299 | "wp:comment_date_gmt": "2013-03-14 16:56:43", 300 | "wp:comment_content": "Image comment.\n\n", 301 | "wp:comment_approved": "1", 302 | "wp:comment_type": "", 303 | "wp:comment_parent": "0", 304 | "wp:comment_user_id": "0" 305 | }, 306 | { 307 | "wp:comment_id": "918", 308 | "wp:comment_author": "John Doe", 309 | "wp:comment_author_email": "example@example.org", 310 | "wp:comment_author_url": "http://example.org/", 311 | "wp:comment_author_IP": "24.126.245.62", 312 | "wp:comment_date": "2013-03-14 11:23:24", 313 | "wp:comment_date_gmt": "2013-03-14 18:23:24", 314 | "wp:comment_content": "We are totally going to blog about these tests!", 315 | "wp:comment_approved": "1", 316 | "wp:comment_type": "", 317 | "wp:comment_parent": "0", 318 | "wp:comment_user_id": "0" 319 | }, 320 | { 321 | "wp:comment_id": "919", 322 | "wp:comment_author": "John Doe", 323 | "wp:comment_author_email": "example@example.org", 324 | "wp:comment_author_url": "http://example.org/", 325 | "wp:comment_author_IP": "24.126.245.62", 326 | "wp:comment_date": "2013-03-14 11:27:54", 327 | "wp:comment_date_gmt": "2013-03-14 18:27:54", 328 | "wp:comment_content": "We use these tests all the time! Killer stuff!", 329 | "wp:comment_approved": "1", 330 | "wp:comment_type": "", 331 | "wp:comment_parent": "0", 332 | "wp:comment_user_id": "0" 333 | }, 334 | { 335 | "wp:comment_id": "920", 336 | "wp:comment_author": "Jane Doe", 337 | "wp:comment_author_email": "example@example.org", 338 | "wp:comment_author_url": "http://example.org/", 339 | "wp:comment_author_IP": "24.126.245.62", 340 | "wp:comment_date": "2013-03-14 11:30:33", 341 | "wp:comment_date_gmt": "2013-03-14 18:30:33", 342 | "wp:comment_content": "Thanks for all the comments, everyone!", 343 | "wp:comment_approved": "1", 344 | "wp:comment_type": "", 345 | "wp:comment_parent": "0", 346 | "wp:comment_user_id": "24783058" 347 | } 348 | ], 349 | "template-pingbacks-an-trackbacks": [ 350 | { 351 | "wp:comment_id": "921", 352 | "wp:comment_author": "Ping 1 « What’s a tellyworth?", 353 | "wp:comment_author_email": "", 354 | "wp:comment_author_url": "http://tellyworth.wordpress.com/2007/11/21/ping-1/", 355 | "wp:comment_author_IP": "72.232.101.12", 356 | "wp:comment_date": "2007-11-21 11:31:12", 357 | "wp:comment_date_gmt": "2007-11-21 01:31:12", 358 | "wp:comment_content": "[...] Trackback test. [...]", 359 | "wp:comment_approved": "1", 360 | "wp:comment_type": "pingback", 361 | "wp:comment_parent": "0", 362 | "wp:comment_user_id": "0" 363 | }, 364 | { 365 | "wp:comment_id": "922", 366 | "wp:comment_author": "Ping 2 with a much longer title than the previous ping, which was called Ping 1 « What’s a tellyworth?", 367 | "wp:comment_author_email": "", 368 | "wp:comment_author_url": "http://tellyworth.wordpress.com/2007/11/21/ping-2-with-a-much-longer-title-than-the-previous-ping-which-was-called-ping-1/", 369 | "wp:comment_author_IP": "72.232.101.12", 370 | "wp:comment_date": "2007-11-21 11:35:47", 371 | "wp:comment_date_gmt": "2007-11-21 01:35:47", 372 | "wp:comment_content": "[...] Another trackback test.  Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec hendrerit gravida nisi. Praesent libero odio, tincidunt nec, fringilla et, mollis ut, ipsum. Proin a lacus quis nisi pulvinar bibendum. Donec massa justo, dapibus at, imperdiet vestibulum, dapibus in, leo. Donec pretium tellus in dui. Phasellus tristique aliquet justo. Donec sodales. Nulla urna mi, molestie ac, malesuada sit amet, sagittis id, lacus. Mauris auctor leo ac justo. Proin convallis. Nulla eleifend dictum mi. Donec at lectus. Integer augue sapien, ornare vitae, rhoncus quis, rhoncus sed, sapien. Nunc mattis diam sodales diam.Etiam porttitor, ante sed varius semper, ante arcu rutrum tortor, at luctus nunc urna id nibh. Fusce sodales. Integer sed ligula. Donec posuere, nibh aliquet auctor congue, augue est porttitor odio, imperdiet facilisis tortor urna vel mauris. Pellentesque pretium, lorem non pellentesque varius, elit diam ultrices mi, sed posuere sapien lectus sed mi. Donec vestibulum urna. Donec gravida elit et enim. Ut dignissim neque ut erat. Morbi tincidunt nunc vitae lorem. Morbi rhoncus mi. Praesent facilisis tincidunt enim. Ut pulvinar. Suspendisse potenti. Vivamus turpis odio, porta at, malesuada in, iaculis eget, odio. Aenean faucibus, urna quis congue dignissim, orci tellus ornare leo, eget viverra ante ipsum sit amet magna. Suspendisse mattis nunc at justo. Nullam malesuada lobortis lorem. Morbi ultricies. Nam risus erat, sagittis ut, tristique rhoncus, luctus id, ante. Maecenas ac dui. [...]", 373 | "wp:comment_approved": "1", 374 | "wp:comment_type": "pingback", 375 | "wp:comment_parent": "0", 376 | "wp:comment_user_id": "0" 377 | }, 378 | { 379 | "wp:comment_id": "923", 380 | "wp:comment_author": "Ping 4 « What’s a tellyworth?", 381 | "wp:comment_author_email": "", 382 | "wp:comment_author_url": "http://tellyworth.wordpress.com/2007/11/21/ping-4/", 383 | "wp:comment_author_IP": "72.232.101.12", 384 | "wp:comment_date": "2007-11-21 11:39:25", 385 | "wp:comment_date_gmt": "2007-11-21 01:39:25", 386 | "wp:comment_content": "[...] Another short one. [...]", 387 | "wp:comment_approved": "1", 388 | "wp:comment_type": "pingback", 389 | "wp:comment_parent": "0", 390 | "wp:comment_user_id": "0" 391 | }, 392 | { 393 | "wp:comment_id": "924", 394 | "wp:comment_author": "Ping 3 « What’s a tellyworth?", 395 | "wp:comment_author_email": "", 396 | "wp:comment_author_url": "http://tellyworth.wordpress.com/2007/11/21/ping-3/", 397 | "wp:comment_author_IP": "72.232.101.12", 398 | "wp:comment_date": "2007-11-21 11:38:22", 399 | "wp:comment_date_gmt": "2007-11-21 01:38:22", 400 | "wp:comment_content": "[...] Just a short one. [...]", 401 | "wp:comment_approved": "1", 402 | "wp:comment_type": "pingback", 403 | "wp:comment_parent": "0", 404 | "wp:comment_user_id": "0" 405 | }, 406 | { 407 | "wp:comment_id": "925", 408 | "wp:comment_author": "John Doe", 409 | "wp:comment_author_email": "example@example.org", 410 | "wp:comment_author_url": "http://example.org/", 411 | "wp:comment_author_IP": "146.214.103.251", 412 | "wp:comment_date": "2010-06-11 15:27:04", 413 | "wp:comment_date_gmt": "2010-06-11 22:27:04", 414 | "wp:comment_content": "This is a comment amongst pingbacks and trackbacks.", 415 | "wp:comment_approved": "1", 416 | "wp:comment_type": "", 417 | "wp:comment_parent": "0", 418 | "wp:comment_user_id": "0" 419 | } 420 | ], 421 | "template-comments-disabled": [], 422 | "edge-case-many-tags": [], 423 | "edge-case-many-categories": [], 424 | "scheduled": [], 425 | "post-format-image": [], 426 | "post-format-video-youtube": [], 427 | "post-format-image-caption": [], 428 | "template-password-protected": [ 429 | { 430 | "wp:comment_id": "926", 431 | "wp:comment_author": "Jane Doe", 432 | "wp:comment_author_email": "example@example.org", 433 | "wp:comment_author_url": "http://example.org/", 434 | "wp:comment_author_IP": "24.126.245.62", 435 | "wp:comment_date": "2013-03-14 11:56:08", 436 | "wp:comment_date_gmt": "2013-03-14 18:56:08", 437 | "wp:comment_content": "This comment should not be visible until the password is entered.", 438 | "wp:comment_approved": "1", 439 | "wp:comment_type": "", 440 | "wp:comment_parent": "0", 441 | "wp:comment_user_id": "0" 442 | } 443 | ], 444 | "edge-case-no-title": [], 445 | "edge-case-no-content": [ 446 | { 447 | "wp:comment_id": "927", 448 | "wp:comment_author": "John Doe", 449 | "wp:comment_author_email": "example@example.org", 450 | "wp:comment_author_url": "http://example.org/", 451 | "wp:comment_author_IP": "24.126.245.62", 452 | "wp:comment_date": "2013-03-14 12:35:07", 453 | "wp:comment_date_gmt": "2013-03-14 19:35:07", 454 | "wp:comment_content": "Having no content in the post should have no adverse effects on the layout or functionality.", 455 | "wp:comment_approved": "1", 456 | "wp:comment_type": "", 457 | "wp:comment_parent": "0", 458 | "wp:comment_user_id": "0" 459 | } 460 | ], 461 | "template-paginated": [], 462 | "markup-title-with-markup": [], 463 | "title-with-special-characters": [], 464 | "title-should-not-overflow-the-content-area": [], 465 | "markup-text-alignment": [], 466 | "markup-image-alignment": [], 467 | "markup-html-tags-and-formatting": [], 468 | "media-twitter-embeds": [], 469 | "template-sticky": [], 470 | "template-excerpt-generated": [] 471 | } -------------------------------------------------------------------------------- /example/build/css/style.less: -------------------------------------------------------------------------------- 1 | body { 2 | font-family: "Helvetica"; 3 | padding: 40px; 4 | background: #f4f4f7; 5 | color: #444; 6 | margin: 0; 7 | } 8 | 9 | h1 { 10 | line-height: 1.2em; 11 | border-bottom: #CCC solid 1px; 12 | } 13 | 14 | h2 { 15 | font-weight: 300; 16 | padding-top: 20px; 17 | } 18 | 19 | 20 | 21 | ul li { 22 | list-style-type: none; 23 | } 24 | 25 | 26 | 27 | table { 28 | margin-left: 30px; 29 | } 30 | th, td { 31 | padding-right: 20px; 32 | vertical-align: top; 33 | } 34 | td table { 35 | margin-left: 0; 36 | } -------------------------------------------------------------------------------- /example/build/index.jade: -------------------------------------------------------------------------------- 1 | h1 Title: #{ wp_data.title } 2 | 3 | ul 4 | li 5 | h2 Metadata: 6 | table 7 | each val, name in wp_data 8 | tr 9 | td 10 | strong 11 | = name 12 | td 13 | = val 14 | 15 | 16 | if wp_authors.length 17 | li 18 | h2 Authors: 19 | - var once = true 20 | table 21 | each author in wp_authors 22 | if once 23 | - once = false 24 | tr 25 | each val, name in author 26 | th 27 | = name 28 | tr 29 | each val, name in author 30 | td 31 | = val 32 | 33 | - var posts = [] 34 | - var pages = [] 35 | each post in public._data.wp_posts 36 | - if (post['wp:post_type'] === 'post') posts.push(post) 37 | - if (post['wp:post_type'] === 'page') pages.push(post) 38 | 39 | if pages.length 40 | li 41 | h2 Pages: 42 | ul 43 | each post in pages 44 | li 45 | a(href="posts/#{post.slug}") #{post.title} 46 | 47 | if posts.length 48 | li 49 | h2 Posts: 50 | ul 51 | each post in posts 52 | li 53 | a(href="posts/#{post.slug}") #{post.title} 54 | -------------------------------------------------------------------------------- /example/build/posts/1164.md: -------------------------------------------------------------------------------- 1 | This post is drafted and not published yet. 2 | 3 | It should not be displayed by the theme. -------------------------------------------------------------------------------- /example/build/posts/about.md: -------------------------------------------------------------------------------- 1 | This site is using the standard WordPress Theme Unit Test Data for content. The Theme Unit Test is a series of posts and pages that match up with a checklist on the WordPress codex. You can use the data and checklist together to test your theme. 2 | 3 |

WordPress Theme Development Resources

4 | 5 |
    6 |
  1. See Theme Development for code standards, examples of best practices, and resources for Theme development.
  2. 7 |
  3. See Theme Unit Test for a robust test suite for your Theme and get the latest version of the test data you see here.
  4. 8 |
  5. See Theme Review for a guide to submitting your Theme to the Themes Directory.
  6. 9 |
-------------------------------------------------------------------------------- /example/build/posts/blog.md: -------------------------------------------------------------------------------- 1 | Use this static Page to test the Theme's handling of the Blog Posts Index page. If the site is set to display a static Page on the Front Page, and this Page is set to display the Blog Posts Index, then this text should not appear. -------------------------------------------------------------------------------- /example/build/posts/clearing-floats.md: -------------------------------------------------------------------------------- 1 | The last item in this page's content is a floated image. Make sure any elements after it are clearing properly. 2 | 3 | -------------------------------------------------------------------------------- /example/build/posts/edge-case-many-categories.md: -------------------------------------------------------------------------------- 1 | This post has many categories. -------------------------------------------------------------------------------- /example/build/posts/edge-case-many-tags.md: -------------------------------------------------------------------------------- 1 | This post has many tags. -------------------------------------------------------------------------------- /example/build/posts/edge-case-nested-and-mixed-lists.md: -------------------------------------------------------------------------------- 1 | Nested and mixed lists are an interesting beast. It's a corner case to make sure that 2 | 6 |

Ordered - Unordered - Ordered

7 |
    8 |
  1. ordered item
  2. 9 |
  3. ordered item 10 | 19 |
  4. 20 |
  5. ordered item
  6. 21 |
  7. ordered item
  8. 22 |
23 |

Ordered - Unordered - Unordered

24 |
    25 |
  1. ordered item
  2. 26 |
  3. ordered item 27 | 36 |
  4. 37 |
  5. ordered item
  6. 38 |
  7. ordered item
  8. 39 |
40 |

Unordered - Ordered - Unordered

41 | 57 |

Unordered - Unordered - Ordered

58 | -------------------------------------------------------------------------------- /example/build/posts/edge-case-no-content.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fenomas/wp2harp/284a7d75c97acb79c1444ec4d827475a778c3fa4/example/build/posts/edge-case-no-content.md -------------------------------------------------------------------------------- /example/build/posts/edge-case-no-title.md: -------------------------------------------------------------------------------- 1 | This post has no title, but it still must link to the single post view somehow. 2 | 3 | This is typically done by placing the permalink on the post date. -------------------------------------------------------------------------------- /example/build/posts/front-page.md: -------------------------------------------------------------------------------- 1 | Use this static Page to test the Theme's handling of the Front Page template file. 2 | 3 | This is the Front Page content. Use this static Page to test the Front Page output of the Theme. The Theme should properly handle both Blog Posts Index as Front Page and static Page as Front Page. 4 | 5 | If the site is set to display the Blog Posts Index as the Front Page, then this text should not be visible. If the site is set to display a static Page as the Front Page, then this text may or may not be visible. If the Theme does not include a front-page.php template file, then this text should appear on the Front Page when set to display a static Page. If the Theme does include a front-page.php template file, then this text may or may not appear. -------------------------------------------------------------------------------- /example/build/posts/level-1.md: -------------------------------------------------------------------------------- 1 | Level 1 of the reverse hierarchy test. This is to make sure the importer correctly assigns parents and children even when the children come first in the export file. -------------------------------------------------------------------------------- /example/build/posts/level-2.md: -------------------------------------------------------------------------------- 1 | Level 2 of the reverse hierarchy test. -------------------------------------------------------------------------------- /example/build/posts/level-2a.md: -------------------------------------------------------------------------------- 1 | (lorem ipsum) -------------------------------------------------------------------------------- /example/build/posts/level-2b.md: -------------------------------------------------------------------------------- 1 | (lorem ipsum) -------------------------------------------------------------------------------- /example/build/posts/level-3.md: -------------------------------------------------------------------------------- 1 | Level 3 of the reverse hierarchy test. -------------------------------------------------------------------------------- /example/build/posts/level-3a.md: -------------------------------------------------------------------------------- 1 | (lorem ipsum) -------------------------------------------------------------------------------- /example/build/posts/level-3b.md: -------------------------------------------------------------------------------- 1 | (lorem ipsum) -------------------------------------------------------------------------------- /example/build/posts/lorem-ipsum.md: -------------------------------------------------------------------------------- 1 | Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec mollis. Quisque convallis libero in sapien pharetra tincidunt. Aliquam elit ante, malesuada id, tempor eu, gravida id, odio. Maecenas suscipit, risus et eleifend imperdiet, nisi orci ullamcorper massa, et adipiscing orci velit quis magna. Praesent sit amet ligula id orci venenatis auctor. Phasellus porttitor, metus non tincidunt dapibus, orci pede pretium neque, sit amet adipiscing ipsum lectus et libero. Aenean bibendum. Curabitur mattis quam id urna. Vivamus dui. Donec nonummy lacinia lorem. Cras risus arcu, sodales ac, ultrices ac, mollis quis, justo. Sed a libero. Quisque risus erat, posuere at, tristique non, lacinia quis, eros. 2 | 3 | Cras volutpat, lacus quis semper pharetra, nisi enim dignissim est, et sollicitudin quam ipsum vel mi. Sed commodo urna ac urna. Nullam eu tortor. Curabitur sodales scelerisque magna. Donec ultricies tristique pede. Nullam libero. Nam sollicitudin felis vel metus. Nullam posuere molestie metus. Nullam molestie, nunc id suscipit rhoncus, felis mi vulputate lacus, a ultrices tortor dolor eget augue. Aenean ultricies felis ut turpis. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Suspendisse placerat tellus ac nulla. Proin adipiscing sem ac risus. Maecenas nisi. Cras semper. 4 | 5 | Praesent interdum mollis neque. In egestas nulla eget pede. Integer eu purus sed diam dictum scelerisque. Morbi cursus velit et felis. Maecenas faucibus aliquet erat. In aliquet rhoncus tellus. Integer auctor nibh a nunc fringilla tempus. Cras turpis urna, dignissim vel, suscipit pulvinar, rutrum quis, sem. Ut lobortis convallis dui. Sed nonummy orci a justo. Morbi nec diam eget eros eleifend tincidunt. 6 | 7 | Curabitur non elit. Pellentesque iaculis, nisl non aliquet adipiscing, purus urna aliquet orci, sed sodales pede neque at massa. Pellentesque laoreet, enim eget varius mollis, sapien erat suscipit metus, sit amet iaculis nulla sapien id felis. Aliquam erat volutpat. Nam congue nulla a ligula. Morbi tempor hendrerit erat. Curabitur augue. Vestibulum nulla est, commodo et, fringilla quis, bibendum eget, ipsum. Suspendisse pulvinar iaculis ante. Mauris dignissim ante quis nisi. Aliquam ante mi, aliquam et, pellentesque ac, dapibus et, enim. In vulputate justo vel magna. Phasellus imperdiet justo. Proin odio orci, dapibus id, porta a, pellentesque id, erat. Aliquam erat volutpat. Mauris nonummy varius libero. Sed dolor ipsum, tempor non, aliquet et, pulvinar quis, dui. Pellentesque mauris diam, lobortis id, varius varius, facilisis at, nulla. 8 | 9 | Cras pede. Nullam id velit sit amet turpis tincidunt sagittis. Nunc malesuada. Nunc consequat scelerisque odio. Donec eu leo. Nunc pellentesque felis sed odio. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vivamus lobortis metus in lectus. Cras mollis quam eget sapien. Pellentesque non lorem sit amet sem lacinia euismod. 10 | 11 | Nulla eget diam eget leo imperdiet consequat. Morbi nunc magna, pellentesque eu, porta at, ultricies ut, neque. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; In tincidunt. Praesent ut orci id eros congue ultrices. Mauris non neque. Donec nulla ante, molestie sit amet, fermentum nec, blandit sit amet, purus. Fusce eget diam eu odio iaculis mollis. Phasellus consectetuer pede quis nisi. Proin non sem ut elit pulvinar faucibus. In a turpis nec augue fringilla elementum. 12 | 13 | Nullam felis. Donec in nulla. Suspendisse sodales, turpis in suscipit ullamcorper, enim nunc sagittis risus, eu auctor velit tortor ut turpis. Mauris id augue at neque aliquam eleifend. Sed eget augue. Nunc faucibus ligula sed massa. Etiam non nulla. Etiam accumsan ullamcorper nisl. In pharetra massa at nunc. Nunc elementum. Duis sodales enim nec libero. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Praesent dapibus eros sodales urna. Duis magna nisi, lobortis quis, tincidunt rutrum, posuere non, ipsum. 14 | 15 | Aliquam convallis neque vitae diam. In diam. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Duis fermentum arcu in tortor. Sed nibh leo, rhoncus eu, fermentum et, scelerisque ac, massa. Cras id turpis. Etiam commodo sem luctus lorem. Morbi at mi. In rutrum. Aenean luctus pede euismod tortor. Phasellus dictum. Cras neque justo, venenatis sit amet, tristique et, vulputate in, dui. Etiam sed mi gravida sapien imperdiet dictum. Aliquam gravida orci a tortor. Donec tempor. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Vivamus risus ante, pellentesque vitae, luctus eget, scelerisque sed, libero. Donec massa. 16 | 17 | Donec libero mauris, volutpat at, convallis vel, laoreet euismod, augue. In accumsan malesuada risus. Mauris metus magna, condimentum in, nonummy non, ornare eu, velit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Proin posuere. Proin rhoncus rutrum lorem. Phasellus dignissim massa non libero volutpat tincidunt. In hac habitasse platea dictumst. Phasellus eget eros. Nulla in nulla. Vivamus quis mauris. Maecenas pharetra rhoncus tellus. Sed sit amet lacus. 18 | 19 | Quisque interdum felis a tellus. Aliquam sed diam ac velit aliquam rutrum. Morbi commodo, risus a pulvinar adipiscing, tortor pede posuere risus, ac ornare tellus massa nec lectus. Vivamus mollis metus ac sapien. Nam sed est a libero ullamcorper dapibus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Aenean a erat ac nibh accumsan volutpat. Phasellus pulvinar consequat turpis. Curabitur ante metus, tempus ut, consequat eu, sollicitudin sit amet, justo. Duis ut libero. 20 | 21 | Հայերեն 22 | 23 | Lorem Ipsum-ը տպագրության և տպագրական արդյունաբերության համար նախատեսված մոդելային տեքստ է: Սկսած 1500-ականներից` Lorem Ipsum-ը հանդիսացել է տպագրական արդյունաբերության ստանդարտ մոդելային տեքստ, ինչը մի անհայտ տպագրիչի կողմից տարբեր տառատեսակների օրինակների գիրք ստեղծելու ջանքերի արդյունք է: Այս տեքստը ոչ միայն կարողացել է գոյատևել հինգ դարաշրջան, այլև ներառվել է էլեկտրոնային տպագրության մեջ` մնալով էապես անփոփոխ: Այն հայտնի է դարձել 1960-ականներին Lorem Ipsum բովանդակող Letraset էջերի թողարկման արդյունքում, իսկ ավելի ուշ համակարգչային տպագրության այնպիսի ծրագրերի թողարկման հետևանքով, ինչպիսին է Aldus PageMaker-ը, որը ներառում է Lorem Ipsum-ի տարատեսակներ: 24 | 25 | Български 26 | 27 | Lorem Ipsum е елементарен примерен текст, използван в печатарската и типографската индустрия. Lorem Ipsum е индустриален стандарт от около 1500 година, когато неизвестен печатар взема няколко печатарски букви и ги разбърква, за да напечата с тях книга с примерни шрифтове. Този начин не само е оцелял повече от 5 века, но е навлязъл и в публикуването на електронни издания като е запазен почти без промяна. Популяризиран е през 60те години на 20ти век със издаването на Letraset листи, съдържащи Lorem Ipsum пасажи, популярен е и в наши дни във софтуер за печатни издания като Aldus PageMaker, който включва различни версии на Lorem Ipsum. 28 | 29 | Català 30 | 31 | Lorem Ipsum és un text de farciment usat per la indústria de la tipografia i la impremta. Lorem Ipsum ha estat el text estàndard de la indústria des de l'any 1500, quan un impressor desconegut va fer servir una galerada de text i la va mesclar per crear un llibre de mostres tipogràfiques. No només ha sobreviscut cinc segles, sinó que ha fet el salt cap a la creació de tipus de lletra electrònics, romanent essencialment sense canvis. Es va popularitzar l'any 1960 amb el llançament de fulls Letraset que contenien passatges de Lorem Ipsum, i més recentment amb programari d'autoedició com Aldus Pagemaker que inclou versions de Lorem Ipsum. 32 | 33 | Hrvatski 34 | 35 | Lorem Ipsum je jednostavno probni tekst koji se koristi u tiskarskoj i slovoslagarskoj industriji. Lorem Ipsum postoji kao industrijski standard još od 16-og stoljeća, kada je nepoznati tiskar uzeo tiskarsku galiju slova i posložio ih da bi napravio knjigu s uzorkom tiska. Taj je tekst ne samo preživio pet stoljeća, već se i vinuo u svijet elektronskog slovoslagarstva, ostajući u suštini nepromijenjen. Postao je popularan tijekom 1960-ih s pojavom Letraset listova s odlomcima Lorem Ipsum-a, a u skorije vrijeme sa software-om za stolno izdavaštvo kao što je Aldus PageMaker koji također sadrži varijante Lorem Ipsum-a. 36 | 37 | Česky 38 | 39 | Lorem Ipsum je demonstrativní výplňový text používaný v tiskařském a knihařském průmyslu. Lorem Ipsum je považováno za standard v této oblasti už od začátku 16. století, kdy dnes neznámý tiskař vzal kusy textu a na jejich základě vytvořil speciální vzorovou knihu. Jeho odkaz nevydržel pouze pět století, on přežil i nástup elektronické sazby v podstatě beze změny. Nejvíce popularizováno bylo Lorem Ipsum v šedesátých letech 20. století, kdy byly vydávány speciální vzorníky s jeho pasážemi a později pak díky počítačovým DTP programům jako Aldus PageMaker. 40 | 41 | Româna 42 | 43 | Lorem Ipsum este pur şi simplu o machetă pentru text a industriei tipografice. Lorem Ipsum a fost macheta standard a industriei încă din secolul al XVI-lea, când un tipograf anonim a luat o planşetă de litere şi le-a amestecat pentru a crea o carte demonstrativă pentru literele respective. Nu doar că a supravieţuit timp de cinci secole, dar şi a facut saltul în tipografia electronică practic neschimbată. A fost popularizată în anii '60 odată cu ieşirea colilor Letraset care conţineau pasaje Lorem Ipsum, iar mai recent, prin programele de publicare pentru calculator, ca Aldus PageMaker care includeau versiuni de Lorem Ipsum. 44 | 45 | Српски 46 | 47 | Lorem Ipsum је једноставно модел текста који се користи у штампарској и словослагачкој индустрији. Lorem ipsum је био стандард за модел текста још од 1500. године, када је непознати штампар узео кутију са словима и сложио их како би направио узорак књиге. Не само што је овај модел опстао пет векова, него је чак почео да се користи и у електронским медијима, непроменивши се. Популаризован је шездесетих година двадесетог века заједно са листовима летерсета који су садржали Lorem Ipsum пасусе, а данас са софтверским пакетом за прелом као што је Aldus PageMaker који је садржао Lorem Ipsum верзије. -------------------------------------------------------------------------------- /example/build/posts/markup-html-tags-and-formatting.md: -------------------------------------------------------------------------------- 1 |

Headings

2 |

Header one

3 |

Header two

4 |

Header three

5 |

Header four

6 |
Header five
7 |
Header six
8 |

Blockquotes

9 | Single line blockquote: 10 |
Stay hungry. Stay foolish.
11 | Multi line blockquote with a cite reference: 12 |
People think focus means saying yes to the thing you've got to focus on. But that's not what it means at all. It means saying no to the hundred other good ideas that there are. You have to pick carefully. I'm actually as proud of the things we haven't done as the things I have done. Innovation is saying no to 1,000 things.
13 | Steve Jobs - Apple Worldwide Developers' Conference, 1997 14 |

Tables

15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 |
EmployeeSalary
John Doe$1Because that's all Steve Jobs needed for a salary.
Jane Doe$100KFor all the blogging she does.
Fred Bloggs$100MPictures are worth a thousand words, right? So Jane x 1,000.
Jane Bloggs$100BWith hair like that?! Enough said...
46 |

Definition Lists

47 |
Definition List Title
Definition list division.
Startup
A startup company or startup is a company or temporary organization designed to search for a repeatable and scalable business model.
#dowork
Coined by Rob Dyrdek and his personal body guard Christopher "Big Black" Boykins, "Do Work" works as a self motivator, to motivating your friends.
Do It Live
I'll let Bill O'Reilly will explain this one.
48 |

Unordered Lists (Nested)

49 | 69 |

Ordered List (Nested)

70 |
    71 |
  1. List item one 72 |
      73 |
    1. List item one 74 |
        75 |
      1. List item one
      2. 76 |
      3. List item two
      4. 77 |
      5. List item three
      6. 78 |
      7. List item four
      8. 79 |
      80 |
    2. 81 |
    3. List item two
    4. 82 |
    5. List item three
    6. 83 |
    7. List item four
    8. 84 |
    85 |
  2. 86 |
  3. List item two
  4. 87 |
  5. List item three
  6. 88 |
  7. List item four
  8. 89 |
90 |

HTML Tags

91 | These supported tags come from the WordPress.com code FAQ. 92 | 93 | Address Tag 94 | 95 |
1 Infinite Loop 96 | Cupertino, CA 95014 97 | United States
Anchor Tag (aka. Link) 98 | 99 | This is an example of a link. 100 | 101 | Abbreviation Tag 102 | 103 | The abbreviation srsly stands for "seriously". 104 | 105 | Acronym Tag (deprecated in HTML5) 106 | 107 | The acronym ftw stands for "for the win". 108 | 109 | Big Tag (deprecated in HTML5) 110 | 111 | These tests are a big deal, but this tag is no longer supported in HTML5. 112 | 113 | Cite Tag 114 | 115 | "Code is poetry." --Automattic 116 | 117 | Code Tag 118 | 119 | You will learn later on in these tests that word-wrap: break-word; will be your best friend. 120 | 121 | Delete Tag 122 | 123 | This tag will let you strikeout text, but this tag is no longer supported in HTML5 (use the <strike> instead). 124 | 125 | Emphasize Tag 126 | 127 | The emphasize tag should italicize text. 128 | 129 | Insert Tag 130 | 131 | This tag should denote inserted text. 132 | 133 | Keyboard Tag 134 | 135 | This scarcely known tag emulates keyboard text, which is usually styled like the <code> tag. 136 | 137 | Preformatted Tag 138 | 139 | This tag styles large blocks of code. 140 |
.post-title {
141 | 	margin: 0 0 5px;
142 | 	font-weight: bold;
143 | 	font-size: 38px;
144 | 	line-height: 1.2;
145 | 	and here's a line of some really, really, really, really long text, just to see how the PRE tag handles it and to find out how it overflows;
146 | }
147 | Quote Tag 148 | 149 | Developers, developers, developers... --Steve Ballmer 150 | 151 | Strike Tag (deprecated in HTML5) 152 | 153 | This tag shows strike-through text 154 | 155 | Strong Tag 156 | 157 | This tag shows bold text. 158 | 159 | Subscript Tag 160 | 161 | Getting our science styling on with H2O, which should push the "2" down. 162 | 163 | Superscript Tag 164 | 165 | Still sticking with science and Isaac Newton's E = MC2, which should lift the 2 up. 166 | 167 | Teletype Tag (deprecated in HTML5) 168 | 169 | This rarely used tag emulates teletype text, which is usually styled like the <code> tag. 170 | 171 | Variable Tag 172 | 173 | This allows you to denote variables. -------------------------------------------------------------------------------- /example/build/posts/markup-image-alignment.md: -------------------------------------------------------------------------------- 1 | Welcome to image alignment! The best way to demonstrate the ebb and flow of the various image positioning options is to nestle them snuggly among an ocean of words. Grab a paddle and let's get started. 2 | 3 | On the topic of alignment, it should be noted that users can choose from the options of NoneLeftRight, and Center. In addition, they also get the options of ThumbnailMediumLarge & Fullsize. 4 |

Image Alignment 580x300

5 | The image above happens to be centered. 6 | 7 | Image Alignment 150x150The rest of this paragraph is filler for the sake of seeing the text wrap around the 150x150 image, which is left aligned 8 | 9 | As you can see the should be some space above, below, and to the right of the image. The text should not be creeping on the image. Creeping is just not right. Images need breathing room too. Let them speak like you words. Let them do their jobs without any hassle from the text. In about one more sentence here, we'll see that the text moves from the right of the image down below the image in seamless transition. Again, letting the do it's thang. Mission accomplished! 10 | 11 | And now for a massively large image. It also has no alignment. 12 | 13 | Image Alignment 1200x400 14 | 15 | The image above, though 1200px wide, should not overflow the content area. It should remain contained with no visible disruption to the flow of content. 16 | 17 | Image Alignment 300x200 18 | 19 | And now we're going to shift things to the right align. Again, there should be plenty of room above, below, and to the left of the image. Just look at him there... Hey guy! Way to rock that right side. I don't care what the left aligned image says, you look great. Don't let anyone else tell you differently. 20 | 21 | In just a bit here, you should see the text start to wrap below the right aligned image and settle in nicely. There should still be plenty of room and everything should be sitting pretty. Yeah... Just like that. It never felt so good to be right. 22 | 23 | And just when you thought we were done, we're going to do them all over again with captions! 24 | 25 | [caption id="attachment_906" align="aligncenter" width="580"]Image Alignment 580x300 Look at 580x300 getting some caption love.[/caption] 26 | 27 | The image above happens to be centered. The caption also has a link in it, just to see if it does anything funky. 28 | 29 | [caption id="attachment_904" align="alignleft" width="150"]Image Alignment 150x150 Itty-bitty caption.[/caption] 30 | 31 | The rest of this paragraph is filler for the sake of seeing the text wrap around the 150x150 image, which is left aligned 32 | 33 | As you can see the should be some space above, below, and to the right of the image. The text should not be creeping on the image. Creeping is just not right. Images need breathing room too. Let them speak like you words. Let them do their jobs without any hassle from the text. In about one more sentence here, we'll see that the text moves from the right of the image down below the image in seamless transition. Again, letting the do it's thang. Mission accomplished! 34 | 35 | And now for a massively large image. It also has no alignment. 36 | 37 | [caption id="attachment_907" align="alignnone" width="1200"]Image Alignment 1200x400 Massive image comment for your eyeballs.[/caption] 38 | 39 | The image above, though 1200px wide, should not overflow the content area. It should remain contained with no visible disruption to the flow of content. 40 | 41 | [caption id="attachment_905" align="alignright" width="300"]Image Alignment 300x200 Feels good to be right all the time.[/caption] 42 | 43 | And now we're going to shift things to the right align. Again, there should be plenty of room above, below, and to the left of the image. Just look at him there... Hey guy! Way to rock that right side. I don't care what the left aligned image says, you look great. Don't let anyone else tell you differently. 44 | 45 | In just a bit here, you should see the text start to wrap below the right aligned image and settle in nicely. There should still be plenty of room and everything should be sitting pretty. Yeah... Just like that. It never felt so good to be right. 46 | 47 | And that's a wrap, yo! You survived the tumultuous waters of alignment. Image alignment achievement unlocked! -------------------------------------------------------------------------------- /example/build/posts/markup-text-alignment.md: -------------------------------------------------------------------------------- 1 |

Default

2 | This is a paragraph. It should not have any alignment of any kind. It should just flow like you would normally expect. Nothing fancy. Just straight up text, free flowing, with love. Completely neutral and not picking a side or sitting on the fence. It just is. It just freaking is. It likes where it is. It does not feel compelled to pick a side. Leave him be. It will just be better that way. Trust me. 3 |

Left Align

4 |

This is a paragraph. It is left aligned. Because of this, it is a bit more liberal in it's views. It's favorite color is green. Left align tends to be more eco-friendly, but it provides no concrete evidence that it really is. Even though it likes share the wealth evenly, it leaves the equal distribution up to justified alignment.

5 | 6 |

Center Align

7 |

This is a paragraph. It is center aligned. Center is, but nature, a fence sitter. A flip flopper. It has a difficult time making up its mind. It wants to pick a side. Really, it does. It has the best intentions, but it tends to complicate matters more than help. The best you can do is try to win it over and hope for the best. I hear center align does take bribes.

8 | 9 |

Right Align

10 |

This is a paragraph. It is right aligned. It is a bit more conservative in it's views. It's prefers to not be told what to do or how to do it. Right align totally owns a slew of guns and loves to head to the range for some practice. Which is cool and all. I mean, it's a pretty good shot from at least four or five football fields away. Dead on. So boss.

11 | 12 |

Justify Align

13 |

This is a paragraph. It is justify aligned. It gets really mad when people associate it with Justin Timberlake. Typically, justified is pretty straight laced. It likes everything to be in it's place and not all cattywampus like the rest of the aligns. I am not saying that makes it better than the rest of the aligns, but it does tend to put off more of an elitist attitude.

-------------------------------------------------------------------------------- /example/build/posts/markup-title-with-markup.md: -------------------------------------------------------------------------------- 1 | Verify that: 2 | -------------------------------------------------------------------------------- /example/build/posts/media-twitter-embeds.md: -------------------------------------------------------------------------------- 1 | https://twitter.com/nacin/status/319508408669708289 2 | 3 | This post tests WordPress' Twitter Embeds feature. -------------------------------------------------------------------------------- /example/build/posts/page-a.md: -------------------------------------------------------------------------------- 1 | Integer posuere erat a ante venenatis dapibus posuere velit aliquet. Aenean lacinia bibendum nulla sed consectetur. Etiam porta sem malesuada magna mollis euismod. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. -------------------------------------------------------------------------------- /example/build/posts/page-b.md: -------------------------------------------------------------------------------- 1 | (lorem ipsum) -------------------------------------------------------------------------------- /example/build/posts/page-image-alignment.md: -------------------------------------------------------------------------------- 1 | Welcome to image alignment! The best way to demonstrate the ebb and flow of the various image positioning options is to nestle them snuggly among an ocean of words. Grab a paddle and let's get started. 2 | 3 | On the topic of alignment, it should be noted that users can choose from the options of NoneLeftRight, and Center. In addition, they also get the options of ThumbnailMediumLarge & Fullsize. 4 |

Image Alignment 580x300

5 | The image above happens to be centered. 6 | 7 | Image Alignment 150x150The rest of this paragraph is filler for the sake of seeing the text wrap around the 150x150 image, which is left aligned 8 | 9 | As you can see the should be some space above, below, and to the right of the image. The text should not be creeping on the image. Creeping is just not right. Images need breathing room too. Let them speak like you words. Let them do their jobs without any hassle from the text. In about one more sentence here, we'll see that the text moves from the right of the image down below the image in seamless transition. Again, letting the do it's thang. Mission accomplished! 10 | 11 | And now for a massively large image. It also has no alignment. 12 | 13 | Image Alignment 1200x400 14 | 15 | The image above, though 1200px wide, should not overflow the content area. It should remain contained with no visible disruption to the flow of content. 16 | 17 | Image Alignment 300x200 18 | 19 | And now we're going to shift things to the right align. Again, there should be plenty of room above, below, and to the left of the image. Just look at him there... Hey guy! Way to rock that right side. I don't care what the left aligned image says, you look great. Don't let anyone else tell you differently. 20 | 21 | In just a bit here, you should see the text start to wrap below the right aligned image and settle in nicely. There should still be plenty of room and everything should be sitting pretty. Yeah... Just like that. It never felt so good to be right. 22 | 23 | And just when you thought we were done, we're going to do them all over again with captions! 24 | 25 | [caption id="attachment_906" align="aligncenter" width="580"]Image Alignment 580x300 Look at 580x300 getting some caption love.[/caption] 26 | 27 | The image above happens to be centered. The caption also has a link in it, just to see if it does anything funky. 28 | 29 | [caption id="attachment_904" align="alignleft" width="150"]Image Alignment 150x150 Itty-bitty caption.[/caption] 30 | 31 | The rest of this paragraph is filler for the sake of seeing the text wrap around the 150x150 image, which is left aligned 32 | 33 | As you can see the should be some space above, below, and to the right of the image. The text should not be creeping on the image. Creeping is just not right. Images need breathing room too. Let them speak like you words. Let them do their jobs without any hassle from the text. In about one more sentence here, we'll see that the text moves from the right of the image down below the image in seamless transition. Again, letting the do it's thang. Mission accomplished! 34 | 35 | And now for a massively large image. It also has no alignment. 36 | 37 | [caption id="attachment_907" align="alignnone" width="1200"]Image Alignment 1200x400 Massive image comment for your eyeballs.[/caption] 38 | 39 | The image above, though 1200px wide, should not overflow the content area. It should remain contained with no visible disruption to the flow of content. 40 | 41 | [caption id="attachment_905" align="alignright" width="300"]Image Alignment 300x200 Feels good to be right all the time.[/caption] 42 | 43 | And now we're going to shift things to the right align. Again, there should be plenty of room above, below, and to the left of the image. Just look at him there... Hey guy! Way to rock that right side. I don't care what the left aligned image says, you look great. Don't let anyone else tell you differently. 44 | 45 | In just a bit here, you should see the text start to wrap below the right aligned image and settle in nicely. There should still be plenty of room and everything should be sitting pretty. Yeah... Just like that. It never felt so good to be right. 46 | 47 | And that's a wrap, yo! You survived the tumultuous waters of alignment. Image alignment achievement unlocked! -------------------------------------------------------------------------------- /example/build/posts/page-markup-and-formatting.md: -------------------------------------------------------------------------------- 1 | Headings 2 |

Header one

3 |

Header two

4 |

Header three

5 |

Header four

6 |
Header five
7 |
Header six
8 |

Blockquotes

9 | Single line blockquote: 10 |
Stay hungry. Stay foolish.
11 | Multi line blockquote with a cite reference: 12 |
People think focus means saying yes to the thing you've got to focus on. But that's not what it means at all. It means saying no to the hundred other good ideas that there are. You have to pick carefully. I'm actually as proud of the things we haven't done as the things I have done. Innovation is saying no to 1,000 things. Steve Jobs - Apple Worldwide Developers' Conference, 1997
13 |

Tables

14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 |
EmployeeSalary
Jane$1Because that's all Steve Job' needed for a salary.
John$100KFor all the blogging he does.
Jane$100MPictures are worth a thousand words, right? So Tom x 1,000.
Jane$100BWith hair like that?! Enough said...
43 |

Definition Lists

44 |
Definition List Title
Definition list division.
Startup
A startup company or startup is a company or temporary organization designed to search for a repeatable and scalable business model.
#dowork
Coined by Rob Dyrdek and his personal body guard Christopher "Big Black" Boykins, "Do Work" works as a self motivator, to motivating your friends.
Do It Live
I'll let Bill O'Reilly will explain this one.
45 |

Unordered Lists (Nested)

46 | 66 |

Ordered List (Nested)

67 |
    68 |
  1. List item one 69 |
      70 |
    1. List item one 71 |
        72 |
      1. List item one
      2. 73 |
      3. List item two
      4. 74 |
      5. List item three
      6. 75 |
      7. List item four
      8. 76 |
      77 |
    2. 78 |
    3. List item two
    4. 79 |
    5. List item three
    6. 80 |
    7. List item four
    8. 81 |
    82 |
  2. 83 |
  3. List item two
  4. 84 |
  5. List item three
  6. 85 |
  7. List item four
  8. 86 |
87 |

HTML Tags

88 | These supported tags come from the WordPress.com code FAQ. 89 | 90 | Address Tag 91 | 92 |
1 Infinite Loop 93 | Cupertino, CA 95014 94 | United States
Anchor Tag (aka. Link) 95 | 96 | This is an example of a link. 97 | 98 | Abbreviation Tag 99 | 100 | The abbreviation srsly stands for "seriously". 101 | 102 | Acronym Tag 103 | 104 | The acronym ftw stands for "for the win". 105 | 106 | Big Tag 107 | 108 | These tests are a big deal, but this tag is no longer supported in HTML5. 109 | 110 | Cite Tag 111 | 112 | "Code is poetry." --Automattic 113 | 114 | Code Tag 115 | 116 | You will learn later on in these tests that word-wrap: break-word; will be your best friend. 117 | 118 | Delete Tag 119 | 120 | This tag will let you strikeout text, but this tag is no longer supported in HTML5 (use the <strike> instead). 121 | 122 | Emphasize Tag 123 | 124 | The emphasize tag should italicize text. 125 | 126 | Insert Tag 127 | 128 | This tag should denote inserted text. 129 | 130 | Keyboard Tag 131 | 132 | This scarcely known tag emulates keyboard text, which is usually styled like the <code> tag. 133 | 134 | Preformatted Tag 135 | 136 | This tag styles large blocks of code. 137 |
.post-title {
138 | 	margin: 0 0 5px;
139 | 	font-weight: bold;
140 | 	font-size: 38px;
141 | 	line-height: 1.2;
142 | }
143 | Quote Tag 144 | 145 | Developers, developers, developers... --Steve Ballmer 146 | 147 | Strong Tag 148 | 149 | This tag shows bold text. 150 | 151 | Subscript Tag 152 | 153 | Getting our science styling on with H2O, which should push the "2" down. 154 | 155 | Superscript Tag 156 | 157 | Still sticking with science and Isaac Newton's E = MC2, which should lift the 2 up. 158 | 159 | Teletype Tag 160 | 161 | This rarely used tag emulates teletype text, which is usually styled like the <code> tag. 162 | 163 | Variable Tag 164 | 165 | This allows you to denote variables. -------------------------------------------------------------------------------- /example/build/posts/page-with-comments-disabled.md: -------------------------------------------------------------------------------- 1 | This static Page is set not to allow comments. Verify that the Page does not display a comment list, comment reply links, or comment reply form. 2 | Also, verify that the Page does not display a "comments are closed" type message. Such messages are not suitable for static Pages, and should only be used on blog Posts. -------------------------------------------------------------------------------- /example/build/posts/page-with-comments.md: -------------------------------------------------------------------------------- 1 | Repository-hosted Themes are required to support display of comments on static Pages as well as on single blog Posts.  This static Page has comments, and these comments should be displayed. 2 | If the Theme includes a custom option to prevent static Pages from displaying comments, such option must be disabled (i.e. so that static Pages display comments) by default. 3 | Also, verify that this Page does not display taxonomy information (e.g. categories or tags) or time-stamp information (Page publish date/time). -------------------------------------------------------------------------------- /example/build/posts/post-format-aside.md: -------------------------------------------------------------------------------- 1 | “I never tried to prove nothing, just wanted to give a good show. My life has always been my music, it's always come first, but the music ain't worth nothing if you can't lay it on the public. The main thing is to live for that audience, 'cause what you're there for is to please the people.” -------------------------------------------------------------------------------- /example/build/posts/post-format-audio.md: -------------------------------------------------------------------------------- 1 | Link: 2 | 3 | St. Louis Blues 4 | 5 | Audio shortcode: 6 | 7 | [audio http://wpthemetestdata.files.wordpress.com/2008/06/originaldixielandjazzbandwithalbernard-stlouisblues.mp3] -------------------------------------------------------------------------------- /example/build/posts/post-format-chat.md: -------------------------------------------------------------------------------- 1 | Abbott: Strange as it may seem, they give ball players nowadays very peculiar names. 2 | 3 | Costello: Funny names? 4 | 5 | Abbott: Nicknames, nicknames. Now, on the St. Louis team we have Who's on first, What's on second, I Don't Know is on third-- 6 | 7 | Costello: That's what I want to find out. I want you to tell me the names of the fellows on the St. Louis team. 8 | 9 | Abbott: I'm telling you. Who's on first, What's on second, I Don't Know is on third-- 10 | 11 | Costello: You know the fellows' names? 12 | 13 | Abbott: Yes. 14 | 15 | Costello: Well, then who's playing first? 16 | 17 | Abbott: Yes. 18 | 19 | Costello: I mean the fellow's name on first base. 20 | 21 | Abbott: Who. 22 | 23 | Costello: The fellow playin' first base. 24 | 25 | Abbott: Who. 26 | 27 | Costello: The guy on first base. 28 | 29 | Abbott: Who is on first. 30 | 31 | Costello: Well, what are you askin' me for? 32 | 33 | Abbott: I'm not asking you--I'm telling you. Who is on first. 34 | 35 | Costello: I'm asking you--who's on first? 36 | 37 | Abbott: That's the man's name. 38 | 39 | Costello: That's who's name? 40 | 41 | Abbott: Yes. 42 | 43 | Costello: When you pay off the first baseman every month, who gets the money? 44 | 45 | Abbott: Every dollar of it. And why not, the man's entitled to it. 46 | 47 | Costello: Who is? 48 | 49 | Abbott: Yes. 50 | 51 | Costello: So who gets it? 52 | 53 | Abbott: Why shouldn't he? Sometimes his wife comes down and collects it. 54 | 55 | Costello: Who's wife? 56 | 57 | Abbott: Yes. After all, the man earns it. 58 | 59 | Costello: Who does? 60 | 61 | Abbott: Absolutely. 62 | 63 | Costello: Well, all I'm trying to find out is what's the guy's name on first base? 64 | 65 | Abbott: Oh, no, no. What is on second base. 66 | 67 | Costello: I'm not asking you who's on second. 68 | 69 | Abbott: Who's on first! 70 | 71 | Costello: St. Louis has a good outfield? 72 | 73 | Abbott: Oh, absolutely. 74 | 75 | Costello: The left fielder's name? 76 | 77 | Abbott: Why. 78 | 79 | Costello: I don't know, I just thought I'd ask. 80 | 81 | Abbott: Well, I just thought I'd tell you. 82 | 83 | Costello: Then tell me who's playing left field? 84 | 85 | Abbott: Who's playing first. 86 | 87 | Costello: Stay out of the infield! The left fielder's name? 88 | 89 | Abbott: Why. 90 | 91 | Costello: Because. 92 | 93 | Abbott: Oh, he's center field. 94 | 95 | Costello: Wait a minute. You got a pitcher on this team? 96 | 97 | Abbott: Wouldn't this be a fine team without a pitcher? 98 | 99 | Costello: Tell me the pitcher's name. 100 | 101 | Abbott: Tomorrow. 102 | 103 | Costello: Now, when the guy at bat bunts the ball--me being a good catcher--I want to throw the guy out at first base, so I pick up the ball and throw it to who? 104 | 105 | Abbott: Now, that's he first thing you've said right. 106 | 107 | Costello: I DON'T EVEN KNOW WHAT I'M TALKING ABOUT! 108 | 109 | Abbott: Don't get excited. Take it easy. 110 | 111 | Costello: I throw the ball to first base, whoever it is grabs the ball, so the guy runs to second. Who picks up the ball and throws it to what. What throws it to I don't know. I don't know throws it back to tomorrow--a triple play. 112 | 113 | Abbott: Yeah, it could be. 114 | 115 | Costello: Another guy gets up and it's a long ball to center. 116 | 117 | Abbott: Because. 118 | 119 | Costello: Why? I don't know. And I don't care. 120 | 121 | Abbott: What was that? 122 | 123 | Costello: I said, I DON'T CARE! 124 | 125 | Abbott: Oh, that's our shortstop! -------------------------------------------------------------------------------- /example/build/posts/post-format-gallery-tiled.md: -------------------------------------------------------------------------------- 1 | This is a test for Jetpack's Tiled Gallery. 2 | 3 | Install Jetpack to test. 4 | 5 | [gallery type="rectangular" columns="4" ids="755,757,758,760,766,763" orderby="rand"] 6 | 7 | This is some text after the Tiled Gallery just to make sure that everything spaces nicely. -------------------------------------------------------------------------------- /example/build/posts/post-format-gallery.md: -------------------------------------------------------------------------------- 1 | [gallery] 2 | 3 | 4 | 5 | You can use this page to test the Theme's handling of the[gallery] 6 | 7 | shortcode, including the columns parameter, from 1 to 9 columns. Themes are only required to support the default setting (3 columns), so this page is entirely optional. 8 |

One Column

9 | [gallery columns="1"] 10 |

Two Columns

11 | [gallery columns="2"] 12 |

Three Columns

13 | [gallery columns="3"] 14 |

Four Columns

15 | [gallery columns="4"] 16 |

Five Columns

17 | [gallery columns="5"] 18 |

Six Columns

19 | [gallery columns="6"] 20 |

Seven Columns

21 | [gallery columns="7"] 22 |

Eight Columns

23 | [gallery columns="8"] 24 |

Nine Columns

25 | [gallery columns="9"] -------------------------------------------------------------------------------- /example/build/posts/post-format-image-caption.md: -------------------------------------------------------------------------------- 1 | [caption id="attachment_754" align="alignnone" width="604"]Bell on Wharf Bell on wharf in San Francisco[/caption] -------------------------------------------------------------------------------- /example/build/posts/post-format-image-linked.md: -------------------------------------------------------------------------------- 1 | [caption id="attachment_612" align="aligncenter" width="640" caption="Chunk of resinous blackboy husk, Clarkson, Western Australia. This burns like a spinifex log."]chunk of resinous blackboy husk[/caption] 2 | -------------------------------------------------------------------------------- /example/build/posts/post-format-image.md: -------------------------------------------------------------------------------- 1 |
  2 | 3 | -------------------------------------------------------------------------------- /example/build/posts/post-format-link.md: -------------------------------------------------------------------------------- 1 | The WordPress Theme Review Team Website -------------------------------------------------------------------------------- /example/build/posts/post-format-quote.md: -------------------------------------------------------------------------------- 1 |
Only one thing is impossible for God: To find any sense in any copyright law on the planet. 2 | Mark Twain
-------------------------------------------------------------------------------- /example/build/posts/post-format-standard.md: -------------------------------------------------------------------------------- 1 | All children, except one, grow up. They soon know that they will grow up, and the way Wendy knew was this. One day when she was two years old she was playing in a garden, and she plucked another flower and ran with it to her mother. I suppose she must have looked rather delightful, for Mrs. Darling put her hand to her heart and cried, "Oh, why can't you remain like this for ever!" This was all that passed between them on the subject, but henceforth Wendy knew that she must grow up. You always know after you are two. Two is the beginning of the end. 2 | 3 | 4 | 5 | Mrs. Darling first heard of Peter when she was tidying up her children's minds. It is the nightly custom of every good mother after her children are asleep to rummage in their minds and put things straight for next morning, repacking into their proper places the many articles that have wandered during the day. 6 | 7 | If you could keep awake (but of course you can't) you would see your own mother doing this, and you would find it very interesting to watch her. It is quite like tidying up drawers. You would see her on her knees, I expect, lingering humorously over some of your contents, wondering where on earth you had picked this thing up, making discoveries sweet and not so sweet, pressing this to her cheek as if it were as nice as a kitten, and hurriedly stowing that out of sight. When you wake in the morning, the naughtiness and evil passions with which you went to bed have been folded up small and placed at the bottom of your mind and on the top, beautifully aired, are spread out your prettier thoughts, ready for you to put on. 8 | 9 | I don't know whether you have ever seen a map of a person's mind. Doctors sometimes draw maps of other parts of you, and your own map can become intensely interesting, but catch them trying to draw a map of a child's mind, which is not only confused, but keeps going round all the time. There are zigzag lines on it, just like your temperature on a card, and these are probably roads in the island, for the Neverland is always more or less an island, with astonishing splashes of colour here and there, and coral reefs and rakish-looking craft in the offing, and savages and lonely lairs, and gnomes who are mostly tailors, and caves through which a river runs, and princes with six elder brothers, and a hut fast going to decay, and one very small old lady with a hooked nose. It would be an easy map if that were all, but there is also first day at school, religion, fathers, the round pond, needle-work, murders, hangings, verbs that take the dative, chocolate pudding day, getting into braces, say ninety-nine, three-pence for pulling out your tooth yourself, and so on, and either these are part of the island or they are another map showing through, and it is all rather confusing, especially as nothing will stand still. 10 | 11 | Of course the Neverlands vary a good deal. John's, for instance, had a lagoon with flamingoes flying over it at which John was shooting, while Michael, who was very small, had a flamingo with lagoons flying over it. John lived in a boat turned upside down on the sands, Michael in a wigwam, Wendy in a house of leaves deftly sewn together. John had no friends, Michael had friends at night, Wendy had a pet wolf forsaken by its parents, but on the whole the Neverlands have a family resemblance, and if they stood still in a row you could say of them that they have each other's nose, and so forth. On these magic shores children at play are for ever beaching their coracles [simple boat]. We too have been there; we can still hear the sound of the surf, though we shall land no more. 12 | 13 | Of all delectable islands the Neverland is the snuggest and most compact, not large and sprawly, you know, with tedious distances between one adventure and another, but nicely crammed. When you play at it by day with the chairs and table-cloth, it is not in the least alarming, but in the two minutes before you go to sleep it becomes very real. That is why there are night-lights. 14 | 15 | Occasionally in her travels through her children's minds Mrs. Darling found things she could not understand, and of these quite the most perplexing was the word Peter. She knew of no Peter, and yet he was here and there in John and Michael's minds, while Wendy's began to be scrawled all over with him. The name stood out in bolder letters than any of the other words, and as Mrs. Darling gazed she felt that it had an oddly cocky appearance. -------------------------------------------------------------------------------- /example/build/posts/post-format-status.md: -------------------------------------------------------------------------------- 1 | WordPress, how do I love thee? Let me count the ways (in 140 characters or less). -------------------------------------------------------------------------------- /example/build/posts/post-format-video-videopress.md: -------------------------------------------------------------------------------- 1 | [wpvideo tFnqC9XQ w=680] 2 | 3 | VideoPress, especially as a video post format, usually provides some unique styling issues. 4 | 5 | You will need to install Jetpack or Slim Jetpack plugin to turn the shortcode into a viewable video. -------------------------------------------------------------------------------- /example/build/posts/post-format-video-wordpresstv.md: -------------------------------------------------------------------------------- 1 | http://wordpress.tv/2009/03/16/anatomy-of-a-wordpress-theme-exploring-the-files-behind-your-theme/ 2 | 3 | Posted as per the instructions in the Codex. -------------------------------------------------------------------------------- /example/build/posts/post-format-video-youtube.md: -------------------------------------------------------------------------------- 1 | http://www.youtube.com/watch?v=SQEQr7c0-dw 2 | 3 | Learn more about WordPress Embeds. -------------------------------------------------------------------------------- /example/build/posts/scheduled.md: -------------------------------------------------------------------------------- 1 | This post is scheduled to be published in the future. 2 | 3 | It should not be displayed by the theme. -------------------------------------------------------------------------------- /example/build/posts/template-comments-disabled.md: -------------------------------------------------------------------------------- 1 | This post has its comments, pingbacks, and trackbacks disabled. 2 | 3 | There should be no comment reply form, but should display pingbacks and trackbacks. -------------------------------------------------------------------------------- /example/build/posts/template-comments.md: -------------------------------------------------------------------------------- 1 | This post tests comments in the following ways. 2 | -------------------------------------------------------------------------------- /example/build/posts/template-excerpt-defined.md: -------------------------------------------------------------------------------- 1 | This is the post content. It should be displayed in place of the user-defined excerpt in single-page views. -------------------------------------------------------------------------------- /example/build/posts/template-excerpt-generated.md: -------------------------------------------------------------------------------- 1 | This is the post content. It should be displayed in place of the auto-generated excerpt in single-page views. Archive-index pages should display an auto-generated excerpt of this content. Depending on Theme-defined filters, the length of the auto-generated excerpt will vary from Theme-to-Theme. The default length for auto-generated excerpts is 55 words, so to test the excerpt auto-generation, this post must have more than 55 words. 2 | 3 | Be sure to test the formatting of the auto-generated excerpt, to ensure that it doesn't create any layout problems. Also, ensure that any filters applied to the excerpt, such as <code>excerpt_length</code> and <code>excerpt_more</code>, display properly. -------------------------------------------------------------------------------- /example/build/posts/template-featured-image-horizontal.md: -------------------------------------------------------------------------------- 1 | This post should display a featured image, if the theme supports it. 2 | 3 | Non-square images can provide some unique styling issues. 4 | 5 | This post tests a horizontal featured image. -------------------------------------------------------------------------------- /example/build/posts/template-featured-image-vertical.md: -------------------------------------------------------------------------------- 1 | This post should display a featured image, if the theme supports it. 2 | 3 | Non-square images can provide some unique styling issues. 4 | 5 | This post tests a vertical featured image. -------------------------------------------------------------------------------- /example/build/posts/template-more-tag.md: -------------------------------------------------------------------------------- 1 | This content is before the more tag. 2 | 3 | Right after this sentence should be a "continue reading" button of some sort. 4 | 5 | 6 | 7 | And this content is after the more tag. -------------------------------------------------------------------------------- /example/build/posts/template-paginated.md: -------------------------------------------------------------------------------- 1 | Post Page 1 2 | 3 | 4 | 5 | Post Page 2 6 | 7 | 8 | 9 | Post Page 3 -------------------------------------------------------------------------------- /example/build/posts/template-password-protected.md: -------------------------------------------------------------------------------- 1 | This content, comments, pingbacks, and trackbacks should not be visible until the password is entered. -------------------------------------------------------------------------------- /example/build/posts/template-pingbacks-an-trackbacks.md: -------------------------------------------------------------------------------- 1 | This post has many pingpacks and trackbacks. 2 | 3 | There are a few ways to list them. 4 |
    5 |
  1. Above the comments
  2. 6 |
  3. Below the comments
  4. 7 |
  5. Included within the normal flow of comments
  6. 8 |
-------------------------------------------------------------------------------- /example/build/posts/template-sticky.md: -------------------------------------------------------------------------------- 1 | This is a sticky post. 2 | 3 | There are a few things to verify: 4 | -------------------------------------------------------------------------------- /example/build/posts/title-should-not-overflow-the-content-area.md: -------------------------------------------------------------------------------- 1 |

Title should not overflow the content area

2 | 3 | A few things to check for: 4 | 9 | 10 | The following CSS properties will help you support non-breaking text. 11 | 12 |
-ms-word-wrap: break-word;
13 | word-wrap: break-word;
14 |   -------------------------------------------------------------------------------- /example/build/posts/title-with-special-characters.md: -------------------------------------------------------------------------------- 1 | Putting special characters in the title should have no adverse effect on the layout or functionality. 2 | 3 | Special characters in the post title have been known to cause issues with JavaScript when it is minified, especially in the admin when editing the post itself (ie. issues with metaboxes, media upload, etc.). 4 |

Latin Character Tests

5 | This is a test to see if the fonts used in this theme support basic Latin characters. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 |
!"#$%&'()*
+,-./01234
56789:;>=<
?@ABCDEFGH
IJKLMNOPQR
STUVWXYZ[\
]^_`abcdef
ghijklmnop
qrstuvwxyz
{|}~
-------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var fs = require('fs') 4 | var path = require('path') 5 | var parser = require('xml2js').parseString 6 | 7 | 8 | /* 9 | * 10 | * Parse the XML input and write some Harp.js output! 11 | * 12 | * Start hacking below here if you want to customize the output 13 | * 14 | */ 15 | 16 | 17 | function doEverything(channel, folder) { 18 | // process XML channel into a big data object 19 | var dat = buildAllData(channel) 20 | // this looks at post metadata link values, converts /?p=123 links, etc. 21 | conformPaths(dat) 22 | 23 | // write out site globals and base folder content 24 | writeSiteMeta(dat, folder, '_harp.json') 25 | writePostMeta(dat, folder, '_data.json') 26 | copyFile('templates/index.jade', folder, 'index.jade') 27 | copyFile('templates/_layout.jade', folder, '_layout.jade') 28 | 29 | var partialDir = makeFolder(folder, '_partials') 30 | copyFile('templates/_partials/post.jade', partialDir, 'post.jade') 31 | copyFile('templates/_partials/comments.jade', partialDir, 'comments.jade') 32 | 33 | // write out post information 34 | writePosts(dat, folder) 35 | 36 | // comments 37 | var commentDir = makeFolder(folder, 'comments') 38 | writeComments(dat, commentDir) 39 | 40 | // copy more static stuff 41 | var cssDir = makeFolder(folder, 'css') 42 | copyFile('templates/css/style.less', cssDir, 'style.less') 43 | 44 | // write out a JSON file listing incoming links user will likely need to handle 45 | writeLinkInfo(dat, folder, '_linkInfo.json') 46 | } 47 | 48 | 49 | 50 | 51 | 52 | function buildAllData(channel) { 53 | // huge data object to store everything 54 | var dat = { 55 | metadata: {}, 56 | authors: [], 57 | postMeta: {}, 58 | postContent: {}, 59 | postComments: {}, 60 | pages: {}, 61 | navItems: {}, 62 | attachments: {}, 63 | } 64 | // run through XML object decorating dat object as we go 65 | for (var key in channel) { 66 | if (/author/.test(key)) { 67 | processAuthors(dat, channel[key]) 68 | } else if (channel[key].length === 1 && typeof channel[key][0] === 'string') { 69 | // just a key,value pair - treat as site metadata 70 | dat.metadata[key] = nodeContent(channel[key]) 71 | } else if (key === 'item') { 72 | processItems(dat, channel[key]) 73 | } else { 74 | console.log('todo: ', key) 75 | } 76 | } 77 | return dat 78 | } 79 | 80 | function nodeContent(node) { 81 | // returns contents if the node looks like [ foo ] 82 | if (node && node.length && node.length === 1) return node[0] 83 | return node 84 | } 85 | 86 | 87 | 88 | function processAuthors(dat, authors) { 89 | for (var i = 0; i < authors.length; i++) { 90 | var obj = {} 91 | for (var longkey in authors[i]) { 92 | var key = /wp:author_(.*)/.exec(longkey)[1] 93 | obj[key] = authors[i][longkey][0] 94 | } 95 | dat.authors.push(obj) 96 | } 97 | } 98 | 99 | 100 | function processItems(dat, items) { 101 | for (var i = 0; i < items.length; i++) { 102 | var item = items[i] 103 | var obj = {} 104 | var commentList = [] 105 | var type = nodeContent(item['wp:post_type']) || '(unspecified)' 106 | var slug = nodeContent(item['wp:post_name']) 107 | || nodeContent(item['wp:post_id']) 108 | || String(i) 109 | obj.slug = slug 110 | for (var key in item) { 111 | // nodes inside item have lots of weird structures 112 | if (key === 'guid') { 113 | var guid = nodeContent(item[key]) 114 | obj['guid'] = guid._ 115 | for (var s in guid.$) { 116 | obj['guid:' + s] = guid.$[s] 117 | } 118 | } else if (key === 'category') { 119 | // figure this out later 120 | obj.category = {} 121 | for (var s in item[key]) { 122 | var cat = item[key][s] 123 | obj.category[cat._] = cat.$.domain + ' : ' + cat.$.nicename 124 | } 125 | } else if (key === 'wp:postmeta') { 126 | // figure this out later 127 | obj['wp:postmeta'] = cleanUpMetaObject(item[key]) 128 | } else if (key === 'wp:comment') { 129 | for (var j = 0; j < item[key].length; j++) { 130 | var commentObj = item[key][j] 131 | var co = {} 132 | for (var s in commentObj) { 133 | if (s === 'wp:commentmeta') { 134 | co[s] = cleanUpMetaObject(commentObj[s]) 135 | } else { 136 | co[s] = nodeContent(commentObj[s]) 137 | } 138 | } 139 | commentList.push(co) 140 | } 141 | } else if (key === 'content:encoded') { 142 | if (type === 'post' || type === 'page') { 143 | // store encoded content for separate processing 144 | dat.postContent[slug] = item[key] 145 | } 146 | } else { 147 | // general case: key:val pair 148 | obj[key] = nodeContent(item[key]) 149 | } 150 | } 151 | switch (type) { 152 | case 'page': //dat.pages[slug] = obj 153 | case 'post': 154 | dat.postMeta[slug] = obj 155 | dat.postComments[slug] = commentList 156 | // break; 157 | break; 158 | case 'attachment': dat.attachments[slug] = obj 159 | break; 160 | case 'nav_menu_item': dat.navItems[slug] = obj 161 | break; 162 | default: console.log('Warning: found unknown item type: =' + typeof type + '=') 163 | } 164 | } 165 | } 166 | 167 | // helper for cleaning up wp:meta tag pairs 168 | function cleanUpMetaObject(node, b) { 169 | var ret = {} 170 | for (var s in node) { 171 | var mkey = nodeContent(node[s]['wp:meta_key']) 172 | var mval = nodeContent(node[s]['wp:meta_value']) 173 | ret[mkey] = mval 174 | } 175 | return ret 176 | } 177 | 178 | 179 | // This runs through all posts to figure out what subfolder they should live in 180 | // /?p=123 -style posts will convert to: /posts/123 181 | 182 | function conformPaths(dat) { 183 | var err = [] 184 | var base = dat.metadata.link 185 | // conform base link not to end with a slash 186 | if (/\/$/.test(base)) base = base.substring(0, base.length-1) 187 | // loop through posts, adding anything we can't deal with to err[] 188 | for (var slug in dat.postMeta) { 189 | var link = dat.postMeta[slug].link 190 | if (/\?p=(\d+)$/.test(link)) { err.push(slug); continue } 191 | if (link.indexOf(base) !== 0) { err.push(slug); continue } 192 | var tail = link.substring(base.length) 193 | if (/\/$/.test(tail)) tail = tail.substring(0, tail.length-1) 194 | var folders = tail.split('/') 195 | folders.pop() // that should have been the slug or post ID 196 | if (folders[0]==='') folders.shift() 197 | if (folders.length===0) { err.push(slug); continue } 198 | dat.postMeta[slug].wp_link_path = folders.join('/') 199 | } 200 | // run through errors 201 | err.forEach(function(slug){ 202 | dat.postMeta[slug].wp_link_path = '' 203 | }) 204 | } 205 | 206 | 207 | /* 208 | * If you want to process the body of each post 209 | * (convert html to md, etc.) here's where you do it: 210 | */ 211 | 212 | function processPostContent(s) { 213 | return s 214 | } 215 | 216 | 217 | 218 | /* 219 | * Functions for writing out content, based on the big dat file 220 | * 221 | */ 222 | 223 | function writeSiteMeta(dat, folder, filename) { 224 | // overall site metadata 225 | var out = { 226 | globals: { 227 | wp_data: dat.metadata, 228 | wp_authors: dat.authors, 229 | } 230 | } 231 | writeFile(folder, filename, JSON.stringify(out, null, 2)) 232 | } 233 | 234 | 235 | function writePostMeta(dat, folder, filename) { 236 | // metadata for all posts 237 | var out = { 238 | wp_posts: dat.postMeta, 239 | } 240 | writeFile(folder, filename, JSON.stringify(out, null, 2)) 241 | } 242 | 243 | 244 | 245 | function writePosts(dat, folder) { 246 | // write out actual post and page files, relative to the root folder 247 | for (var slug in dat.postContent) { 248 | var sub = getPostSubfolder(folder)//, dat.postMeta[slug].wp_link_path) 249 | var content = processPostContent(dat.postContent[slug]) 250 | writeFile(sub, slug + '.md', content) 251 | } 252 | } 253 | 254 | 255 | function getPostSubfolder(root, subfolderString) { 256 | // settle for now on always returning /posts/ for post subfolders 257 | if (!_alreadyMade.posts) { 258 | _alreadyMade.posts = makeFolder(root, 'posts') 259 | } 260 | return _alreadyMade.posts 261 | 262 | // if you want posts placed in subfolders according to wordpress links 263 | // (e.g. /2015/12/foo) then below is an implementation that should work. 264 | // subfolderString is like: foo/bar/baz - no leading or tailing slash 265 | var m = _alreadyMade['/' + subfolderString] 266 | if (m) return m 267 | var farr = subfolderString.split('/') 268 | var loc = root 269 | var path = '/' 270 | for (var i=0; i