欢迎来到Minecraft插件百科!
对百科编辑一脸懵逼?
帮助:快速入门
带您快速熟悉百科编辑!
因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289
查看“LeaderHeads/网页插件”的源代码
←
LeaderHeads/网页插件
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于这些用户组的用户执行:
用户
、
自动确认用户
、
巡查者
您可以查看和复制此页面的源代码。
LeaderHeads 网页插件可以让你在网页上看到玩家的数据记录. 这一插件拥有大量特性且高度可自定义. ===== 网页插件配置 ===== LeaderHeads网页插件旨在让你简单地建立更高级的排行榜而不需要深奥的数据库知识. 你只需要知道默认数值的概念并修改服务器配置, 那么你就可以很容易地上手. 解释在 ''leaderboard_config.yml'' 和 ''stats_config.yml'' 内. 在配置中的''服务器'' 选项指的是 ''database.yml''里的''服务器'' file on your Minecraft server. If you want a column or table to sync from for example your SkyWars server, set the ''server'' option in the ''database.yml'' to ''skywars'' and use ''skywars'' as ''server'' in the below configuration files. ''leaderboard_config.yml'' <spoiler><code># 这是排行榜的配置文件. # The description of the page as it appears in a search engine description. description: "Leaderboards" # The title of the page as it appears in the tab of your browser. page_title: "Leaderboard" # Messages messages: # Time options. These are used in the dropdown select menu. alltime: "all time" monthly: "this month" weekly: "this week" daily: "today" # High formats as they appear when enabling 'format_high_numbers'. high_formats: thousands_format: "k" millions_format: "M" billions_format: "B" trillions_format: "T" quadrillions_format: "QD" quintillions_format: "QT" sextillions_format: "SX" septillions_format: "SP" # Time formats time_formats: time_format_days: "{days} days, {hours} hours, {minutes} minutes" time_format_hours: "{hours} hours, {minutes} minutes" time_format_minutes: "{minutes} minutes" # Tables that appear as you want. You can remove and add as much tables as you want. leaderboards: # Name of the table. This name appears in the header and the caption if no other text is set. "My Server": # Columns of the table. You can remove and add as much columns as you want. # The configuration works on a default-based system. This means that there's a set amount of default values. # If you didn't specifically set the setting in the config of a column, the default value will be applied. # If a value has been set for the table, this value will be applied for all columns where this value isn't set. # Explanation of these settings can be found under the defaults section. # Tables also use this system, which means that you can specifically set a setting for a certain table. columns: # Name of your row as it appears in the first column. "Time played": # The name of the statistic as used in-game. type: "played" statistic_type: "time" width: 13% "Kills": type: "kills" "Deaths": type: "deaths" "Walked Blocks": type: "walk" "Balance": type: "balance" format: "${amount}" format_high_numbers: true "Level": type: "bl-level" "Items dropped": type: "drop" settings: server: default count: 20 enable_search_bar: true enable_upper_pagination: true enable_lower_pagination: true enable_caption: false enable_header: true enable_column_select: true enable_select: true enable_index_column: true "My second server": columns: "Kills": type: "kills" "Deaths": type: "deaths" "Walked Blocks": type: "walk" "Balance": type: "balance" format: "${amount}" format_high_numbers: true settings: server: default defaults: # Available time periods to select from using the dropdown menu. available_time_types: ["alltime", "monthly", "weekly", "daily"] # The width of the table. table_width: 800px; # How many players are shown in the table. count: 20 # Whether there should be a select bar enable_select: true # Text in the select bar. # {time} represents the time select dropdown menu. # {type} represents the type select dropdown menu. select_text: "Select for {time} order by {type}" # Whether there should be a bar to select the page above the table. enable_upper_pagination: true # Whether there should be a bar to select the page under the table. enable_lower_pagination: true # How many pages appear in the bar to select pages. pagination_size: 10 # Whether there should be a search bar above the table. enable_search_bar: true # Placeholder of the text in this search bar. search_bar_button_placeholder: "Username" # Text in the search button of this search bar. search_bar_button_text: "Search Player" # URL that this global search bar redirects to. search_bar_url: "/player/{name}" # Whether a little image of the player's skull should be displayed next to the player's name. enable_skull: true # The URL of the skull. skull_url: "https://crafatar.com/avatars/{name}" # Whether there should be a column indicating the index. enable_index_column: true # Width of the index column. index_column_width: 6% # Text in the header of the index column. index_column_text: "" # Format of the index column index_column_format: "{rank}" # Width of the player column. player_column_width: 10% # Text in the column with the player name. player_column_text: "Player" # Whether the table should have a caption or not. enable_caption: false # Whether the caption should have custom text instead of the name of the table. enable_caption_custom_text: false # Custom text of the caption if 'enable_caption_custom_text' is set to true. caption_custom_text: "Leaderboard" # Whether the table should have a header or not. The name of this table will be displayed in the header. enable_header: true # Whether you can press the header of the column to order by that statistic. enable_column_select: false # Whether you can press on a player's name to go to his profile. enable_click_name: true # URL that you get redirected to when clicking on the player's name. click_name_url: "/player/{name}" # Default column settings columns: # Default column server server: default # Default column format. format: "{amount}" # Default statistic type of a column. Use 'default' for normal statistics and 'time' for time related statistics. statistic_type: "default" # Default decimals that should be shown after the decimal point. decimals: 0 # Whether there should be a dot between every 3 digits. format_3_digits: false # Whether the statistic should be formatted with the values from 'high_formats'. format_high_numbers: false # Width of this column. width: 8%; # Whether this column should stay to the time_type from the config, even when the dropdown menu is used keep_time_type: false # The selected time period of this statistic. Options are 'alltime', 'monthly', 'weekly' and 'daily'. time_type: "alltime" settings: # Whether there should be a page header above the tables. enable_page_header: true # Text of the page header. page_header_text: "Leaderboards" # Whether there should be a global search bar above the tables. enable_global_search_bar: true # Placeholder of the text in the global search bar. global_search_bar_button_placeholder: "Username" # Text in the search button of the global search bar. global_search_bar_button_text: "Search Player" # URL that the global search bar redirects to. global_search_bar_url: "/player/{name}" </code></spoiler> ''stats_config.yml'' <spoiler><code># This is the configuration file for a personal stats page. # The description of the page as it appears in a search engine description. description: "Player stats" # The title of the page as it appears in the tab of your browser. page_title: "{name} - Stats" # Messages messages: # High formats as they appear when enabling 'format_high_numbers'. high_formats: thousands_format: "k" millions_format: "M" billions_format: "B" trillions_format: "T" quadrillions_format: "QD" quintillions_format: "QT" sextillions_format: "SX" septillions_format: "SP" # Time formats time_formats: time_format_days: "{days} days, {hours} hours, {minutes} minutes" time_format_hours: "{hours} hours, {minutes} minutes" time_format_minutes: "{minutes} minutes" # Last seen time message last_seen: year_ago: "%y year ago" years_ago: "%y years ago" month_ago: "%m month ago" months_ago: "%m months ago" day_ago: "%d day ago" days_ago: "%d days ago" hour_ago: "%h hour ago" hours_ago: "%h hours ago" minute_ago: "%i minute ago" minutes_ago: "%i minutes ago" just_now: "just now" never_joined: "Never joined" # Last seen message. last_seen_message: "Last seen: {time}" # The message that appears instead of the name if the searched player doesn't exist. not_exist: "This player does not exist" # Tables that appear as you want. You can remove and add as much tables as you want. tables: # Name of the table. This name appears in the header and the caption if no other text is set. "My first server": # Rows of the table. You can remove and add as much rows as you want. # The configuration works on a default-based system. This means that there's a set amount of default values. # If you didn't specifically set the setting in the config of a row, the default value will be applied. # Explanation of these settings can be found under the defaults section. # Tables also use this system, which means that you can specifically set a setting for a certain table. rows: # Name of your row as it appears in the first column "Kills": # The name of the statistic as used in-game type: "kills" "Deaths": type: "deaths" "Walked Blocks": type: "walk" "Balance": type: "balance" format: "${amount}" format_high_numbers: true settings: server: default table_width: 400px "My second server": rows: "Weekly blocks walked": type: "walk" time_type: "weekly" "Deaths": type: "deaths" "Level": type: "bl-level" "Items dropped": type: "drop" settings: server: default table_width: 400px "My third server": rows: "Time played": type: "played" statistic_type: "time" "Blocks mined": type: "ez-blocks" "Walked Blocks": type: "walk" settings: server: default table_width: 400px defaults: # The width of the table. table_width: 400px; # Whether the table should have a caption or not. enable_caption: false # Whether the caption should have custom text instead of the name of the table. enable_caption_custom_text: false # Custom text of the caption if 'enable_caption_custom_text' is set to true. caption_custom_text: "Leaderboard" # Whether the table should have a header or not. The name of this table will be displayed in the header. enable_header: true # Width of the column where the name of the statistic appears. index_width: 50% # Default row settings rows: # Default column server server: default # Default column format. format: "{amount}" # Default statistic type of a column. Use 'default' for normal statistics and 'time' for time related statistics. statistic_type: "default" # The selected time period of this statistic. Options are 'alltime', 'monthly', 'weekly' and 'daily'. time_type: "alltime" # How many decimals should be shown after the decimal point. decimals: 0 # Whether there should be a dot between every 3 digits. format_3_digits: false # Whether the statistic should be formatted with the values from 'high_formats'. format_high_numbers: false # Width of the statistic column of this row. width: 50%; settings: # Whether there should be a page header above the tables. enable_page_header: true # Text of the page header. page_header_text: "Player Statistics" # Whether there should be a global search bar above the tables. enable_global_search_bar: true # Placeholder of the text in the global search bar. global_search_bar_button_placeholder: "Username" # Text in the search button of the global search bar. global_search_bar_button_text: "Search Player" # URL that the global search bar redirects to. global_search_bar_url: "/player/{name}" # Interval in minutes for when a player will be seen as 'just now' online. last_seen_interval: 2 # URL of the player picture that appears. player_picture: "https://crafatar.com/renders/body/{name}?overlay=true" # Update interval in seconds # This will auto update the stats of the player in realtime without refreshing the page update-interval: 10 </code></spoiler> ===== Setting up LeaderHeads Web Add-on ===== - Configure your database.yml in the LeaderHeads folder on your servers and connect it to a MySQL database. It is recommended to use a different 'server' option in the database.yml per server if your servers use the same statistics with different values (e.g. kills in skywars and kills in eggwars) - Download the Web Add-on, open it and upload the ''leaderheads'' folder to your website's public_html root. You can rename this folder if you want. - To show a statistic on your website, go to the ''statistics'' folder in the ''plugins/LeaderHeads'' folder on your Minecraft server and search for this statistic. Open its file and set ''force-update'' to ''true'' to make sure it sends the data correctly. - Configure your MySQL details in the ''config.php'' in the ''config'' folder of the Web Add-on. - Navigate to the ''leaderboard.php'' and/or ''stats.php'' file to check if the MySQL database is connected. - Edit the ''.yml'' files in the config folder and follow the comments in the files. - The search bar and clicking on names will not work by default. You need to setup URL rewrite rules to use this feature. For more information, check the **Rewrite Rules** section section on [[https://www.robindebaets.be/wiki/leaderheads_web_add-on/tweaks|this page]]. ===== Tweaks ===== ==== Rewrite Rules ==== By default, clicking on a player in the leaderboard will give you an error because URL rules aren't set up. Here's how you make URL's that look like the following: www.robindebaets.be/leaderboard www.robindebaets.be/player/RobiRami == For sites running Apache == Navigate to the ''.htaccess'' file in the public_html root of your website. If this file does not exist, create it. Paste this at the very top of your file. <code> # LEADERHEADS BEGIN RewriteEngine on Options +FollowSymLinks RewriteRule ^leaderboard/?$ /leaderheads/leaderboard.php [L,NC] RewriteRule ^player/([^/]+)/?$ /leaderheads/stats.php?player=$1 [L,QSA,NC] # LEADERHEADS END </code> == For sites running Nginx == Here's the full example from a site running nginx in the ''/etc/nginx/sites-available/default'' file. <code> server { ... rewrite ^/leaderboard/?$ /leaderheads/leaderboard.php; rewrite ^/player/([^/]+)/?$ /leaderheads/stats.php?player=$1 last; ... } </code> ==== Integrating into your website ==== To integrate the leaderboard into your own server forum page, you can either just add a direct to it or directly integrate it in the website and put your own navigation bar in it. To display a leaderboard on a page of your forum, you must use an ''iframe''. Here's an example: <code><iframe src="http://ww.robindebaets.be/leaderheads/leaderboard.php" width="100%" height="300px" scrolling="no" frameborder="0"></iframe></code> To show stats on a player's Xenforo profile, follow this setup. Keep in mind that these stats are currently only name based so this will only work if the Xenforo profile name is the same as his Minecraft username. Go to the Xenforo control panel, go to Appearance and select ''Templates''. Search for the ''member_view'' of your Xenforo theme and go to the editor. I recommend making a backup first so you don't break your installation. Search for an 'ul' element with the class "mainTabs". This ''ul'' should contain several ''li'' elements. Add a new ''li'' add the end to make a link to the stats interface. After changing the code, it should look something like this. <code><ul class="tabs mainTabs Tabs" data-panes="#ProfilePanes > li" data-history="on"> ... <li><a href="{$requestPaths.requestUri}#stats">{xen:phrase Stats}</a></li> ... </ul></code> Now that the link is done, we need to add the actual interface. Search for the ''ul'' with id ''ProfilePanes'', add in a new ''li'' at the end to show the stats interface. After changing the code, it should look something like this. Make sure to add the correct URL of the the personal stats page. <code><ul id="ProfilePanes"> ... <li id="stats" class="profileContent"> <iframe src="http://www.robindebaets.be/player/{$user.username}" width="100%" height="1000px" scrolling="no" frameBorder="0"></iframe> </li> ... <ul></code> If you want to be able to go to a user's Xenforo profile by clicking on his name in the leaderboard, use a Xenforo add-on like [[https://xenforo.com/community/resources/username-url-parameter.3912/| this one]].
本页使用的模板:
模板:Info
(
查看源代码
)
模板:待完善
(
查看源代码
)(受保护)
返回
LeaderHeads/网页插件
。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
编辑相关
百科公告
编辑帮助
互助客栈
贡献分数
测试沙盒
发布条目
插件分类
管理
安全
聊天
编程
经济
修正
娱乐
综合
信息
机械
角色
传送
网页
整地
创世
付费
其它
工具
链入页面
相关更改
特殊页面
页面信息
相关网站
MCMOD百科
Minecraft中文百科
Minecraft纪念论坛
Minecraft百度贴吧
虚无世界Wiki