PHPLD Next 0.1.16
This release improves legacy directory migrations by preserving old SEO URLs, repairing imported text encoding, and adding public navigation and discovery tools.
Added
- Added hidden legacy URL mode for old phpLD category paths and detail pages, including paths such as `/Category/Subcategory` and `/detail/link-123.htm`.
- Added legacy path fields and SEO description fields for imported categories and listings.
- Added canonical tags and meta descriptions on public category, listing, search, home, and What's New pages.
- Added breadcrumb navigation for category and listing detail pages.
- Added public site search across approved listing titles, URLs, and descriptions.
- Added category listing sort options for newest, alphabetical, and legacy hits.
- Added deep-pagination `noindex,follow` support for large What's New archives.
- Added focused regression coverage for legacy URL mode and nested legacy category path imports.
Changed
- The legacy importer now stores old category and listing paths so migrated sites can keep important backlinks working.
- The legacy importer now repairs common mojibake text from old phpLD databases before slug generation and database storage.
- Public category, listing, search, and What's New links prefer legacy URLs when legacy URL mode is enabled.
- Outbound listing links now include `nofollow noopener` by default for link-directory SEO hygiene.
- Listing preset templates now share the same canonical, category-link, and nofollow behavior as the default listing template.
Testing
- Added feature tests covering legacy category URLs, old detail URLs, redirects when legacy mode is disabled, search, sorting, and noindex pagination.
- Added an importer test to ensure nested legacy category paths are generated without double slashes.
- Verified public listing click behavior, pagination, What's New, public theme behavior, and directory preset rendering after the changes.
- Verified a real migrated phpLD preview with 305 categories and 399,962 imported approved links.
Upgrade Notes
- This release includes additive database migrations for legacy path and SEO description fields.
- Legacy URL mode is disabled by default and can be enabled with the `PHPLD_LEGACY_URL_MODE` environment setting for migrated phpLD installs.
- After upgrading a legacy migration, rerun the legacy import so paths, repaired encoding, SEO descriptions, and legacy hit metadata are populated.