updt=ate ollama indocker and add plugins
This commit is contained in:
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
// File: public/class-public.php
|
||||
|
||||
if (!defined('ABSPATH')) {
|
||||
exit;
|
||||
}
|
||||
|
||||
class PC_HFAP_Public {
|
||||
|
||||
public function __construct() {
|
||||
add_action('wp_head', array($this, 'output_header_snippets'), 9999);
|
||||
add_action('wp_body_open', array($this, 'output_body_snippets'), 9999);
|
||||
add_action('wp_footer', array($this, 'output_footer_snippets'), 9999);
|
||||
add_action('wp_enqueue_scripts', array($this, 'enqueue_public_assets'));
|
||||
}
|
||||
|
||||
public function output_header_snippets() {
|
||||
$snippets = PC_HFAP_Snippet::get_headers();
|
||||
|
||||
if (empty($snippets)) {
|
||||
return;
|
||||
}
|
||||
|
||||
echo "\n<!-- Headers & Footers Code Plugin - Header Snippets -->\n";
|
||||
|
||||
foreach ($snippets as $snippet) {
|
||||
echo "\n<!-- Snippet: " . esc_html($snippet->get_title()) . " -->\n";
|
||||
echo $snippet->get_code() . "\n";
|
||||
echo "<!-- End Snippet: " . esc_html($snippet->get_title()) . " -->\n";
|
||||
}
|
||||
|
||||
echo "\n<!-- End Headers & Footers Code Plugin - Header Snippets -->\n";
|
||||
}
|
||||
|
||||
public function output_footer_snippets() {
|
||||
$snippets = PC_HFAP_Snippet::get_footers();
|
||||
|
||||
if (empty($snippets)) {
|
||||
return;
|
||||
}
|
||||
|
||||
echo "\n<!-- Headers & Footers Code Plugin - Footer Snippets -->\n";
|
||||
|
||||
foreach ($snippets as $snippet) {
|
||||
echo "\n<!-- Snippet: " . esc_html($snippet->get_title()) . " -->\n";
|
||||
echo $snippet->get_code() . "\n";
|
||||
echo "<!-- End Snippet: " . esc_html($snippet->get_title()) . " -->\n";
|
||||
}
|
||||
|
||||
echo "\n<!-- End Headers & Footers Code Plugin - Footer Snippets -->\n";
|
||||
}
|
||||
|
||||
public function output_body_snippets() {
|
||||
$snippets = PC_HFAP_Snippet::get_bodies();
|
||||
|
||||
if (empty($snippets)) {
|
||||
return;
|
||||
}
|
||||
|
||||
echo "\n<!-- Headers & Footers Code Plugin - Body Snippets -->\n";
|
||||
|
||||
foreach ($snippets as $snippet) {
|
||||
echo "\n<!-- Snippet: " . esc_html($snippet->get_title()) . " -->\n";
|
||||
echo $snippet->get_code() . "\n";
|
||||
echo "<!-- End Snippet: " . esc_html($snippet->get_title()) . " -->\n";
|
||||
}
|
||||
|
||||
echo "\n<!-- End Headers & Footers Code Plugin - Body Snippets -->\n";
|
||||
}
|
||||
|
||||
public function enqueue_public_assets() {
|
||||
// Enqueue public styles if needed
|
||||
wp_enqueue_style(
|
||||
'pc-hfap-public-style',
|
||||
PC_HFAP_PLUGIN_URL . 'public/css/public-style.css',
|
||||
array(),
|
||||
PC_HFAP_VERSION
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
<?php
|
||||
// Silence is golden
|
||||
@@ -0,0 +1,76 @@
|
||||
/* File: public/css/public-style.css */
|
||||
|
||||
/* Public styles for the plugin */
|
||||
/* Note: Most styling is handled by the theme, but we include this for any future frontend features */
|
||||
|
||||
.pc-hfap-public-notice {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
/* Hidden by default, can be used for future features */
|
||||
|
||||
/* Print styles for snippets */
|
||||
@media print {
|
||||
.pc-hfap-no-print {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* Accessibility improvements */
|
||||
.pc-hfap-sr-only {
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
height: 1px;
|
||||
padding: 0;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
clip: rect(0, 0, 0, 0);
|
||||
white-space: nowrap;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
/* Responsive design helpers */
|
||||
.pc-hfap-container {
|
||||
width: 100%;
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 0 20px;
|
||||
}
|
||||
|
||||
/* Clearfix */
|
||||
.pc-hfap-clearfix::after {
|
||||
content: "";
|
||||
clear: both;
|
||||
display: table;
|
||||
}
|
||||
|
||||
/* Loading animation for any future AJAX features */
|
||||
.pc-hfap-loader {
|
||||
border: 3px solid #f3f3f3;
|
||||
border-top: 3px solid #3498db;
|
||||
border-radius: 50%;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
animation: pc-hfap-spin 2s linear infinite;
|
||||
margin: 20px auto;
|
||||
}
|
||||
|
||||
@keyframes pc-hfap-spin {
|
||||
0% { transform: rotate(0deg); }
|
||||
100% { transform: rotate(360deg); }
|
||||
}
|
||||
|
||||
/* Reduced motion support */
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
.pc-hfap-public-element {
|
||||
transition: none;
|
||||
animation: none;
|
||||
}
|
||||
}
|
||||
|
||||
/* High contrast mode support */
|
||||
@media (prefers-contrast: high) {
|
||||
.pc-hfap-public-element {
|
||||
border: 2px solid currentColor;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
<?php
|
||||
// Silence is golden
|
||||
Reference in New Issue
Block a user