1. Trang chủ
  2. » Công Nghệ Thông Tin

Tìm Hiểu về Wordpress - part 39 pps

10 300 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 10
Dung lượng 1,48 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

With progressive image-loading, users will experience a slight delay in the loading of images as they scroll down the page, but for pages with lots of images, progressive loading can re

Trang 1

• Combine CSS and JavaScript - There are many great resources available on

the Web for consolidating, combining, and compressing your CSS and JavaScript

files WordPress users should check out WP Minify http://digwp.com/u/344, which

uses the Minify PHP-5 application http://digwp.com/u/356 used to combine multiple

CSS and JavaScript files, compress their contents, and serve the results with HTTP

encoding (gzip or deflate) and headers that allow optimal client-side caching

• Progressive image-loading - Instead of loading all of your images at once,

delay loading of images in long web pages until the user scrolls down to the

next section of the web page This is opposite of preloading all of your images

at once With progressive image-loading, users will experience a slight delay

in the loading of images as they scroll down the page, but for pages with lots

of images, progressive loading can reduce the number of simultaneous HTTP

requests and greatly improve performance for the initial page load Check

out the jQuery plugin, Lazy Load http://digwp.com/u/493, to easily implement

progressive image loading on your site

• Use a content-distribution network - A Content Delivery Network (CDN)

is a network of computers cooperating to deliver content for web sites Using

additional servers to deliver images, downloadables, and other static files

reduces the load of your primary server while improving the performance and

scalability of the overall website Some commercially available CDNs include:

• Akamai Technologies - http://digwp.com/u/364

• Amazon CloudFront - http://digwp.com/u/358

• BitGravity - http://digwp.com/u/359

• CacheFly - http://digwp.com/u/360

• Internap - http://digwp.com/u/361

• Limelight Networks - http://digwp.com/u/363

• Mirror Image Internet - http://digwp.com/u/365

• SteadyOffload - http://digwp.com/u/362

Trang 2

While working to reduce the overall number of HTTP requests for your site, there are several ways to check how many requests are being made from your pages By simply opening a text editor and scanning your CSS file for all instances of the

“url()” value, you can determine how many images are being called just for your design

In your browser, you can also check the source code of your pages and examine the number of files linked to in the <head> area By searching your source code for all instances of “<img”, you can see how many regular images are being called

If you are using Firefox, the awesome and absolutely essential Firebug extension

http://digwp.com/u/366 can be used with Yahoo’s helpful YSlow add-on

http://digwp.com/u/379 to analyze your site’s performance in real time, with nice graphical representations showing many different aspects of your site, including the overall number and duration of HTTP requests

Here is a screenshot showing how Firebug together with YSlow can help you analyze the number of HTTP requests made by any page:

Trang 3

9.5.6 Plugin Maintenance

Many articles on the Web will advise you to disable unused plugins as a way of

optimizing your site While this is partially true, there is much more to the story It

all begins when deciding which plugins to install Do some research and make an

informed decision before implementing each of your plugins Every plugin that

you install requires resources and may decrease performance Plugins also affect

performance in a cumulative fashion Even so, I have seen sites running 50 or more

plugins that load very quickly Just keep in mind that, unless you know what you

are doing, loading up on unnecessary plugins can really slow things down

Next, once you begin installing plugins, remember to test as each one is installed

Don’t just slap it in there and walk away – take the time to surf your site and

examine its performance with the newly installed plugin(s) installed If you find

that they are slowing things down, reconsider your choice and search for better

options Otherwise, do what you can to offset the reduced performance, perhaps

by caching (see Section 9.5.2 in this chapter)

Optimizing your database is a great way to improve site

performance There are numerous ways to do so, including the

following:

• Manual SQL query - using the “OPTIMIZE TABLE ” command,

it is possible to optimize any specific table or group of

tables Use this format, replacing the example terms with

your table names:

OPTIMIZE TABLE `feeds`, `items`, `options`, `tags`

• Using phpMyAdmin - check all tables in your database and

select “Optimize” from the dropdown menu.

• Use a plugin - Joost De Valk’s Optimize DB plugin makes it

easy to optimize your database: http://digwp.com/u/369

Optimize Your WordPress Database

• Use a different plugin - Another good plugin for

optimizing and cleaning up your database is WP-Optimize

http://digwp.com/u/370 Also check out WordPress

Database Table Optimizer http://digwp.com/u/371 to automate the optimization process.

• Use a completely different plugin - The WP DBManager

plugin http://digwp.com/u/334 also makes it easy to optimize your database, along with a whole bunch of other great database-management features including automatic database backup and more.

Regardless of your method of choice, it is good practice to optimize your database on a periodic basis to help ensure optimal site performance.

Trang 4

Then, as you continue to take control of your plugin arsenal, keep an eye on any that may have been useful at one time but now are useless Uninstall any obsolete

and unused plugins immediately Every time you load a page on your site, all of

your plugins are loaded in the background Thus, any plugins that you can remove from this equation will provide an immediate performance boost

Also, as mentioned above, keep your plugins updated Whenever you see that

a new version of the plugin is available, take the time to check it out and then upgrade as soon as possible Staying current with plugins is a good idea because they usually feature improved code, tighter security, and better features

Finally, once you decide to disable a plugin, remove it completely Don’t leave it sitting there in a disabled state in your Admin area Uninstall it, and make sure that any peripheral files that may have been related to the plugin are also removed Hopefully, any plugin that you decide to install will provide a complete “Uninstall” option that cleans up after itself in the WordPress database, but if not, you may want to go in and manually remove all traces of it

9.5.7 Database Maintenance

If your theme is the heart of WordPress, then your database is its brain The database contains all of the settings, comments, posts, plugin options, and administrative data required for your site to function properly When this data becomes corrupted or is poorly optimized, performance may suffer A good practice to get into involves optimizing and backing up your database at regular intervals, depending on the use and scope of your site Highly active sites should optimize their database every day, while less-active sites may be fine optimizing once a week or less

You should also take every opportunity to clean up your database of unnecessary data For example, after installing, testing, configuring, and uninstalling plugins, you should examine your database for any tables or options that may no longer be necessary If the plugin developer did their job, their plugin will include a complete uninstall option that cleans up the database for you Unfortunately, this is not always the case

Too Many Plugins?

As this book goes to press, we

are currently running a poll at

the Digging into WordPress

companion site that asks,

“How Many Plugins do You

Use?” Drop by and vote if the

poll is still open when you read

this, otherwise check in to see

the results:

http://digwp.com/u/367

Trang 5

9.5.8 Other Optimization Techniques

There are many ways to optimize your site and improve performance for your

visitors Here are a few more ideas that are well-worth the effort

Split long posts into multiple pages

WordPress enables you to split up long posts into individual pages using the

<! nextpage > tag in your posts This trick is not for all posts, but for those

super-long articles with lots of images and stuff, it may really help to speed things up

Limit the number of posts on archive and index pages

The idea here is to reduce the overall size of your web pages by displaying fewer

posts Instead of, say, 20 posts on your homepage, you can use a plugin such

as Custom Query String Reloaded http://digwp.com/u/373 to limit the number of

posts that are displayed By doing similar for other types of page views, you can

customize page size in granular fashion

Specify far-future expires or cache-control headers

For static resources such as images, CSS and JavaScript files, a great way to decrease

load time for your regular visitors is to specify far-future “Expire Headers.” By

setting an expiration date of, say, a month for your image files, visitors’ browsers

will know not to re-fetch them, thereby reducing their load-time significantly

Here is an example showing an HTAccess technique used for three common types

of images:

# EXPIRATION HEADERS FOR IMAGES

# note: 2592000 seconds = 1 month

ExpiresActive On

Cache Your Database

Improve database performance

by caching your database queries Check out the DB Cache plugin to cache your queries and speed up the loading of your site.

http://digwp.com/u/368

Trang 6

ExpiresByType image/gif A2592000 ExpiresByType image/png A2592000 ExpiresByType image/jpg A2592000 ExpiresByType image/tif A2592000 ExpiresByType image/ico A2592000

Just keep in mind that with cache-control headers in place, you will need to change the file name of any files that are being cached in order for them to be refreshed

in the user’s browser

Reduce image sizes Obviously, large images require more time to load than smaller ones There are millions of articles out there explaining how to optimize your images, so we won’t reinvent the wheel here Instead, let us point out several avenues of image optimization that will help you determine the best approach:

• Online image optimization tools - There are many great online services such as Smush.it http://digwp.com/u/374 or punypng http://digwp.com/u/375 that make it easy to upload and optimize your image sizes Best of all, these free online services work on JPEG, GIF, and PNG images Both services use “lossless” compression techniques to ensure that your images do not lose any of their original visual quality

• Offline optimization programs - For more control over the details of your image optimization, check out OptiPNG http://digwp.com/u/376 or

PNGcrush http://digwp.com/u/377 Either of these powerful command-line programs will remove unnecessary data from your PNG images without reducing image quality Both are excellent programs that work beautifully

• Optimization during image creation - Arguably the best way to optimize

your images is to create them optimally to begin with There are many ways

to do this, and there are plenty of excellent articles that will help you use

programs such as Photoshop to take advantage of its image-optimization tools.

Trang 7

Hardcode database calls to improve performance

Speed things up by eliminating unnecessary calls to the database A classic

example of this is seen in the header.php file of most WordPress themes Here is a

typical example:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>

<head profile="http://gmpg.org/xfn/11">

<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>;

charset=<?php bloginfo('charset'); ?>" />

<title><?php wp_title('&laquo;', true, 'right'); ?><?php bloginfo('name'); ?></title>

<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" />

<link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" />

If you are releasing your theme for public consumption, the database calls made

by these template tags make it easy to display the correct information on any

WordPress-powered site For themes that do not require the convenience that

these template tags provide, however, it is possible to reduce the number of calls

made by replacing the tags with their plain-text values

If you go through your theme files, you will see there are many of these dynamic

calls that may be replaced with static values To help illustrate, here’s what

the previous code would look like after replacing the dynamic tags with their

corresponding, site-specific, plain-text values:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">

<head profile="http://gmpg.org/xfn/11">

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

<title>Digging into WordPress</title>

Trang 8

<link href="http://digwp.com/wp-content/themes/DiggingIntoWordpress-1/style.css" rel="stylesheet" type="text/css" media="screen" />

<link rel="pingback" href="http://digwp.com/xmlrpc.php" />

Disable unused/unnecessary plugins Plugins consume resources Running plugins you don’t need is stupid Go through your list and uninstall/delete any that you no longer need Trust us, you’ll be glad you did

To Infinity, and Beyond

As we have seen in this chapter, there will always be a way to improve the performance of your WordPress-powered website Out-of-the-box, it’s going to work just fine for just about anything, but that is no reason to get complacent Even with the smallest amount of effort, it is possible to improve your existing functionality and further optimize your current setup From simply installing

a few caching plugins to manually implementing custom functions, your site’s maintainability, security, and performance can be advanced as far as you are willing to go

Trang 9

Screenshot of

WordPress-founder Matt Mullenweg’s

personal website.

Thanks Matt.

http://ma.tt

Trang 10

In the beginner‘s mind there are many possibilities, but in the expert‘s there are few.

– S H U N R Y U S U Z U K I

Ngày đăng: 04/07/2014, 21:20

TỪ KHÓA LIÊN QUAN

w