Schimbarea URL-urilor pentru conținut static
Hostul meu are un cluster NGINX de mare viteză.
Aș dori să încarc fișierele mele CSS, JS și media de pe acest cluster. Am urmat acești pași și am adăugat noul domeniu static prin DNS-ul meu.
Noile setări DNS s-au propagat cu succes și pot accesa fișierele mele statice astfel http://static.example.com/wp-content/themes/mytheme/style.css.
Pentru început, aș dori să schimb URL-ul de încărcare media. Am încercat să adaug următorul fragment în wp-config.php
înainte de require_once(ABSPATH.'wp-settings.php');
/** Calea către clusterul NGINX */
define( 'UPLOADS', ''.'http://static.example.com/wp-content/uploads' );
Când salvez fragmentul de mai sus în wp-config.php
și reîmprospătez site-ul, fișierele mele media (imaginile) se încarcă de la următorul URL:
http://www.example.com/http://static.example.com/wp-content/uploads/2016/11/image-name.jpg
După cum puteți vedea, URL-ul rădăcină se încarcă înaintea URL-ului static. Care este modalitatea corectă de a seta noua cale de încărcare? Ar trebui să efectuez și o căutare și înlocuire pentru încărcările anterioare?
De asemenea, presupun că îmi schimb căile JS și CSS în functions.php
, astfel?:
// Înainte
wp_enqueue_script( 'script', get_template_directory_uri() . '/js/script.js', array(), '20161025', false );
// După
wp_enqueue_script('script', 'http://static.example.com/wp-content/themes/mytheme/js/script.js', array(), '20161025', false );

Acest răspuns a rezolvat problema.
Trebuie să adăugați acest cod în fișierul functions.php
.
/**
* URL personalizat pentru încărcare media
* @link https://wordpress.stackexchange.com/questions/77960/wordpress-3-5-setting-custom-full-url-path-to-files-in-the-media-library
*/
add_filter( 'pre_option_upload_url_path', 'upload_url' );
function upload_url() {
return 'http://static.yourdomain.com/wp-content/uploads';
}
Nu este necesar să adăugați fragmentul original în wp-config.php
.

Cea mai ușoară metodă de a spune WordPress să utilizeze un subdomeniu (sau alt domeniu) este prin definirea unei variabile globale în fișierul tău config.php.
define('WP_CONTENT_URL', 'http://static.domeniultau.com');
Pune această linie chiar la începutul fișierului de configurare, altfel s-ar putea să nu funcționeze. Aceasta va actualiza URL-ul tuturor resurselor din directorul wp-content.
Citește mai multe despre asta în Wordpress Codex
