WordPress How-To: Khái niệm cơ bản của WP Plugins Development

Bài viết được viết bởi:
  • Mẹo viết blog
  • Cập nhật: Tháng Tám 12, 2013

Chúng tôi sẽ làm việc trên một loạt các bài báo tập trung vào “làm thế nào để làm X với WordPress“. Những bài viết này sẽ hơi dài và chủ yếu dành cho các nhà quản trị web và nhà phát triển có kinh nghiệm; trong trường hợp bạn mới sử dụng WordPress, hãy xem Hướng dẫn về Blog WordPress đầu tiên của bạn.

Và bây giờ, một số giới thiệu cơ bản.

Mở rộng các tính năng WordPress bằng cách phát triển một plugin mới

Trang chủ WordPress

WordPress is the most popular content management platform in the world, with more than 60 million users of its self-hosted PHP installation package and millions more using its web-based, remotely-hosted WordPress.com service. This is not a coincidence or mistake. WordPress is, quite simply, the most fully-featured, affordable (it's free!), easily-usable content management application in the world. However, even this titan of content management isn't absolutely perfect, and many users eventually find that the software lacks one or two essential functions that they simply cannot live without.

Đi vào WordPress plugins.

These unsatisfied users will then go on a quest, a large search, in an effort to find the right plugin to get the job done. Some people find that needed plugin, BUT many others simply don't find that they're looking for.

Some WordPress users might be content to simply give up the fight and resign themselves to a life where one essential feature is missing from their website. But a sizable group of these users is simply not willing to throw in the towel, and they'll pursue the process of designing their own custom-made plugin to get the job done. It might sound complicated and intimidating, and some parts of it might be. Certainly, kiến thức vững chắc về PHP sẽ được yêu cầu cho các plugin nâng cao bổ sung các tính năng thực sự cho chức năng WordPress. Nhưng một plugin là một điều khá dễ viết, đặc biệt là các chức năng cơ bản chuẩn trên WordPress và chỉ cần được "làm lại" để thực hiện công việc tốt hơn và trình bày nó một cách dễ chịu hơn.

Users who won't settle for second-best, and are thinking about creating their own plugin, need only follow the simple steps below to put their WordPress installation on a path toward greater functionality and compatibility with their big ideas and grand plans for Internet domination.

Bước 1: Tạo một tệp mới trong thư mục Plugin và cung cấp cho nó một mục đích

Plugin WP

Bước đầu tiên để tạo plugin là tạo một tệp plugin PHP mới trong thư mục plugin WordPress hiện có.

By now, most users should know where to locate that directory as they've likely uploaded a handful of plugins to enhance their WordPress installations' functionality already. However, for those who are really approaching this process as a complete and total novice, the directory containing all pug in files is found at the following location for every version and iteration of the WordPress software:

/ public_html / wp-content / plugins /

Navigate to that directory and create a new (blank, at this point) file named “my-custom-plugin.php.” This is the file which will contain all o our work from start to finish, and we'll give it an obvious name sot hat it doesn't accidentally get deleted or prematurely activated during the development process. Once this file has been created and uploaded to the server, use an FTP client to directly edit this file (using a built-in text editor) while it is still hosted on the server. This is the best way to edit remote files, as it makes saving and uploading essentially automatic, and definitely easier than managing multiple versions of the same file stored in different locations.

The plugin will now be named, described, and given a “byline.” This is the same type of information that is placed at the top of a theme's “style.css” stylesheet file, and theme developers will feel right at home by filling out the information below. Place this information into the top of the plugin file before any other code. Even the opening PHP tag should not be placed before these commented lines. If these lines are placed incorrectly, or are omitted entirely, the plugin itself will not appear within the WordPress Dashboard. That means it cannot be activated, used, tested, or debugged, and that's no good. Here's what needs to be filled out before opening the file and proceeding to define a function:

/*
Tên trình cắm: Plugin tùy chỉnh được sử dụng để tìm hiểu các cách của WordPress
URI plugin: http://www.your-website-here.com
Mô tả: Plugin này đang được sử dụng để minh họa cách mã PHP, biến WordPress, XHTML, CSS và thông tin khác, được đặt vào tệp PHP plugin chuẩn để thêm chức năng mới vào cài đặt WordPress chuẩn.
Tác giả: Tên của bạn ở đây
Version: 1.0
URI tác giả: http://www.your-website-here.com
*/

With that information having been completely filled in, the plugin will now be spotted by the WordPress Dashboard and its information will be properly displayed alongside other plugins within the plugin activation / deletion administration panel. The plugin has now been given a filename, a friendly name, and a purpose. All it's missing at this point are some functions. That's where step two comes in.

Plugin WP

Bước 2: Định nghĩa một hàm Plugin (hoặc Hàm) để sử dụng trên một Website WordPress

Trình diễn plugin này sẽ giả định rằng nhà phát triển đã tạo lĩnh vực tùy chỉnh. Trường này sẽ được sử dụng để xác định xem các liên kết truyền thông xã hội có được đính kèm với bài đăng để người dùng có thể chia sẻ bài đăng với bạn bè và thành viên gia đình của họ đã đăng ký cập nhật mạng xã hội của họ trên các trang như Twitter, Facebook, LinkedIn và MySpace hay không . Trường tùy chỉnh đã được tạo, trong trường hợp này, được đặt tên là "social_links".

Using the PHP code in the plugin, we will determine whether or not the social networking field has data inside of it. If it does, a “bar” of social media sharing links will be displayed. If it does not have any data within it, then these links will be omitted. This is a great way to disable the sharing of posts on your website which are simply not meant for viewing by the wider public, and doing it in a plugin is a great way to ensure that this functionality applies across all themes, rather than simply in one theme's entry template.

Quá trình này được thực hiện bằng cách "thêm" một hành động vào mã WordPress. Điều này được thực hiện bằng cách sử dụng lệnh "add_action" PHP, đã đỗ với một số câu lệnh "echo" và ống kính hiện có của mã WordPress có thể được chuyển trực tiếp từ các tệp mẫu WordPress hiện có. Hãy nhớ rằng hầu như bất kỳ biến nào có thể được sử dụng trong một mẫu cũng hợp lệ để đưa vào trong một tệp plugin, mặc dù thẻ PHP mở và đóng phải được bỏ qua khi mã đã được gói trong một, mở rộng và đóng gói thẻ PHP .

Here's what the added “action” looks like within the plugin file when it is completely filled out:

function social_links ($ post_ID) {
$ wp_query toàn cầu;
$ ID = $ wp_query-> post-> ID;
if (get_post_meta (13); == 1)
{
trả về $ post_ID. “Nút liên kết mạng xã hội”;
}
khác
{
trả về $ post_ID. “”;
}
}
add_action(‘the_content', ‘social_links');

Các dòng mã đầu tiên được sử dụng đơn giản để xác định xem có bất kỳ thông tin “meta” nào đã được điền vào trong Bảng điều khiển WordPress cho mục nhập cụ thể đang được xem hay không. Điều này được thực hiện bằng cách truy vấn cơ sở dữ liệu WordPress (sử dụng biến $ wp_query) và tìm kiếm thông tin trong số trường meta 13. Mỗi trường tùy chỉnh được xác định bằng số, giống như mục nhập, nhận xét và trang. Số này có thể được sử dụng trong các biến cho câu lệnh có điều kiện.

So, first the plugin looks into the custom field for each entry and sees whether or not content is present in the field's database table. Next, it runs through the conditional. If the content equals “1,” it proceeds. The usage of “1” in this case means “if the field has data present.” The inverse of this would be “0” which would translate to “if the field has no data present.” So, if the field has data present, or equals “1,” the function proceeds to the first part of the conditional. That section provides for the display of social media sharing links. For the purpose of brevity, those links have not been included with the function. However, they can be pretend using simple XHTML within the quotes that follow the “return $post_ID” statement.

If the custom field does not have data present, it effectively equals “0” as far as this plugin's code is concerned. However, because this conditional is an either / or statement, instead of one with many different outcomes, we simply use the “else” construction to instruct the plugin to print the alternative content under any other circumstances. In this case, it simply prints nothing. For this reason, all that needs to be placed within the function is:

trả về $ post_ID “”

At the bottom of the statement, we add our new function as an “action” to the existing “the_content” PHP variable. This will append the social network sharing buttons to the bottom of an entry directly after the entry's content is finished printing. The statements in this parenthetical statement are chronological, meaning the new action (“social_links”) could be placed before “the_content” if those buttons were supposed to be displayed at the beginning of the content, directly after the entry's title has been printed onto the screen.

With the function completed, and the action added to the WordPress Loop directly after the entry's main body of content is printed on tot he page, the plugin is essentially complete. This is the appropriate time to add the closing PHP tag, save the file, and upload it to the server for use.

Bước 3: Kích hoạt Plugin và dùng thử

Phần quan trọng nhất của quá trình này là kích hoạt plugin và xác minh rằng các chức năng của nó hoạt động như mong đợi và không gây ra sự cố với bất kỳ plugin hiện có hoặc các tính năng WordPress chuẩn nào. Đây cũng là thời điểm tốt để xác minh tính toàn vẹn của mã PHP và đảm bảo rằng mọi đầu ra (XHTML hoặc bằng cách khác) sẽ in như mong muốn.

If any errors do arise during the activation and testing process, it's important to check the plugin file and make sure that all statements are properly opened and closed. This means checking for punctuation, in many cases, including parentheses, semicolons, brackets, and lowercase letters. Remember that PHP is case sensitive, and it's also punctuation-sensitive: Any unclosed statement essentially continues infinitely and can cause pages to simply not load, or load extremely slowly.

Khi tất cả các kinks đã được làm việc ra, công việc là phần lớn hoàn thành. Tuy nhiên, có một vài cân nhắc bổ sung cần lưu ý cho các trường hợp khác.

Bước 4: Tạo một tệp tin ReadMe Plugin

Tạo một Plugin WordPress

If the plugin is intended for private use only, there is simply no reason to create a “ReadMe” file unless, of course, you're afraid that you might forget what the plugin does, how it was built, or how it functions within the WordPress Loop itself. However, many developers create plugins with the intent to distribute them to the wider WordPress community and, with more than 60 million users, this is a lucrative way of promoting a website and earning secondary income.

Those users are virtually required to craft a ReadMe document that outlines the plugin's functions, how to install the file to the server, and how to set it up and customize its functions. This file can also contain information such as change log which details every change and update made to the plugin over time. However, the important thing is to explain what the plugin does, how it works, and how to install it. Novice users won't know what to do if they're not guided through the process, much like novice plugin developers didn't know how to create a new WordPress function until the last step of this guide.

When the plugin file has been completed and paired with a ReadMe file (typically a .txt file), it's time to put both documents into their own folder and compress them using the standard ZIP file format. The plugin can then be uploaded to the WordPress Extend community of plugins and themes, as well as to the developer's server for a self-hosted solution.

Tương đối dễ làm, đặc biệt với các biến và chức năng WordPress

Điều tuyệt vời về việc phát triển một plugin mới cho WordPress là tệp có thể sử dụng bất kỳ hàm PHP, biến hoặc vòng lặp nào hiện có mà WordPress đã xác định và khởi tạo. Điều này giúp dễ dàng mở rộng các tính năng của WordPress và tăng cường chức năng của chúng trong nhiều chủ đề và nó làm cho quá trình phát triển plugin dễ dàng như việc tạo ra một chủ đề mới cho chính phần mềm đó.

Always remember to test for bugs, validation errors, and function conflicts before putting the plugin into active use or sharing with the wider WordPress community. When that process has been completed, and the plugin is working properly, the development stage is complete and you'll be free to enjoy the success and new features you just created. ;)

Đọc thêm về WHSR

Để tìm hiểu kỹ hơn về điều này, hãy xem Jerry's List Of 20 Essential WordPress Plugins, 25 Đoạn mã tiện dụng cho các nhà phát triển WordPress, Most Wanted WordPress Hacks, Mẹo và Tricks; and, if you are looking for a good WordPress hosting, check out what I've been using recently – WP Công cụ – it's quite an expensive host (thus not recommended to newbies) but you get what you pay for.

Về Jerry Low

Người sáng lập WebhostingSecretReveal.net (WHSR) - một đánh giá lưu trữ được người dùng 100,000 tin cậy và sử dụng. Hơn nhiều năm kinh nghiệm trong lĩnh vực lưu trữ web, tiếp thị liên kết và SEO. Cộng tác viên của ProBlogger.net, Business.com, SocialMediaToday.com, v.v.