Chắc chắn trên nhiều trang web và blog bạn đã bắt gặp một thứ buồn cười như một đám mây thẻ. Nếu bạn muốn tạo một đám mây như vậy trên trang web hoặc blog của mình, thì trong bài viết này, bạn có thể tìm thấy hướng dẫn về cách tạo nó.
Đám mây thẻ là một tập hợp các thẻ hoặc danh mục xuất hiện thường xuyên nhất trong các tìm kiếm, liên kết và đề cập từ. Và một từ hoặc khái niệm xuất hiện càng thường xuyên, thì hình ảnh càng trở nên lớn hơn, chứa siêu liên kết đến các khái niệm và từ này.
Hướng dẫn
Bước 1
Đầu tiên, tạo danh sách các cặp có dạng: thẻ - số lần xuất hiện. Để thực hiện việc này, hãy sử dụng mã sau:
1. <?
2. lớp TagsCloud {
3.
4. thẻ $ riêng tư;
5.
6. riêng $ font_size_min = 14;
7. riêng tư $ font_size_step = 5;
8.
9. function _construct ($ tags) {
10.
11.shuffle (thẻ $);
12. $ this-> tags = thẻ $;
13.
14. }
15.
16.private function get_tag_count ($ tag_name, $ tags) {
17.
18. $ đếm = 0;
19.
20. foreach (thẻ $ dưới dạng thẻ $) {
21. if ($ tag == $ tag_name) {
22. $ count ++;
23. }
24. }
25.
26. return $ đếm;
27.
28. }
29.
30. chức năng riêng các tagcloud ($ tags) {
31.
32. $ tags_list = array ();
33.
34. foreach (thẻ $ dưới dạng thẻ $) {
35. $ tags_list [$ tag] = self:: get_tag_count ($ tag, $ các thẻ);
36. }
37.
38. return $ tags_list;
39.
40. }
41.
42. hàm private get_min_count ($ tags_list) {
43.
44. $ min = $ tags_list [$ this-> tags [0];
45.
46. foreach ($ tags_list dưới dạng $ tag_count) {
47.
48. if ($ tag_count <$ min) $ min = $ tag_count;
49.
50. }
51.
52. return $ min;
53.
54. }
55.
56. public function get_cloud () {
57.
58. $ cloud = Array ();
59.
60. $ tags_list = self:: tagscloud ($ this-> các thẻ);
61. $ min_count = self:: get_min_count ($ tags_list);
62.
63. foreach ($ tags_list dưới dạng $ tag => $ count) {
64.
65. $ font_steps = $ count - $ min_count;
66. $ font_size = $ this-> font_size_min + $ this-> font_size_step * $ font_steps;
67.
68. $ cloud = ". $ Tag. ";
69. }
70.
71. trả về đám mây $;
72.
73. }
74. }
75. ?>
Bước 2
Làm việc với mã này như thế này:
01. <?
02.
03. $ tags = mảng (04. '1111', '2222', '333', '444', 05. '5555', '666', '777', '777', 06. '333', '8888', '6666', '333', 07. '888', '000’, '989', '45455', 08. '5555', '63636', '54545', '55656'
09.);
10.
11. $ mycloud = new TagsCloud ($ tags);
12. $ tags_list = $ mycloud-> get_cloud ();
13.
14.foreach ($ tags_list dưới dạng $ tag) {
Thẻ 15.echo $. ' ';
16. }
17.
18. ?>
Thay cho các con số, hãy đặt các thẻ bạn cần!
Bước 3
Để hiển thị một đám mây thẻ dựa trên mức độ liên quan, hãy làm như sau. Trong cài đặt, hãy đặt kích thước phông chữ tối thiểu sẽ tương ứng với số lần xuất hiện tối thiểu (nghĩa là một lần xuất hiện). Sử dụng trường font_size_min.
Bước 4
Đặt kích thước phông chữ cho phần còn lại của các thẻ như sau: mỗi lần xuất hiện sẽ tăng phông chữ thêm một pixel. Để thực hiện việc này, hãy sử dụng trường font_size_step.
Bước 5
Nếu bạn muốn cải thiện đám mây thẻ của mình, hãy đính kèm nó vào tập lệnh js.
Chúc may mắn tạo ra những đám mây của riêng bạn!