Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the acf domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/functions.php on line 6131

Deprecated: Creation of dynamic property ACF::$fields is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/fields.php on line 138

Deprecated: Creation of dynamic property acf_loop::$loops is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/loop.php on line 28

Deprecated: Creation of dynamic property ACF::$loop is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/loop.php on line 269

Deprecated: Creation of dynamic property ACF::$revisions is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/revisions.php on line 397

Deprecated: Creation of dynamic property acf_validation::$errors is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/validation.php on line 28

Deprecated: Creation of dynamic property ACF::$validation is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/validation.php on line 214

Deprecated: Creation of dynamic property acf_form_customizer::$preview_values is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-customizer.php on line 28

Deprecated: Creation of dynamic property acf_form_customizer::$preview_fields is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-customizer.php on line 29

Deprecated: Creation of dynamic property acf_form_customizer::$preview_errors is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-customizer.php on line 30

Deprecated: Creation of dynamic property ACF::$form_front is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-front.php on line 598

Deprecated: Creation of dynamic property acf_form_widget::$preview_values is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-widget.php on line 34

Deprecated: Creation of dynamic property acf_form_widget::$preview_reference is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-widget.php on line 35

Deprecated: Creation of dynamic property acf_form_widget::$preview_errors is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/forms/form-widget.php on line 36

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the all-in-one-wp-migration domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/functions.php on line 6131

Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/functions.php:6131) in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/wp_plugin/wp_plugin.php on line 23

Deprecated: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/wp-super-cache/wp-cache-phase2.php on line 54

Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/functions.php:6131) in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/wp-super-cache/wp-cache-phase2.php on line 1539

Deprecated: strtolower(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/wp-super-cache/wp-cache-phase2.php on line 828

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the rocket domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/functions.php on line 6131

Deprecated: Creation of dynamic property acf_field_oembed::$width is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/fields/class-acf-field-oembed.php on line 31

Deprecated: Creation of dynamic property acf_field_oembed::$height is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/fields/class-acf-field-oembed.php on line 32

Deprecated: Creation of dynamic property acf_field_google_map::$default_values is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/fields/class-acf-field-google-map.php on line 33

Deprecated: Creation of dynamic property acf_field__group::$have_rows is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/includes/fields/class-acf-field-group.php on line 31

Deprecated: Creation of dynamic property acf_field_clone::$cloning is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/pro/fields/class-acf-field-clone.php on line 34

Deprecated: Creation of dynamic property acf_field_clone::$have_rows is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-pro/pro/fields/class-acf-field-clone.php on line 35

Deprecated: Creation of dynamic property jh_acf_field_table::$settings is deprecated in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-content/plugins/advanced-custom-fields-table-field/class-jh-acf-field-table.php on line 23

Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/functions.php:6131) in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/rest-api/class-wp-rest-server.php on line 1902

Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/functions.php:6131) in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/rest-api/class-wp-rest-server.php on line 1902

Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/functions.php:6131) in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/rest-api/class-wp-rest-server.php on line 1902

Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/functions.php:6131) in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/rest-api/class-wp-rest-server.php on line 1902

Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/functions.php:6131) in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/rest-api/class-wp-rest-server.php on line 1902

Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/functions.php:6131) in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/rest-api/class-wp-rest-server.php on line 1902

Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/functions.php:6131) in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/rest-api/class-wp-rest-server.php on line 1902

Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/functions.php:6131) in /var/www/vhosts/studiogo.tech/httpdocs/upcloudold/wp-includes/rest-api/class-wp-rest-server.php on line 1902
{"id":24980,"date":"2022-02-22T09:29:00","date_gmt":"2022-02-22T07:29:00","guid":{"rendered":"https:\/\/upcloud.com\/community\/tutorials\/object-storage-wordpress-media-files"},"modified":"2022-02-22T09:29:00","modified_gmt":"2022-02-22T07:29:00","slug":"object-storage-wordpress-media-files","status":"publish","type":"tutorial","link":"https:\/\/studiogo.tech\/upcloudold\/tutorial\/object-storage-wordpress-media-files\/","title":{"rendered":"How to use Object Storage for WordPress media files"},"content":{"rendered":"\n

Object storage is a popular solution for storing large amounts of static, unstructured data thanks to its scalability and API-friendly nature. It’s often used for serving data analysis software but also offers many other opportunities, for example, saving media files on Object Storage for WordPress hosting.<\/p>\n\n\n\n

WordPress sites that work with rich media content could greatly benefit from using Object Storage to host their videos, photos, and audio files. In this tutorial, we’ll show you how easy it is to integrate Object Storage with your WordPress site with no coding necessary.<\/p>\n\n\n\n

Why use Object Storage for WordPress?<\/h2>\n\n\n\n

A large portion of the websites across the world run on WordPress, and for a reason. It provides a powerful platform to build just about anything you want with great features and easily customisable designs. Yet it could still be improved by pairing it with a simple Object Storage.<\/p>\n\n\n\n

One of the goals of any website is to grow to attract new visitors. This naturally required the ability to scale as your needs increase. Object Storage enables you to easily add storage space for your images, videos and other media files. Furthermore, even the starting plan for Object Storage includes a generous amount of storage capacity.<\/p>\n\n\n\n

Security is another necessity for a WordPress host of any size. That is not a problem with Object Storage, our security-first design principles enforce HTTPS in transit while all data is stored securely on a redundancy-enabled backend.<\/p>\n\n\n\n

However, these are but a couple of examples of the benefits of Object Storage offers for WordPress hosting. Learn more by checking out our blog post on Object Storage for WordPress Companies<\/a>.<\/p>\n\n\n\n

Creating a new Object Storage instance<\/h2>\n\n\n\n

To start with, you will need an Object Storage instance. If you don’t already have one, create a new one to upload your media files into. You can of course use existing Object Storage as well and simply create a new bucket for your WordPress media files.<\/p>\n\n\n\n

You can get started quickly with Object Storage<\/a> by following our tutorial.<\/p>\n\n\n\n

Alternatively, if you are using Terraform for your cloud infrastructure needs, you might be interested in configuring your Object Storage using our Terraform plugin<\/a>.<\/p>\n\n\n\n

Installing the Media Cloud WordPress plugin<\/h2>\n\n\n\n

Once you have an Object Storage instance ready and available, you can begin integrating it with your WordPress site. The easiest way to go about this is using an S3-compliant WordPress plugin, for example, Media Cloud.<\/a><\/p>\n\n\n\n

The reason we are using this specific plugin is that Media Cloud allows you to use custom endpoints. This enables it to work with UpCloud’s Object Storage out of the box. Other plugins might be able to do the same, so just pick whichever you prefer.<\/p>\n\n\n\n

On a standard WordPress site, you can install Media Cloud straight from the plugin library. Go to the Add New<\/em> section under the Plugins<\/em><\/span> menu and search for “Media Cloud”.<\/p>\n\n\n\n

When you’ve found the plugin, click the Install<\/em> button to add it to your WordPress site.<\/p>\n\n\n\n

\"Installing<\/figure>\n\n\n\n

Once installed, you will then need to activate the plugin by clicking the Activate button.<\/p>\n\n\n\n

\"Activating<\/figure>\n\n\n\n

After activating, the plugin will prompt you with the option to enable or skip update notifications and diagnostic tracking. This is up to your preference and won’t affect the functionality of the plugin.<\/p>\n\n\n\n

\"Selecting<\/figure>\n\n\n\n

That’s it for the installation itself! After you’ve selected whether to allow or skip the notifications and diagnostics, you will be presented with the guided setup wizard. Continue ahead in the next section on how to go about connecting your Object Storage.<\/p>\n\n\n\n

Connecting Media Cloud to Object Storage<\/h2>\n\n\n\n

After installing and activating the Media Cloud plugin, you will see the welcome page of the configuration wizard. Simply click the Next<\/em> button to start.<\/p>\n\n\n\n

\"Media<\/figure>\n\n\n\n

Next, select the S3 Compatible storage provider and again click the Next<\/em> button.<\/p>\n\n\n\n

\"Choosing<\/figure>\n\n\n\n

You will then be presented with an explanation of what the S3 compatibility offers. UpCloud Object Storage is fully S3 compliant ensuring compatibility with a wide variety of software and integrations.<\/p>\n\n\n\n

Click the Next<\/em> button to continue.<\/p>\n\n\n\n

\"Instructions<\/figure>\n\n\n\n

Object Storage access details<\/h3>\n\n\n\n

Now, in the step for Cloud Storage Settings, you need to enter your Object Storage access details. These include the Access and Secret keys as well as the public endpoint URL and bucket of your Object Storage.<\/p>\n\n\n\n