{"id":777,"date":"2007-04-24T12:15:04","date_gmt":"2007-04-24T11:15:04","guid":{"rendered":"http:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm"},"modified":"2007-04-25T10:24:45","modified_gmt":"2007-04-25T09:24:45","slug":"modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp","status":"publish","type":"post","link":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm","title":{"rendered":"Modifying wp-mobile to create content that validates as XHTML-MP"},"content":{"rendered":"<p>Yesterday, I wrote a post about using Alex King&#8217;s <a href=\"http:\/\/alexking.org\/projects\/wordpress\">WordPress Mobile Edition plugin<\/a> (wp-mobile) to <a href=\"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/publishing-wordpress-content-on-the-mobile-web.htm\">generate WordPress content formatted for the mobile web<\/a>.  wp-mobile makes the code generation seamless; however I did have a few issues when I came to validating the output at the <a href=\"http:\/\/ready.mobi\/\">ready.mobi<\/a> site.  After a few hours (remember, I&#8217;m an infrastructure bod and my coding abilities are best described as weak) I managed to tweak the wp-mobile theme to produce code that validates perfectly.<\/p>\n<p><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/www.markwilson.co.uk\/blog\/images\/mobile-readiness.png?w=700&#038;ssl=1\" alt=\"Screen grab from the ready.mobi report for this website\" \/><\/p>\n<p><a href=\"http:\/\/pastecode.com\/?diff=28151\">The changes that I made to the wp-mobile index.php file can be seen at Paul Dixon&#8217;s PHP pastebin<\/a> but are also detailed below:<\/p>\n<ol>\n<li><a href=\"http:\/\/pc.dev.mobi\/?q=node\/200\">Add an XHTML Mobile Profile (XHTML-MP) document type descriptor<\/a>: <code>&lt;!DOCTYPE html PUBLIC \"-\/\/WAPFORUM\/\/DTD XHTML Mobile 1.0\/\/EN\" \"http:\/\/www.wapforum.org\/DTD\/xhtml-mobile10.dtd\"&gt;<\/code>.  Incidentally, I didn&#8217;t include an XML declaration (which looks like: <code>&lt;?xml version=\"1.0\" charset=\"UTF-8\" ?&gt;<\/code>) as it kept on generating unexpected T_STRING PHP errors and it seems that it is not strictly necessary if the UTF-8 character set is in use:<br \/>\n<blockquote cite=\"http:\/\/www.w3.org\/TR\/xhtml1\/\"><p>&#8220;An XML declaration is not required in all XML documents; however XHTML document authors are strongly encouraged to use XML declarations in all their documents. Such a declaration is required when the character encoding of the document is other than the default UTF-8 or UTF-16 and no encoding was determined by a higher-level protocol.&#8221;<\/p>\n<p class=\"citation\"><a href=\"http:\/\/www.w3.org\/TR\/xhtml1\/\">W3C recommendation for XHTML 1.0<\/a><\/p>\n<\/blockquote>\n<\/li>\n<li><a href=\"http:\/\/pc.dev.mobi\/?q=node\/209\">Add some caching controls<\/a>: <code>&lt;?php header (\"Cache-Control: max-age=10 \"); ?&gt;<\/code>. 10 seconds is a little on the low side but it can be changed later and it means that the caching is unlikely to affect testing of subsequent changes.<\/li>\n<li>Remove <code>&lt;meta name=\"HandheldFriendly\" value=\"true\" \/&gt;:<\/code> this code doesn&#8217;t appear to do anything and is not valid XHTML-MP &#8211; <code>media=\"handheld\"<\/code> can be used instead when linking the stylesheet (see below).<\/li>\n<li>Change the <a href=\"http:\/\/developer.openwave.com\/documentation\/xhtml_mp_css_reference\/css-ref4.html\">stylesheet link method<\/a>: although <code>&lt;style type=\"text\/css\"&gt;@import url(\"&lt;?php print(get_stylesheet_uri()); ?&gt;\"); &lt;\/style&gt;<\/code> should work, I found that the validator was only completely satisfied with the form <code>&lt;link href=\"&lt;?php print(get_stylesheet_uri()); ?&gt;\" rel=\"stylesheet\" type=\"text\/css\" media=\"handheld\" \/&gt;<\/code>.<\/li>\n<li><a href=\"http:\/\/pc.dev.mobi\/?q=node\/238\">Provide access keys<\/a> using <code>accesskey=\"<em>key<\/em>\"<\/code> inside the <code>&lt;a&gt;<\/code> tag for each of the main menu items.<\/li>\n<li>Surround <code>&lt;?php ak_recent_posts(10); ?&gt;<\/code> with <code>&lt;ul&gt;<\/code> and <code>&lt;\/ul&gt;<\/code> tags &#8211; this bug took the most time to track down and was the final change necessary to make the markup validate as XHTML-MP.<\/li>\n<\/ol>\n<p>I also made some minor changes in order to fit my own page design (adding a legal notice, etc.) but in order to get the elusive 100% in the <a href=\"http:\/\/ready.mobi\/results2.jsp?uri=http%3A%2F%2Fmarkwilson.co.uk%2Fblog%2F&amp;locale=null\">report for this site<\/a>, there was one minor tweak required to style.css: removal of the <code>height: 1px;<\/code> rule for <code>&lt;hr&gt;<\/code>.  I understand why it was there but the validator didn&#8217;t like it, suggesting that relative units should be used instead (I would argue that 1px is far more logical for a horizontal rule than the use of relative units but this change resulted in another pass on the report).<\/p>\n<p>Right, enough of these mobile diversions &#8211; I&#8217;d better focus my development efforts on getting the rest of this site to be fully XHTML compliant&#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Yesterday, I wrote a post about using Alex King&#8217;s WordPress Mobile Edition plugin (wp-mobile) to generate WordPress content formatted for the mobile web. wp-mobile makes the code generation seamless; however I did have a few issues when I came to validating the output at the ready.mobi site. After a few hours (remember, I&#8217;m an infrastructure &hellip; <a href=\"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Modifying wp-mobile to create content that validates as XHTML-MP<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[],"tags":[18,29,15],"class_list":["post-777","post","type-post","status-publish","format-standard","hentry","tag-mobility","tag-website-development","tag-wordpress"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Modifying wp-mobile to create content that validates as XHTML-MP - markwilson.it<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Modifying wp-mobile to create content that validates as XHTML-MP - markwilson.it\" \/>\n<meta property=\"og:description\" content=\"Yesterday, I wrote a post about using Alex King&#8217;s WordPress Mobile Edition plugin (wp-mobile) to generate WordPress content formatted for the mobile web. wp-mobile makes the code generation seamless; however I did have a few issues when I came to validating the output at the ready.mobi site. After a few hours (remember, I&#8217;m an infrastructure &hellip; Continue reading Modifying wp-mobile to create content that validates as XHTML-MP\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm\" \/>\n<meta property=\"og:site_name\" content=\"markwilson.it\" \/>\n<meta property=\"article:published_time\" content=\"2007-04-24T11:15:04+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2007-04-25T09:24:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.markwilson.co.uk\/blog\/images\/mobile-readiness.png\" \/>\n<meta name=\"author\" content=\"Mark Wilson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@markwilsonit\" \/>\n<meta name=\"twitter:site\" content=\"@markwilsonit\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Mark Wilson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2007\\\/04\\\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2007\\\/04\\\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm\"},\"author\":{\"name\":\"Mark Wilson\",\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/#\\\/schema\\\/person\\\/98f61365e7c39d6be942174b8c4de468\"},\"headline\":\"Modifying wp-mobile to create content that validates as XHTML-MP\",\"datePublished\":\"2007-04-24T11:15:04+00:00\",\"dateModified\":\"2007-04-25T09:24:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2007\\\/04\\\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm\"},\"wordCount\":461,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/#\\\/schema\\\/person\\\/98f61365e7c39d6be942174b8c4de468\"},\"image\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2007\\\/04\\\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/images\\\/mobile-readiness.png\",\"keywords\":[\"Mobility\",\"Website Development\",\"WordPress\"],\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2007\\\/04\\\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2007\\\/04\\\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm\",\"url\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2007\\\/04\\\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm\",\"name\":\"Modifying wp-mobile to create content that validates as XHTML-MP - markwilson.it\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2007\\\/04\\\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2007\\\/04\\\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/images\\\/mobile-readiness.png\",\"datePublished\":\"2007-04-24T11:15:04+00:00\",\"dateModified\":\"2007-04-25T09:24:45+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2007\\\/04\\\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2007\\\/04\\\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2007\\\/04\\\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#primaryimage\",\"url\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/images\\\/mobile-readiness.png\",\"contentUrl\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/images\\\/mobile-readiness.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2007\\\/04\\\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Modifying wp-mobile to create content that validates as XHTML-MP\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/\",\"name\":\"markwilson.it\",\"description\":\"get-info -class technology | write-output &gt; \\\/dev\\\/web\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/#\\\/schema\\\/person\\\/98f61365e7c39d6be942174b8c4de468\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/#\\\/schema\\\/person\\\/98f61365e7c39d6be942174b8c4de468\",\"name\":\"Mark Wilson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/i0.wp.com\\\/www.markwilson.co.uk\\\/blog\\\/uploads\\\/image-4.png?fit=800%2C800&ssl=1\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/www.markwilson.co.uk\\\/blog\\\/uploads\\\/image-4.png?fit=800%2C800&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/www.markwilson.co.uk\\\/blog\\\/uploads\\\/image-4.png?fit=800%2C800&ssl=1\",\"width\":800,\"height\":800,\"caption\":\"Mark Wilson\"},\"logo\":{\"@id\":\"https:\\\/\\\/i0.wp.com\\\/www.markwilson.co.uk\\\/blog\\\/uploads\\\/image-4.png?fit=800%2C800&ssl=1\"},\"description\":\"A Chartered IT Professional, with recent experience in technology leadership, IT strategy and practice management roles, Mark Wilson is an Enterprise Architect in the Advisory and Management Group at risual. During a career spanning more than two decades, Mark has gained widespread recognition as an expert in his field including both industry and national press exposure. In addition to certifications from Microsoft, VMware, Red Hat, The Open Group and Axelos, Mark held a Microsoft Most Valuable Professional (MVP) award for three years and is now part of the MVP Reconnect programme. Mark is also well-known on social media and maintains an award-winning blog.\",\"sameAs\":[\"http:\\\/\\\/www.markwilson.co.uk\\\/\",\"https:\\\/\\\/www.instagram.com\\\/markwilsonuk\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/markawilson\\\/\",\"https:\\\/\\\/x.com\\\/markwilsonit\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCWHlZCoHRTocdvtrOJ2IL4A\"],\"url\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/author\\\/mark-wilson\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Modifying wp-mobile to create content that validates as XHTML-MP - markwilson.it","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm","og_locale":"en_GB","og_type":"article","og_title":"Modifying wp-mobile to create content that validates as XHTML-MP - markwilson.it","og_description":"Yesterday, I wrote a post about using Alex King&#8217;s WordPress Mobile Edition plugin (wp-mobile) to generate WordPress content formatted for the mobile web. wp-mobile makes the code generation seamless; however I did have a few issues when I came to validating the output at the ready.mobi site. After a few hours (remember, I&#8217;m an infrastructure &hellip; Continue reading Modifying wp-mobile to create content that validates as XHTML-MP","og_url":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm","og_site_name":"markwilson.it","article_published_time":"2007-04-24T11:15:04+00:00","article_modified_time":"2007-04-25T09:24:45+00:00","og_image":[{"url":"https:\/\/www.markwilson.co.uk\/blog\/images\/mobile-readiness.png","type":"","width":"","height":""}],"author":"Mark Wilson","twitter_card":"summary_large_image","twitter_creator":"@markwilsonit","twitter_site":"@markwilsonit","twitter_misc":{"Written by":"Mark Wilson","Estimated reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#article","isPartOf":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm"},"author":{"name":"Mark Wilson","@id":"https:\/\/www.markwilson.co.uk\/blog\/#\/schema\/person\/98f61365e7c39d6be942174b8c4de468"},"headline":"Modifying wp-mobile to create content that validates as XHTML-MP","datePublished":"2007-04-24T11:15:04+00:00","dateModified":"2007-04-25T09:24:45+00:00","mainEntityOfPage":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm"},"wordCount":461,"commentCount":0,"publisher":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/#\/schema\/person\/98f61365e7c39d6be942174b8c4de468"},"image":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#primaryimage"},"thumbnailUrl":"https:\/\/www.markwilson.co.uk\/blog\/images\/mobile-readiness.png","keywords":["Mobility","Website Development","WordPress"],"inLanguage":"en-GB","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm","url":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm","name":"Modifying wp-mobile to create content that validates as XHTML-MP - markwilson.it","isPartOf":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#primaryimage"},"image":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#primaryimage"},"thumbnailUrl":"https:\/\/www.markwilson.co.uk\/blog\/images\/mobile-readiness.png","datePublished":"2007-04-24T11:15:04+00:00","dateModified":"2007-04-25T09:24:45+00:00","breadcrumb":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#primaryimage","url":"https:\/\/www.markwilson.co.uk\/blog\/images\/mobile-readiness.png","contentUrl":"https:\/\/www.markwilson.co.uk\/blog\/images\/mobile-readiness.png"},{"@type":"BreadcrumbList","@id":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/modifying-wp-mobile-to-create-content-that-validates-as-xhtml-mp.htm#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.markwilson.co.uk\/blog"},{"@type":"ListItem","position":2,"name":"Modifying wp-mobile to create content that validates as XHTML-MP"}]},{"@type":"WebSite","@id":"https:\/\/www.markwilson.co.uk\/blog\/#website","url":"https:\/\/www.markwilson.co.uk\/blog\/","name":"markwilson.it","description":"get-info -class technology | write-output &gt; \/dev\/web","publisher":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/#\/schema\/person\/98f61365e7c39d6be942174b8c4de468"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.markwilson.co.uk\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":["Person","Organization"],"@id":"https:\/\/www.markwilson.co.uk\/blog\/#\/schema\/person\/98f61365e7c39d6be942174b8c4de468","name":"Mark Wilson","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/i0.wp.com\/www.markwilson.co.uk\/blog\/uploads\/image-4.png?fit=800%2C800&ssl=1","url":"https:\/\/i0.wp.com\/www.markwilson.co.uk\/blog\/uploads\/image-4.png?fit=800%2C800&ssl=1","contentUrl":"https:\/\/i0.wp.com\/www.markwilson.co.uk\/blog\/uploads\/image-4.png?fit=800%2C800&ssl=1","width":800,"height":800,"caption":"Mark Wilson"},"logo":{"@id":"https:\/\/i0.wp.com\/www.markwilson.co.uk\/blog\/uploads\/image-4.png?fit=800%2C800&ssl=1"},"description":"A Chartered IT Professional, with recent experience in technology leadership, IT strategy and practice management roles, Mark Wilson is an Enterprise Architect in the Advisory and Management Group at risual. During a career spanning more than two decades, Mark has gained widespread recognition as an expert in his field including both industry and national press exposure. In addition to certifications from Microsoft, VMware, Red Hat, The Open Group and Axelos, Mark held a Microsoft Most Valuable Professional (MVP) award for three years and is now part of the MVP Reconnect programme. Mark is also well-known on social media and maintains an award-winning blog.","sameAs":["http:\/\/www.markwilson.co.uk\/","https:\/\/www.instagram.com\/markwilsonuk\/","https:\/\/www.linkedin.com\/in\/markawilson\/","https:\/\/x.com\/markwilsonit","https:\/\/www.youtube.com\/channel\/UCWHlZCoHRTocdvtrOJ2IL4A"],"url":"https:\/\/www.markwilson.co.uk\/blog\/author\/mark-wilson"}]}},"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":778,"url":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/the-elements-of-meaningful-xhtml.htm","url_meta":{"origin":777,"position":0},"title":"The elements of meaningful XHTML","author":"Mark Wilson","date":"Wednesday 25 April 2007","format":false,"excerpt":"I'm really trying to use good, semantic, XHTML and CSS on this website but sometimes it's hard work. Even so, the validation tools that I've used have helped me to increase my XHTML knowledge and most things can be tweaked - I'm really pleased that this page current validates as\u2026","rel":"","context":"In \"Useful Websites\"","block_context":{"text":"Useful Websites","link":"https:\/\/www.markwilson.co.uk\/blog\/tag\/useful-websites"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":739,"url":"https:\/\/www.markwilson.co.uk\/blog\/2008\/02\/website-development-tips-and-tricks.htm","url_meta":{"origin":777,"position":1},"title":"Website development tips and tricks","author":"Mark Wilson","date":"Monday 11 February 2008","format":false,"excerpt":"About a year ago, I started the redevelopment of this site to use WordPress as my CMS, in the process aiming to make the site XHTML and CSS standards-compliant. It was a big job and, as this blog is really just a hobby that I put most of my spare\u2026","rel":"","context":"In \"Website Development\"","block_context":{"text":"Website Development","link":"https:\/\/www.markwilson.co.uk\/blog\/tag\/website-development"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":776,"url":"https:\/\/www.markwilson.co.uk\/blog\/2007\/04\/publishing-wordpress-content-on-the-mobile-web.htm","url_meta":{"origin":777,"position":2},"title":"Publishing WordPress content on the mobile web","author":"Mark Wilson","date":"Monday 23 April 2007","format":false,"excerpt":"A few nights back, I was reading a .net magazine article about developing websites enabled for mobile content. As my blog is written primarily for technical people, it seems logical to assume that a reasonable proportion of its readers could make use of access from a mobile device, especially as\u2026","rel":"","context":"In \"Mobility\"","block_context":{"text":"Mobility","link":"https:\/\/www.markwilson.co.uk\/blog\/tag\/mobility"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":461,"url":"https:\/\/www.markwilson.co.uk\/blog\/2006\/07\/windows-mobile-device-security.htm","url_meta":{"origin":777,"position":3},"title":"Windows Mobile device security","author":"Mark Wilson","date":"Thursday 13 July 2006","format":false,"excerpt":"Over the years, I've attended various presentations featuring mobile access to data but most of them have been along the lines of \"look at all this cool stuff I can do\". Last week I was at the Microsoft IT Security Summit and saw a slightly different angle on things as\u2026","rel":"","context":"In \"Microsoft Windows Mobile\"","block_context":{"text":"Microsoft Windows Mobile","link":"https:\/\/www.markwilson.co.uk\/blog\/tag\/windows-mobile"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":306,"url":"https:\/\/www.markwilson.co.uk\/blog\/2006\/07\/enabling-outlook-mobile-access-for.htm","url_meta":{"origin":777,"position":4},"title":"Enabling Outlook Mobile Access for Exchange Server 2003","author":"Mark Wilson","date":"Friday 7 July 2006","format":false,"excerpt":"A few years ago I attended an Exchange Server 2003 overview presented by Microsoft UK and Conchango (where I subsequently worked for a while) and got to play with Outlook Mobile Access (OMA) using an emulated mobile phone connection. I was pretty impressed (these were the days before smartphones became\u2026","rel":"","context":"In \"Microsoft Exchange\"","block_context":{"text":"Microsoft Exchange","link":"https:\/\/www.markwilson.co.uk\/blog\/tag\/exchange"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1174,"url":"https:\/\/www.markwilson.co.uk\/blog\/2008\/08\/default-pin-codes-and-voicemail-numbers-for-uk-mobile-networks.htm","url_meta":{"origin":777,"position":5},"title":"Default PIN codes and voicemail numbers for UK mobile networks","author":"Mark Wilson","date":"Friday 29 August 2008","format":false,"excerpt":"Back in 2005, I published a list of useful mobile handset commands and it's still attracting some interest so, as I bought a new mobile phone this week and it came with a list of the default PINs for each of the UK mobile operators, I'm re-publishing that information here\u2026","rel":"","context":"In &quot;Technology&quot;","block_context":{"text":"Technology","link":"https:\/\/www.markwilson.co.uk\/blog\/topic\/technology"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/posts\/777","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/comments?post=777"}],"version-history":[{"count":0,"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/posts\/777\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/media?parent=777"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/categories?post=777"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/tags?post=777"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}