Tag Info

Hot answers tagged

26

I gave this some more thought and given size of WP code base (including bundled libraries) it doesn't seem very realistic to compile such list by hand (and repeat it for every new version - meh). I looked up appropriate static code analysis tool - PHP_CompatInfo and after some tinkering generated following report of extensions used by core (version scanned ...


22

You could install WordPress on Nginx. There are a number of resources to help: nginx Compatibility plugin HOWTO: Install WordPress On Nginx- Slicehost discussion How To Speed Up WordPress With Nginx And WP Super Cache WordPress on nginx + lighttpd + FastCGI + php Nginx as a front-end proxy cache for WordPress Some performance information from that last ...


20

Set client-side expiries for things like css, images, JavaScript etc which don't need to be redownloaded for each page view. This, by far, made the biggest difference to my site loading times. The fastest download is the download that never happened ... # BEGIN Expire headers <IfModule mod_expires.c> ExpiresActive On ExpiresDefault "access plus ...


18

Minimize the number of plugins you run to only what you really need. Especially be aware of plugins that add javascript and CSS code on every page load, even when that code isn't being used on the page. If you are creating your own theme from scratch, break your CSS down so that features that are only need for particular page templates or view types ...


16

The answer for this might be complicated and very long, as far as I know, there will also be some differences between servers & OS (IIS, Apache).. I can not say that the following list is a FULL list, but it includes some of those I know that are required : Curl and CurlSSL – Not sure it is REQUIRED but but much of the WordPress code will use it if it ...


9

Run memcached and use an object cache to reduce the number of database queries. This caches data from the database, rather than pages. Not sure if w3-total-cache already does this. Make sure you are running an opcode cache like APC. (There are several more available.)


8

WordPress local development environment: Local development environments could apply to developing any type of application but there are some specific WordPress gotchas that could hinder your transition from local to dev. The goal of a local development environment is to mimic as close as possible the production environment and allow seamless transition. ...


7

A few answers off the top of my head: 1) Minimize the number of HTTP requests the browser has to make to your host by concatenating JavaScript and CSS where possible/practical. 2) Offload as much of your image/media serving to 3rd party CDNs as possible, particularly if you're using shared hosting. 3) Try reducing the number of posts you're displaying on ...


7

Styles and scripts are always set up by the functions wp_enqueue_script() and wp_enqueue_style(), which have to be tied to a particular action hook in order to function. I took a peek inside Contact Form 7, and it looks like it's using action tags of wpcf7_enqueue_scripts and wpcf7_enqueue_styles to add them to the wp_print_scripts and wp_print_styles ...


7

You explicitly mention three services in your question title: EC2, RDS and EBS. If they're the three services you're interested in, then yes, very easily. EC2 + EBS are pretty much the same thing, EBS is simply a persistent storage extension to EC2, and RDS is a full MySQL database - you should be able to get those three services running together very ...


6

XAMPP is NOT cross-platform. There is XAMPP for Windows, XAMPP for Linux, for Mac and for Solaris, but each pack contains different pieces of software, runs differently with different performance, etc. (cross-platform means that you take the exact same piece of software and it runs the same way on different platforms ... like Azureus used to be: a jar that ...


6

In addition to using a disk caching plugin like wp-cache, put your blog on a host volume that has the "noatime" property set on it. Otherwise, SSH into your host (if your webhost provides that) and routinely run this command on your files every few days: chattr -R +A ~/* The ~/* means "my files under my home directory". You can change that path as you ...


6

The WordPress Codex documentation on Installing WordPress and Editing Files give you pretty much all information you need. You will need a web server to test the code and changes. So you can either do this on your web server (assuming you have some sort of hosting package, because you mention 'upload'), or on your local machine. For easy setup, there is ...


5

$_SERVER['REQUEST_URI'] will not be empty in WordPress, because it is filled in wp_fix_server_vars() (file wp-includes/load.php). This function is called in wp-settings.php before any plugin is loaded. So you can use it. But always escape the value. It is global and can be changed by any other code, so you cannot trust its value.


5

This type of question is open ended to answer because it depends on many variables. The typical memory usage of bare WP usually starts at 15MB and scales up. What you can do is turn on debugging and install the Debug Bar plugin and it will show you the amount of memory you're using. In wp-config.php set define( 'WP_DEBUG', true ); Another plugin which ...


5

Use a database class that is trimmed for optimization. We made good experiences with own code to reduce memory usage and database access speed. Next to that, you can optimize the database structure itself by some small changes that do a lot as well. Part of the database class code can be found in the wordpress trac, it did not made it into core (Ticket ...


5

WAMP is an acronym that means: Windows, Apache, Mysql, Php. There are different WAMP "distribution" such as XAMPP, WampServer (what some people just call "WAMP"), Wamp-Developer Pro (commercial software), and others... XAMPP for Windows is just another WAMP distribution, nothing more (nor something else).


5

WebSockets use the websockets protocol: WS:/example.com/yourscript.js and open a synchronous connection - meaning the connection is held open and dedicated to the browser. httpd servers, like apache2 (used by most shared hosting providers) use the http protocol: http://example.com/yourscript.js and open an asynchronous connection - meaning that no ...


5

I asked this question over a year ago, and during that time we've added more people to our team and developed a much larger number of sites in WordPress. I wanted to walk through our process in case it might help anyone else. Everything in Git This was something I was doing even as I asked the question, but it's good to call this point out. Using Git has ...


5

Souljacker, I would first take a look at your plugins. Star Ratings for Reviews hasn't been updated for over 3 years and looks like its real heavy on the db. I saw some raw sql with some INNER JOINS that look troublesome. On the server side you should implement some object caching. APC is the defacto standard and will give you the best results. Once ...


4

The default favicon location on your server gives a 404: http://www.steve.doig.com.au/favicon.ico Your blogs homepage source-code related to linking to another location is: <link rel="icon" type="image/png" href="http://www.steve.doig.com.au/wordpress/wp-content/themes/grid-focus-public-10/images/favicon.ico"> Note: The file suffix is .ico ...


4

Caching the WordPress Menu also gives you a performance boost. Especially if you have a lot of Pages or a giant Menu Structure, this should be considered. Do it in 2 easy steps. At first, create a function that gets or creates the menu, instead of calling wp_nav_menu directly. function get_cached_menu( $menuargs ) { if ( !isset( $menuargs['menu'] ) ) ...


4

Thomas McDonald is pretty much right on track. Just wanted to add that if you're going to use EC2 to scale your sites as you need more servers, then you will need to contend with the fact that you will have multiple instances of your site out there with no common shared volumes. In other words, let's say you have 2 EC2 instances up -- each one is ...


4

Parts of WordPress use (s)FTP to transfer files. Updates, for example, use (s)FTP. Media uploads do not, at least not unless something has changed in 3.7. If you are connecting to an (s)FTP server you have to provide the credentials that that server needs. Your file permissions won't come into play until after that connection is made. There are constants ...


4

Without looking at your box to see exactly what's going on, here are some potential avenues of slowness: Potential Causes Apache Apache is usually configured in such a way that a single httpd process is always running in the background. When a request comes in over the wire, it spins up a new httpd process to handle the request. Once the request closes, ...


4

I have just built a plugin that does this. It is not perfect but it do its job. You can find it in my Github: https://github.com/pontusab/wp-ftp-media-library So you need to change some things within the file on the row 28: /** * Change this to match your server * You only need to change the those with (*) * If marked with (-) its optional ...


3

It may be a conflict between the internal option 'home' or 'siteurl' and the access per pure IP address. WordPress doesn’t use just any server name, there is some redundancy which may get in your way here. You can try to resolve that by two constants defined in your wp-config.php: define( 'WP_HOME', 'http://' . $_SERVER['HTTP_HOST'] ); // or // define( ...


3

So any suggestions are welcomed. Suggestion #1 - Whenever Memcache is available in the server, I prefer Memcached Object Cache and Batcache, unless I have a specific reason to use W3 Total Cache. Whatever, W3 Total Cache offers, can be achieved without it too. For example, for minify, we have Better WP Minify, For Varnish, there is WordPress Varnish. ...


3

(This is not intended to be an answer. Just some useful information. If you think this info is not useful, let me know, I'll simply delete it.) I think talking in terms of packages would be easier for newbies, but since packages vary from system to system, it's hard to cover all of them. As I have experience with Debian (& Debian-based distros), I'd ...


3

I wouldn't worry too much about it - just download all databases and files. And if you're uploading them to the new server, change the wp-config files and run the following queries on the databases: UPDATE wp_options SET option_value = replace(option_value, 'http://www.example.com', 'http://www.newurl.com') WHERE option_name = 'home' OR option_name = ...



Only top voted, non community-wiki answers of a minimum length are eligible