# 1. Installation

**Requirements**

* Active PHP Extension `mbstring` on the Hosting
* Allow using PHP function `curl_exec`

#### Installation

You install normally like other plugins but use the file upload method. *Note*: In order for the installation to be successful, you need to make the folder wp-content/plugins writable.

Before proceeding to install the plugin we suggest you to disable cache plugins such as WP Rocket, W3 Total Cache..to avoid errors during optimization implementation. After optimization is complete, re-enable the cache plugin and configure it according to the instructions in step 4.

To install, you login to the WP admin page and go to  **Appearance > Install Plugins > select to install plugin "Penci Shortcodes & Performan" and "Penci Speed Optimizer"**. You need to activate both plugins **"Penci Shortcodes & Performan" and "Penci Speed Optimizer"** to get it works correctly.&#x20;

After installed & activated the plugins **"Penci Shortcodes & Performan" and "Penci Speed Optimizer"**, you can go to Customize > Speed Optimization > PageSpeed Optimizer > and check to "Enable Page Speed Optimizer"

**Note**:&#x20;

* Set PHP memory limit in the wp-config.php file: `define('WP_MEMORY_LIMIT', '512M');`

#### Usage

This plugin will not edit or delete any files on the hosting. The optimization process will generate new js & CSS files based on the original files of the website. In case you change CSS and js files for your theme and plugins so you need to tell with the plugin that you have modified them. To do this you can go to **Dashboard > Settings > PageSpeed Optimizer** > and press the **\[Purge All]** button to refresh the CSS and js files generated for optimization.

#### Hosting configuration

Some hosting have to install software for viruses scanning or **security plugins** automatically delete suspicious files. **Penci Speed Optimizer** plugin has used `curl_exec` function, and the PHP file can be removed by your host. To ensure plugin works without errors, please exclude virus scan from folder `plugins/wp2speed`

Enable `mbstring` php extension.In cpanel, find 'Select PHP Version' & click on it.![](https://www.evernote.com/shard/s382/res/b50fd006-27dd-4419-8217-879115d4cbbb.png?resizeSmall\&width=1344)

![](/files/-MYNvlqoukeVtgL9gFLL)

&#x20;\
Check `mbstring` as bellow:![](https://www.evernote.com/shard/s382/res/de5075ef-326d-41f6-b747-b2c20e2e01a3.png?resizeSmall\&width=1344)

![](/files/-MYQLmkRDy4iNQOCcV-p)

Allow `curl_exec` function.in \`Select PHP Version\` app, click on 'Options' tab.![](https://www.evernote.com/shard/s382/res/644df258-4a2a-4dde-8d73-c43a12d879ef.png?resizeSmall\&width=1344)

![](/files/-MYNvlqjwrhS0p9J4rbg)

And make sure \`curl\_exec\` not in disable\_functions field.![](https://www.evernote.com/shard/s382/res/1147d98b-4571-46d3-970b-0488b75ae6c4.png?resizeSmall\&width=1344)

![](/files/-MYNvlqn7IDouWf3r5-3)

\
Exclude virus scan in the plugin folder. Open `imunify 360 / imunify AV` app in cpanel. Click tab 'Ignore list' & click the link 'Add new file or directory'.![](https://www.evernote.com/shard/s382/res/7c1a22f4-d471-4d46-b316-ba037638b02c.png?resizeSmall\&width=1344)

![](/files/-MYNvlqqNxNn9U07fSKv)

Enter the absolute path to **Penci Speed Optimizer** plugin & click ADD button, like this:

`$HOME/wp-content/plugins/wp2speed`

### Disable opcache when you got 503 error after activate plugin "Penci PageSpeed Optimizer"

In some case, if you using PHP 8, you can get an error 503 issue after activating the plugin Penci PageSpeed Optimizer - you just need to go to your hosting > Cpanel > Select PHP Version > click on the "Extensions" tab and disable the  **opcache**  extension - check the image below:

![](/files/-M_8vlfVk5xaxOCjotWr)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://optimize.pencidesign.net/1.-installation-1.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
