{"id":23,"date":"2026-04-17T13:06:28","date_gmt":"2026-04-17T13:06:28","guid":{"rendered":"https:\/\/golgappa.site\/comments\/?p=23"},"modified":"2026-04-17T13:06:29","modified_gmt":"2026-04-17T13:06:29","slug":"test-3","status":"publish","type":"post","link":"https:\/\/golgappa.site\/comments\/test-3\/","title":{"rendered":"Test 3"},"content":{"rendered":"\n<pre class=\"wp-block-code\"><code>&lt;?php\n\/*\nPlugin Name: PlainPath Design Architect Pro\nDescription: Complete AI-Optimized Azure Design Tool with Dynamic Repeaters &amp; Schema.\nVersion: 2.0\nAuthor: Kushal Ahuja\n*\/\n\n\/\/ 1. ADMIN ASSETS &amp; MEDIA LIBRARY\nadd_action('admin_enqueue_scripts', function($hook) {\n    if ('post.php' != $hook &amp;&amp; 'post-new.php' != $hook) return;\n    wp_enqueue_media();\n});\n\n\/\/ 2. SEO &amp; AI SCHEMA INJECTION (AEO\/GEO Optimization)\nadd_action('wp_head', function() {\n    if (!is_single()) return;\n    $id = get_the_ID();\n    $title = get_post_meta($id, 'pp_seo_title', true) ?: get_the_title();\n    $desc = get_post_meta($id, 'pp_seo_desc', true);\n    $keys = get_post_meta($id, 'pp_seo_keys', true);\n\n    if ($desc) {\n        echo '&lt;meta name=\"description\" content=\"' . esc_attr($desc) . '\"&gt;' . \"\\n\";\n        echo '&lt;script type=\"application\/ld+json\"&gt;\n        {\n          \"@context\": \"https:\/\/schema.org\",\n          \"@type\": \"TechArticle\",\n          \"headline\": \"' . esc_attr($title) . '\",\n          \"description\": \"' . esc_attr($desc) . '\",\n          \"keywords\": \"' . esc_attr($keys) . '\",\n          \"author\": { \"@type\": \"Person\", \"name\": \"Kushal Ahuja\" }\n        }\n        &lt;\/script&gt;' . \"\\n\";\n    }\n});\n\n\/\/ 3. META BOX UI\nadd_action('add_meta_boxes', function() {\n    add_meta_box('pp_v2_box', 'PlainPath Design Architect v2.0', 'pp_render_v2_box', 'post', 'normal', 'high');\n});\n\nfunction pp_render_v2_box($post) {\n    wp_nonce_field('pp_v2_nonce', 'pp_v2_nonce_field');\n    \n    \/\/ Retrieve Data\n    $seo_title = get_post_meta($post-&gt;ID, 'pp_seo_title', true);\n    $seo_desc = get_post_meta($post-&gt;ID, 'pp_seo_desc', true);\n    $seo_keys = get_post_meta($post-&gt;ID, 'pp_seo_keys', true);\n    $problem = get_post_meta($post-&gt;ID, 'pp_problem', true);\n    $comps = get_post_meta($post-&gt;ID, 'pp_components', true) ?: &#91;];\n    $diags = get_post_meta($post-&gt;ID, 'pp_diagrams', true) ?: &#91;];\n    $facts = get_post_meta($post-&gt;ID, 'pp_facts', true) ?: &#91;];\n    $deep = get_post_meta($post-&gt;ID, 'pp_deep_dive', true);\n    ?&gt;\n\n    &lt;style&gt;\n        .pp-v2-section { border: 1px solid #ddd; padding: 15px; margin-bottom: 20px; background: #fff; border-left: 4px solid #000; }\n        .pp-row { display: flex; gap: 10px; margin-bottom: 10px; align-items: center; }\n        label { font-weight: bold; display: block; margin-bottom: 5px; }\n    &lt;\/style&gt;\n\n    &lt;div id=\"pp-v2-container\"&gt;\n        &lt;!-- SEO FIELDS --&gt;\n        &lt;div class=\"pp-v2-section\" style=\"background: #f0f8ff; border-left-color: #0073aa;\"&gt;\n            &lt;label&gt;AI &amp; SEO Optimization&lt;\/label&gt;\n            &lt;input type=\"text\" name=\"pp_seo_title\" value=\"&lt;?php echo esc_attr($seo_title); ?&gt;\" placeholder=\"AI Optimized Title\" style=\"width:100%; margin-bottom:5px;\"&gt;\n            &lt;textarea name=\"pp_seo_desc\" placeholder=\"Meta Description (AI Signal)\" style=\"width:100%; height:50px;\"&gt;&lt;?php echo esc_textarea($seo_desc); ?&gt;&lt;\/textarea&gt;\n            &lt;input type=\"text\" name=\"pp_seo_keys\" value=\"&lt;?php echo esc_attr($seo_keys); ?&gt;\" placeholder=\"Keywords (comma separated)\" style=\"width:100%;\"&gt;\n        &lt;\/div&gt;\n\n        &lt;!-- PART 1 --&gt;\n        &lt;div class=\"pp-v2-section\"&gt;\n            &lt;label&gt;Part 1: Problem Statement (NotebookLM)&lt;\/label&gt;\n            &lt;textarea name=\"pp_problem\" id=\"pp_problem\" style=\"width:100%; height:80px;\"&gt;&lt;?php echo esc_textarea($problem); ?&gt;&lt;\/textarea&gt;\n        &lt;\/div&gt;\n\n        &lt;!-- PART 2 --&gt;\n        &lt;div class=\"pp-v2-section\"&gt;\n            &lt;label&gt;Part 2: Components &amp; Videos&lt;\/label&gt;\n            &lt;div id=\"comp-wrap\"&gt;\n                &lt;?php foreach($comps as $c): ?&gt;\n                    &lt;div class=\"pp-row\"&gt;&lt;input type=\"text\" name=\"c_name&#91;]\" class=\"c-name\" value=\"&lt;?php echo esc_attr($c&#91;'name']); ?&gt;\" placeholder=\"Service\" style=\"width:40%;\"&gt;&lt;input type=\"text\" name=\"c_vid&#91;]\" class=\"c-vid\" value=\"&lt;?php echo esc_attr($c&#91;'vid']); ?&gt;\" placeholder=\"YouTube ID\" style=\"width:50%;\"&gt;&lt;button type=\"button\" class=\"remove-pp\"&gt;X&lt;\/button&gt;&lt;\/div&gt;\n                &lt;?php endforeach; ?&gt;\n            &lt;\/div&gt;\n            &lt;button type=\"button\" class=\"add-pp button\" data-type=\"comp\"&gt;Add Component&lt;\/button&gt;\n        &lt;\/div&gt;\n\n        &lt;!-- PART 3 --&gt;\n        &lt;div class=\"pp-v2-section\"&gt;\n            &lt;label&gt;Part 3: Architecture Diagrams (HLD\/LLD)&lt;\/label&gt;\n            &lt;div id=\"diag-wrap\"&gt;\n                &lt;?php foreach($diags as $d): ?&gt;\n                    &lt;div class=\"pp-row\"&gt;&lt;select name=\"d_type&#91;]\" class=\"d-type\" style=\"width:20%;\"&gt;&lt;option value=\"HLD\" &lt;?php selected($d&#91;'type'], 'HLD'); ?&gt;&gt;HLD&lt;\/option&gt;&lt;option value=\"LLD\" &lt;?php selected($d&#91;'type'], 'LLD'); ?&gt;&gt;LLD&lt;\/option&gt;&lt;\/select&gt;&lt;input type=\"text\" name=\"d_url&#91;]\" class=\"d-url\" value=\"&lt;?php echo esc_attr($d&#91;'url']); ?&gt;\" style=\"width:50%;\"&gt;&lt;button type=\"button\" class=\"pp-upload button\"&gt;Upload&lt;\/button&gt;&lt;button type=\"button\" class=\"remove-pp\"&gt;X&lt;\/button&gt;&lt;\/div&gt;\n                &lt;?php endforeach; ?&gt;\n            &lt;\/div&gt;\n            &lt;button type=\"button\" class=\"add-pp button\" data-type=\"diag\"&gt;Add Diagram Block&lt;\/button&gt;\n        &lt;\/div&gt;\n\n        &lt;!-- PART 4 --&gt;\n        &lt;div class=\"pp-v2-section\"&gt;\n            &lt;label&gt;Part 4: Detailed Implementation (Excel Table)&lt;\/label&gt;\n            &lt;div id=\"fact-wrap\"&gt;\n                &lt;?php foreach($facts as $f): ?&gt;\n                    &lt;div class=\"pp-row\"&gt;&lt;input type=\"text\" name=\"f_key&#91;]\" class=\"f-key\" value=\"&lt;?php echo esc_attr($f&#91;'key']); ?&gt;\" style=\"width:45%;\" placeholder=\"Param\"&gt;&lt;input type=\"text\" name=\"f_val&#91;]\" class=\"f-val\" value=\"&lt;?php echo esc_attr($f&#91;'val']); ?&gt;\" style=\"width:45%;\" placeholder=\"Value\"&gt;&lt;button type=\"button\" class=\"remove-pp\"&gt;X&lt;\/button&gt;&lt;\/div&gt;\n                &lt;?php endforeach; ?&gt;\n            &lt;\/div&gt;\n            &lt;button type=\"button\" class=\"add-pp button\" data-type=\"fact\"&gt;Add Extra Row&lt;\/button&gt;\n            &lt;textarea name=\"pp_deep_dive\" id=\"pp_deep_dive\" style=\"width:100%; margin-top:10px; height:80px;\"&gt;&lt;?php echo esc_textarea($deep); ?&gt;&lt;\/textarea&gt;\n        &lt;\/div&gt;\n\n        &lt;!-- GENERATE HTML (ACTUAL FIX) --&gt;\n        &lt;div class=\"pp-v2-section\" style=\"background:#fff7e6;\"&gt;\n            &lt;button type=\"button\" id=\"pp-gen-btn\" class=\"button button-primary\"&gt;Generate Final HTML&lt;\/button&gt;\n            &lt;textarea id=\"pp-preview\" readonly style=\"width:100%; height:150px; margin-top:10px; display:none;\"&gt;&lt;\/textarea&gt;\n        &lt;\/div&gt;\n    &lt;\/div&gt;\n\n    &lt;script&gt;\n    jQuery(document).ready(function($){\n        $('.add-pp').on('click', function(){\n            var type = $(this).data('type');\n            if(type==='comp') $('#comp-wrap').append('&lt;div class=\"pp-row\"&gt;&lt;input type=\"text\" name=\"c_name&#91;]\" class=\"c-name\" style=\"width:40%;\"&gt;&lt;input type=\"text\" name=\"c_vid&#91;]\" class=\"c-vid\" style=\"width:50%;\"&gt;&lt;button type=\"button\" class=\"remove-pp\"&gt;X&lt;\/button&gt;&lt;\/div&gt;');\n            if(type==='diag') $('#diag-wrap').append('&lt;div class=\"pp-row\"&gt;&lt;select name=\"d_type&#91;]\" class=\"d-type\" style=\"width:20%;\"&gt;&lt;option value=\"HLD\"&gt;HLD&lt;\/option&gt;&lt;option value=\"LLD\"&gt;LLD&lt;\/option&gt;&lt;\/select&gt;&lt;input type=\"text\" name=\"d_url&#91;]\" class=\"d-url\" style=\"width:50%;\"&gt;&lt;button type=\"button\" class=\"pp-upload button\"&gt;Upload&lt;\/button&gt;&lt;button type=\"button\" class=\"remove-pp\"&gt;X&lt;\/button&gt;&lt;\/div&gt;');\n            if(type==='fact') $('#fact-wrap').append('&lt;div class=\"pp-row\"&gt;&lt;input type=\"text\" name=\"f_key&#91;]\" class=\"f-key\" style=\"width:45%;\"&gt;&lt;input type=\"text\" name=\"f_val&#91;]\" class=\"f-val\" style=\"width:45%;\"&gt;&lt;button type=\"button\" class=\"remove-pp\"&gt;X&lt;\/button&gt;&lt;\/div&gt;');\n        });\n        $(document).on('click', '.pp-upload', function(e){\n            e.preventDefault(); var btn = $(this);\n            wp.media({ title: 'Select Image', multiple: false }).on('select', function() {\n                btn.prev('.d-url').val(this.get('selection').first().toJSON().url);\n            }).open();\n        });\n        $(document).on('click', '.remove-pp', function(){ $(this).parent().remove(); });\n\n        $('#pp-gen-btn').on('click', function(){\n            var h = \"&lt;div class='plainpath-architect'&gt;\\n&lt;h2&gt;Part 1&lt;\/h2&gt;&lt;p&gt;\"+$('#pp_problem').val()+\"&lt;\/p&gt;\\n\";\n            h += \"&lt;h2&gt;Part 4 Narrative&lt;\/h2&gt;&lt;p&gt;\"+$('#pp_deep_dive').val()+\"&lt;\/p&gt;\\n&lt;\/div&gt;\";\n            $('#pp-preview').show().val(h);\n        });\n    });\n    &lt;\/script&gt;\n    &lt;?php\n}\n\n\/\/ 4. SAVE LOGIC (PREVENTS DISAPPEARING CONTENT)\nadd_action('save_post', function($post_id) {\n    if (!isset($_POST&#91;'pp_v2_nonce_field']) || !wp_verify_nonce($_POST&#91;'pp_v2_nonce_field'], 'pp_v2_nonce')) return;\n    if (defined('DOING_AUTOSAVE') &amp;&amp; DOING_AUTOSAVE) return;\n\n    update_post_meta($post_id, 'pp_seo_title', $_POST&#91;'pp_seo_title']);\n    update_post_meta($post_id, 'pp_seo_desc', $_POST&#91;'pp_seo_desc']);\n    update_post_meta($post_id, 'pp_seo_keys', $_POST&#91;'pp_seo_keys']);\n    update_post_meta($post_id, 'pp_problem', $_POST&#91;'pp_problem']);\n    update_post_meta($post_id, 'pp_deep_dive', $_POST&#91;'pp_deep_dive']);\n\n    $comps = &#91;]; if(isset($_POST&#91;'c_name'])) foreach($_POST&#91;'c_name'] as $i =&gt; $n) if(!empty($n)) $comps&#91;] = &#91;'name' =&gt; $n, 'vid' =&gt; $_POST&#91;'c_vid']&#91;$i]];\n    update_post_meta($post_id, 'pp_components', $comps);\n\n    $diags = &#91;]; if(isset($_POST&#91;'d_url'])) foreach($_POST&#91;'d_url'] as $i =&gt; $u) if(!empty($u)) $diags&#91;] = &#91;'url' =&gt; $u, 'type' =&gt; $_POST&#91;'d_type']&#91;$i]];\n    update_post_meta($post_id, 'pp_diagrams', $diags);\n\n    $facts = &#91;]; if(isset($_POST&#91;'f_key'])) foreach($_POST&#91;'f_key'] as $i =&gt; $k) if(!empty($k)) $facts&#91;] = &#91;'key' =&gt; $k, 'val' =&gt; $_POST&#91;'f_val']&#91;$i]];\n    update_post_meta($post_id, 'pp_facts', $facts);\n});\n\n\/\/ 5. FRONT-END RENDERING (FIXED)\nadd_filter('the_content', function($content) {\n    if (!is_single()) return $content;\n    $id = get_the_ID();\n    $problem = get_post_meta($id, 'pp_problem', true);\n    if (empty($problem)) return $content;\n\n    $comps = get_post_meta($id, 'pp_components', true) ?: &#91;];\n    $diags = get_post_meta($id, 'pp_diagrams', true) ?: &#91;];\n    $facts = get_post_meta($id, 'pp_facts', true) ?: &#91;];\n    $deep = get_post_meta($id, 'pp_deep_dive', true);\n\n    $html = \"&lt;div class='pp-design-wrapper' style='border-top:3px solid #000; margin-top:30px;'&gt;\";\n    $html .= \"&lt;h2&gt;Part 1: The Problem&lt;\/h2&gt;&lt;p&gt;\".nl2br(esc_html($problem)).\"&lt;\/p&gt;\";\n    \n    $html .= \"&lt;h2&gt;Part 2: Components&lt;\/h2&gt;&lt;table style='width:100%; border-collapse:collapse;'&gt;\";\n    foreach($comps as $c) $html .= \"&lt;tr&gt;&lt;td style='border:1px solid #ccc; padding:10px;'&gt;\".esc_html($c&#91;'name']).\"&lt;\/td&gt;&lt;td style='border:1px solid #ccc; background:#000; color:#fff; text-align:center;'&gt;Video ID: \".esc_html($c&#91;'vid']).\"&lt;\/td&gt;&lt;\/tr&gt;\";\n    $html .= \"&lt;\/table&gt;\";\n\n    $html .= \"&lt;h2&gt;Part 3: Architecture&lt;\/h2&gt;\";\n    foreach($diags as $d) $html .= \"&lt;div style='border:1px solid #ddd; padding:10px; margin-bottom:15px;'&gt;&lt;strong&gt;\".esc_html($d&#91;'type']).\"&lt;\/strong&gt;&lt;img src='\".esc_url($d&#91;'url']).\"' style='width:100%;'&gt;&lt;\/div&gt;\";\n\n    $html .= \"&lt;h2&gt;Part 4: Detailed Implementation&lt;\/h2&gt;&lt;table style='width:100%; border-collapse:collapse; margin-bottom:15px;'&gt;\";\n    foreach($facts as $f) $html .= \"&lt;tr&gt;&lt;td style='border:1px solid #eee; padding:10px;'&gt;&lt;strong&gt;\".esc_html($f&#91;'key']).\"&lt;\/strong&gt;&lt;\/td&gt;&lt;td style='border:1px solid #eee; padding:10px;'&gt;\".esc_html($f&#91;'val']).\"&lt;\/td&gt;&lt;\/tr&gt;\";\n    $html .= \"&lt;\/table&gt;&lt;div style='padding:15px; border-left:3px solid #000; background:#f9f9f9;'&gt;\".nl2br(esc_html($deep)).\"&lt;\/div&gt;&lt;\/div&gt;\";\n\n    return $content . $html;\n});<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-23","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/golgappa.site\/comments\/wp-json\/wp\/v2\/posts\/23","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/golgappa.site\/comments\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/golgappa.site\/comments\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/golgappa.site\/comments\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/golgappa.site\/comments\/wp-json\/wp\/v2\/comments?post=23"}],"version-history":[{"count":1,"href":"https:\/\/golgappa.site\/comments\/wp-json\/wp\/v2\/posts\/23\/revisions"}],"predecessor-version":[{"id":24,"href":"https:\/\/golgappa.site\/comments\/wp-json\/wp\/v2\/posts\/23\/revisions\/24"}],"wp:attachment":[{"href":"https:\/\/golgappa.site\/comments\/wp-json\/wp\/v2\/media?parent=23"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/golgappa.site\/comments\/wp-json\/wp\/v2\/categories?post=23"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/golgappa.site\/comments\/wp-json\/wp\/v2\/tags?post=23"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}