Със сигурност на много сайтове и блогове сте попадали на такова смешно нещо като облак на тагове. Ако искате да създадете такъв облак на вашия уебсайт или блог, тогава в тази статия можете да намерите инструкции как да го генерирате.
Облакът на тагове е колекция от тагове или категории, които се появяват най-често при търсения, връзки и споменавания на думи. И колкото по-често се среща една или друга дума или концепция, толкова по-голямо става изображението, съдържащо хипервръзка към тези понятия и думи.
Инструкции
Етап 1
Първо, генерирайте списък с двойки от формата: tag - броят на повторенията. За да направите това, използвайте следния код:
1. <?
2. клас TagsCloud {
3.
4. частни $ тагове;
5.
6. частен $ font_size_min = 14;
7. частни $ font_size_step = 5;
8.
9. функция _construct ($ тагове) {
10.
11. разбъркване ($ тагове);
12. $ this-> тагове = $ тагове;
13.
14. }
15.
16. частна функция get_tag_count ($ tag_name, $ tags) {
17.
18. Брой $ = 0;
19.
20. foreach ($ тагове като $ tag) {
21. if ($ tag == $ tag_name) {
22. $ count ++;
23. }
24. }
25.
26. връщане на брой $;
27.
28. }
29.
30. частна функция tagscloud ($ тагове) {
31.
32. $ tags_list = array ();
33.
34. foreach ($ тагове като $ tag) {
35. $ tags_list [$ tag] = self:: get_tag_count ($ tag, $ tags);
36. }
37.
38. върнете $ tags_list;
39.
40. }
41.
42. частна функция get_min_count ($ tags_list) {
43.
44. $ min = $ tags_list [$ this-> тагове [0];
45.
46. foreach ($ tags_list като $ tag_count) {
47.
48. if ($ tag_count <$ min) $ min = $ tag_count;
49.
50. }
51.
52. връщане $ мин;
53.
54. }
55.
56. публична функция get_cloud () {
57.
58. $ облак = масив ();
59.
60. $ tags_list = self:: tagscloud ($ this-> тагове);
61. $ min_count = self:: get_min_count ($ tags_list);
62.
63. foreach ($ tags_list като $ 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. връщане $ облак;
72.
73. }
74. }
75. ?>
Стъпка 2
Работете с този код по следния начин:
01. <?
02.
03. $ тагове = масив (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 = нов TagsCloud ($ тагове);
12. $ tags_list = $ mycloud-> get_cloud ();
13.
14. foreach ($ tags_list като $ tag) {
15. echo $ tag. ' ';
16. }
17.
18. ?>
На мястото на числата поставете маркерите, от които се нуждаете!
Стъпка 3
За да покажете облак на маркери въз основа на уместността, направете следното. В настройките задайте минималния размер на шрифта, който ще съответства на минималния брой повторения (т.е. едно появяване). Използвайте полето font_size_min.
Стъпка 4
Задайте размера на шрифта за останалите маркери, както следва: всеки случай увеличава шрифта с един пиксел. За целта използвайте полето font_size_step.
Стъпка 5
Ако искате да подобрите облака на маркерите си, прикачете го към js скрипт.
Успех в създаването на собствени облаци!