Zynith SEO is a powerful, performance-optimized WordPress SEO plugin, designed specifically for SEOs. Our community is dedicated to helping SEO professionals maximize their WordPress sites through Zynith SEO, and it's available built-in tools and utilities.
Report Bug
·
Feature Request
Table of Contents
All plugin files live inside of the /src folder. These are the instructions on setting up your project locally. To get a local copy up and running follow these simple steps.
For all of the awesome people using Node Version Manager (NVM) instead of Node.js, we have an .nvmrc file in the repo. For everyone else, please check this file to make sure that your Node.js version matches.
- Switch to correct Node.js Version
nvm use- Clone the repo.
git clone https://github.com/Zynith-SEO/zynith-wordpress-plugin.git
- Install NPM packages.
npm install
- Run the start command to watch and build files.
npm run start:devBelow, you will find our common commands and notes for general usage.
-
Run
npm run build:dev.- When you build in dev, the plugin folder IS NOT ZIPPED. This is for those situations where you're working with local instance of WordPress using XAMP, LAMP, MAMP, etc. or even the LocalWP tool (which we use). Those steps are:
- Build the new plugin folder.
- Delete the current folder in your WP website.
- Copy your new plugin folder into the website's plugins folder.
- When you build in dev, the plugin folder IS NOT ZIPPED. This is for those situations where you're working with local instance of WordPress using XAMP, LAMP, MAMP, etc. or even the LocalWP tool (which we use). Those steps are:
-
Run
npm run build:plugin.- When you build the plugin, the plugin folder IS ZIPPED and ready for upload to a WP website.
-
Run
npm run start:dev.- This is runs the default
vitecommand. The terminal will tell you to open the browser to alocalhostport. We do not use the browser. - A custom hot reload plugin is located in the Vite config file to watch all files in the
/srcfolder. - Each time a file is changed, the hot reload will trigger a
npm run build:dev.
- This is runs the default
Vite will convert all of your .scss to .css. These files, along with all .js files, will all be placed in a /dist folder, and will be minified.
This covers the series of tasks that are used to initially build the plugin folder. Found in both build:dev and build:plugin scripts.
-
create-plugin-folders
- This will check to see if the folder
zynith-seoexists. If not, this folder will be created.
- This will check to see if the folder
-
copy-php-to-plugin-folder
- This copies the
/src/phpfolder over tozynith-seo.
- This copies the
-
copy-assets-from-dist-to-plugin-folder
- This copies the
assetsfolder fromdist/assetsover tozynith-seo/assets.
- This copies the
-
copy-xsl-to-plugin-assets
- This copies the
*.xslfile fromsrc/**/*(which is where the sitemap file is located) over tozynith-seo/assets.
- This copies the
-
convert-php-encoding
- With Vite, the PHP files don't get the correct file encoding. This step properly converts them to
utf-8for WordPress.
- With Vite, the PHP files don't get the correct file encoding. This step properly converts them to
-
delete-empty-folders
- This will recursively delete all empty folders from the parent plugin folder
zynith-seo.
- This will recursively delete all empty folders from the parent plugin folder
-
zip-plugin-core
- This will zip up folder
zynith-seoand name the new zip with the current version found in thepackage.jsonfile, examplezynith-seo-10.4.18.zip.
- This will zip up folder
This covers the series of tasks that are used to clean up the plugin folder after the zip file is created. Found in the build:dev and build:plugin scripts.
-
delete-plugin-build-folders
- Delete the
/distfolder that is generated by Vite. - Delete the plugin folder (i.e.,
/zynith-seo).
- Delete the
We don't have a dedicated roadmap outside of Github. Simply check the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Without these people and tools, life would be too complicated.
- Good food.
- Good company.
- Good tools.
