# CSPG Basic SEO Helper

A WordPress plugin that creates meta HTML for social media grids and identifiers.

## Description

CSPG Basic SEO Helper is a lightweight WordPress plugin that automatically generates essential SEO meta tags and structured data for your website. It helps improve your site's visibility on search engines and social media platforms.

## Features

- **Open Graph Meta Tags**: Facebook and social media optimization
- **Twitter Cards**: Twitter-specific meta tags
- **Schema.org Structured Data**: JSON-LD markup for search engines
- **Admin Interface**: Easy configuration through WordPress admin
- **WordPress Repository Compliant**: Follows all WordPress standards

## Installation

1. Upload the plugin files to `/wp-content/plugins/cspg-basic-seo-helper/`
2. Activate the plugin through WordPress admin
3. Configure settings in 'CSPG Basic SEO Helper' admin menu

## Development Setup

### Requirements

- PHP 7.4+
- WordPress 5.0+
- Docker (for development environment)

### PHPCS Notes

This plugin follows **WordPress Coding Standards** (not PSR-12).

#### Expected PSR-12 Violations (85 errors)

When running `phpcs --standard=PSR12`, you will see 85 errors that are **intentional** and **required** by WordPress architecture:

**71 Method Name Errors:**
- WordPress hook methods use `snake_case` (e.g., `enqueue_scripts`, `add_meta_boxes`)
- PSR-12 requires `camelCase`, but changing these would break all WordPress hooks
- These method names are dictated by WordPress core and cannot be modified

**7 Namespace Errors:**
- WordPress plugins typically don't use namespaces for backward compatibility
- This plugin follows traditional WordPress plugin architecture
- Adding namespaces would require complete rewrite and break WordPress autoloading

**7 Class Name Errors:**
- WordPress convention uses underscores: `CSPG_Basic_SEO_Helper_Admin`
- PSR-12 requires PascalCase: `CspgBasicSeoHelperAdmin`
- WordPress core and ecosystem use underscore convention

#### Line Length Warnings (667 warnings)

Line length warnings are cosmetic and do not affect functionality or WordPress.org compliance.

### Local Development with Docker

See the `docker-compose.yml` file for setting up a local WordPress development environment.

## Plugin Structure

```
basic-seo-helper/
├── admin/                  # Admin-specific functionality
│   ├── partials/          # Admin page templates
│   └── class-basic-seo-helper-admin.php
├── assets/                # CSS and JavaScript files
│   ├── css/
│   └── js/
├── includes/              # Core plugin classes
├── languages/             # Translation files
├── public/               # Public-facing functionality
├── basic-seo-helper.php  # Main plugin file
└── readme.txt           # WordPress Repository readme
```

## Contributing

1. Follow WordPress Coding Standards
2. Include proper documentation
3. Test thoroughly before submitting

## License

GPLv2 or later