Meteor主題友鏈頁面自研

發布于:Eucalyptus-Blog

Meteor主題雖然設計簡約現代,但由于缺乏原生的友情鏈接管理功能,許多博主只能將友情鏈接勉強添加在網站底部,這不僅影響頁面美觀,也不便于訪客查找和互動;為了解決這一痛點,本博主對主題進行了深度二次開發,專門打造了一個獨立的友情鏈接頁面,該頁面不僅實現了友鏈分類展示、圖文混排等基本功能,更創新性地開發了前端提交表單,允許其他站長直接在線提交申請,同時配套開發了完善的后臺審核系統,管理員可以便捷地查看申請信息、審核狀態,并一鍵通過或拒絕,整個流程實現了自動化閉環管理,大大提升了友鏈交換的效率和用戶體驗。

文件路徑:

下述文件需放至主題目錄下

page-link.php

下述文件需存放至主題目錄下的自建self-innovate目錄下

default-avatar.jpg
page-links.css
page-links.js
pending-links.php

以下是核心代碼部分,這段代碼實現了系統的關鍵功能,

并且這里對友鏈頭像有三個判斷的邏輯

  • 有頭像 → 正常顯示;
  • 無頭像 → 立即顯示默認頭像;
  • 有頭像但 3 秒仍未加載完成 → 自動替換成默認頭像。
<?php
/** Template Name: 友情鏈接* Description:  極簡友鏈模板(樣式/腳本已分離,含評論)*/get_header(); 
?><div class="hero-title"><?php the_title( '<h1>', '</h1>' ); ?><p class="hero-sub">歡迎交換友鏈 · 攜手點亮彼此的星空</p>
</div><!-- 載入獨立樣式 -->
<link rel="stylesheet" href="<?php echo get_template_directory_uri(); ?>/self-innovate/page-links.css"><div class="page-links"><!-- 搜索框 --><div class="link-search"><input type="text" id="link-search" placeholder="搜索站點名稱或描述…"></div><!-- 友鏈列表 --><?php$cats = get_terms( 'link_category', array( 'hide_empty' => 0 ) );foreach ( $cats as $cat ) :$bookmarks = get_bookmarks( array('category' => $cat->term_id,'orderby'  => 'rating','order'    => 'DESC') );if ( empty( $bookmarks ) ) continue;?><div class="link-cat"><h2><?php echo esc_html( $cat->name ); ?></h2><?php if ( ! empty( $cat->description ) ) : ?><p class="link-cat-desc"><?php echo esc_html( $cat->description ); ?></p><?php endif; ?><div class="links"><?php foreach ( $bookmarks as $link ) : ?><a class="link-card" href="<?php echo esc_url( $link->link_url ); ?>" target="_blank" rel="noopener"><imgsrc="<?php echo esc_url( $link->link_image ?: '' ); ?>"data-default="<?php echo esc_url( get_template_directory_uri() . '/self-innovate/default-avatar.jpg' ); ?>"alt="<?php echo esc_attr( $link->link_name ); ?>"onerror="this.src=this.dataset.default"onload="clearTimeout(this.t)"ontimeout="this.src=this.dataset.default"/><script>(function(img){img.t = setTimeout(function(){ img.src = img.dataset.default; }, 3000);})(document.currentScript.previousElementSibling);</script><div class="info"><div class="name"><?php echo esc_html( $link->link_name ); ?></div><div class="desc"><?php echo esc_html( $link->link_description ); ?></div></div></a><?php endforeach; ?></div></div><?php endforeach; ?><!-- 后臺內容顯示 --><?php if ( get_the_content() ) : ?><div class="link-intro" style="margin-bottom:30px;"><?php the_content(); ?></div><?php endif; ?><!-- 友鏈申請彈窗 --><div class="btn-center"><button id="open-link-modal" class="btn-hero"><span>申請交換友鏈</span></button></div><!-- ===== 評論區 ===== --><?php// while ( have_posts() ) : the_post();if ( comments_open() || get_comments_number() ) : ?><section class="link-comments"><h2 class="comments-title"></h2><?php comments_template(); ?></section><?phpendif;// endwhile;?><!-- 彈窗 --><div id="link-modal-overlay" class="modal-fade"><div class="modal-dialog"><button class="modal-close" aria-label="關閉">×</button><h3 class="modal-title">申請交換友鏈</h3><form id="link-form" class="modal-form"><input type="text"   name="link_name"        placeholder="網站名稱 *" required><input type="url"    name="link_url"         placeholder="網站地址 *" required><input type="email"  name="link_owner_email" placeholder="站長郵箱 *" required><input type="url"    name="link_image"       placeholder="頭像 / Logo *" required><textarea name="link_description" rows="3" placeholder="一句話描述 *" required></textarea><button type="submit" class="btn-submit">提交申請</button><p id="form-msg" class="form-msg"></p></form></div></div>
</div><!-- 載入獨立腳本 -->
<script>var ajax_comment_obj = <?php echo wp_json_encode(array('ajax_url' => admin_url('admin-ajax.php'))); ?>;
</script>
<script src="<?php echo get_template_directory_uri(); ?>/self-innovate/page-links.js" defer></script><?php get_footer(); ?>

下面是核心代碼的css樣式

/***  * page-links.css*   * 版本:1.0.0*    * 描述:友情鏈接頁面專用樣式*     * 作者:Eucalyptus*      * 創建日期:2025-08-30*       * 修改記錄:*        *   - 2025-08-30:首版,含友鏈卡片、搜索、彈窗*         *//* ========= 1. 頁面通用 ========= */
.page-links{max-width:960px;margin:0 auto;padding:40px 20px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
}/* ============ 頂部標題(跟隨深淺 + 移動端適配) ============ */
/* 友情鏈接橫幅 */
.hero-title{padding:3.5rem 1.5rem 2.5rem;border-radius:0 0 1.5rem 1.5rem;text-align:center;
}
.hero-title h1{font-size:2.2rem;font-weight:700;letter-spacing:.5px;position:relative;
}
.hero-title h1::after{content:'';display:block;width:60px;height:3px;background:#667eea;margin:8px auto 0;border-radius:2px;
}
.hero-sub{font-size:1rem;color:#666;margin-top:.75rem;
}/* ========= 玻璃態卡片 3.0 ========= */
.links{display:grid;grid-template-columns:repeat(3, 1fr); /* 固定 3 列 */gap:24px;
}.link-card{position:relative;padding:20px;background:transparent;                /* 跟隨深淺 */border:1px solid rgba(var(--color-border,0 0 0),.1);border-radius:20px;box-shadow:0 8px 32px rgba(0,0,0,.08);  /* 深淺通用陰影 */transition:.4s cubic-bezier(.175,.885,.32,1.275);overflow:hidden;
}:root{--color-border: 0 0 0;       /* 深色模式 */
}
[data-theme="light"]{--color-border: 255 255 255; /* 淺色模式 */
}.link-card::before{                               /* 光澤漸變 */content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,rgba(255,255,255,.3));pointer-events:none;
}.link-card:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 12px 48px rgba(102,126,234,.25);
}/* 頭像 */
.link-card img{width:64px;height:64px;border-radius:50%;border:2px solid #fff;box-shadow:0 4px 12px rgba(0,0,0,.08);object-fit:cover;
}/* 文字區 */
.link-card .info{margin-left:16px;
}
.link-card .name{font-size:18px;font-weight:700;letter-spacing:.5px;margin-bottom:6px;
}
.link-card .desc{font-size:14px;color:#555;line-height:1.5;
}/* 右上角角標(純 CSS) */
.link-card{position: relative;           /* 為偽元素定位 */
}
.link-card::after{content: "友鏈";              /* 角標文字 */position: absolute;top: 8px;right: 8px;padding: 2px 6px;font-size: 11px;font-weight: 600;color: #fff;background: linear-gradient(135deg,#ea66d4,#ac5196);border-radius: 4px;opacity: 0;transition: opacity .3s;pointer-events: none;         /* 不影響點擊 */
}
.link-card:hover::after{opacity: 1;
}/* ===== 分類標題 3.0 ===== */
.link-cat{position:relative;margin-bottom:40px;
}
.link-cat h2{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;font-size:20px;margin-bottom: 15px;font-weight:700;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 4px 12px rgba(102,126,234,.25);letter-spacing:.5px;
}/* 分類描述 */
.link-cat-desc{margin: -8px 0 24px 18px;   /* 負值貼緊標題,左側與標題文字對齊 */font-size: 0.9rem;color: #555;letter-spacing: .4px;line-height: 1.5;max-width: 540px;
}/* ========= 移動端適配 ========= */
@media (max-width: 768px) {.links {grid-template-columns: 1fr; /* 1 列 */gap: 20px;}.link-card {padding: 16px;}.link-card img {width: 48px;height: 48px;}.link-card .name {font-size: 16px;}.link-card .desc {font-size: 13px;}
}
/* ========= 4. 搜索框 ========= */
.link-search{display:flex;margin-bottom:40px;
}.link-search input{width:100%;max-width:320px;padding:12px 40px 12px 16px;font-size:15px;color:#333;background:#fff;border:2px solid transparent;border-radius:30px;box-shadow:0 4px 12px rgba(102,126,234,.15);transition:border-color .3s, box-shadow .3s;outline:none;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="%23667eea" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg>');background-repeat:no-repeat;background-position:right 14px center;background-size:20px 20px;
}/* 懸浮/聚焦高亮 */
.link-search input:focus{border-color:#667eea;box-shadow:0 0 0 4px rgba(102,126,234,.25);
}/* placeholder 樣式 */
.link-search input::placeholder{color:#7f8c8d;font-size:14px;
}/* ========= 5. 按鈕 & 彈窗 ========= */
/* 5.1 觸發按鈕居中容器 */
.btn-center{display:flex;justify-content:center;margin:30px 0;
}/* 5.2 主按鈕樣式 */
.btn-hero{position:relative;padding:12px 32px;font-size:16px;font-weight:600;color:#fff;background:linear-gradient(135deg,#667eea 0%, #764ba2 100%);border:none;border-radius:30px;cursor:pointer;box-shadow:0 6px 20px rgba(102,126,234,.4);transition:all .3s;overflow:hidden;
}
.btn-hero:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 10px 30px rgba(102,126,234,.55);
}/* 5.3 彈窗遮罩 */
.modal-fade{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:.35s;z-index:9999;
}
.modal-fade.show{opacity:1;visibility:visible;
}/* 5.4 彈窗主體 */
.modal-dialog{width:92%;max-width:420px;background:#fff;border-radius:16px;padding:32px 36px 36px;position:relative;transform:translateY(-30px) scale(.95);transition:transform .35s;
}
.modal-fade.show .modal-dialog{transform:none;
}/* 5.5 關閉按鈕 */
.modal-close{position:absolute;top:14px;right:18px;font-size:26px;background:none;border:none;color:#999;cursor:pointer;
}/* 5.6 表單元素 */
.modal-form{display:flex;flex-direction:column;gap:14px;
}
.modal-form input,
.modal-form textarea{padding:12px 14px;border:1px solid #e1e5e9;border-radius:8px;
}
.btn-submit{margin-top:8px;padding:12px;color:#fff;border:none;border-radius:30px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);cursor:pointer;
}/* 移動端補丁,溢出鎖死 */
.page-links{overflow-x: hidden;   /* 關鍵:禁止橫向滾動 */
}

以下是JavaScript代碼,主要用來實現前端友鏈頁面的實時搜索功能、友鏈提交彈窗(使用模態框組件展示表單,包含必填字段驗證和樣式反饋)以及后端提交申請內容到后端的功能

/* ========= 實時搜索 ========= */
document.getElementById('link-search').addEventListener('input', function () {const kw = this.value.toLowerCase();document.querySelectorAll('.link-card').forEach(card => {card.style.display = card.textContent.toLowerCase().includes(kw) ? 'flex' : 'none';});
});/* ========= 彈窗控制 ========= */
const overlay = document.getElementById('link-modal-overlay');
document.getElementById('open-link-modal').addEventListener('click', () => overlay.classList.add('show'));
overlay.addEventListener('click', e => {if (e.target === overlay || e.target.classList.contains('modal-close')) overlay.classList.remove('show');
});/* ========= Ajax 提交友鏈 ========= */
document.getElementById('link-form').addEventListener('submit', function (e) {e.preventDefault();const data = new FormData(this);data.append('action', 'submit_link_apply');fetch(ajax_comment_obj.ajax_url, { method: 'POST', body: data }).then(r => r.json()).then(res => {document.getElementById('form-msg').textContent = res.data;if (res.success) {this.reset();setTimeout(() => overlay.classList.remove('show'), 1500);}});
});

最后是后端處理前端請求并為link_manager新增待審核列的代碼,審核邏輯基于鏈接是否在前端隱藏, 關閉私密功能即可前端展示

<?php
/*** 待審核友鏈提示* 包含:后臺列表新增“待審核”列 + 紅色氣泡菜單提示 + Ajax 接收*//* --------------------------------------------------* 1. 后臺列表新增“待審核”列,純文本,系統默認樣式* -------------------------------------------------- */
/* 新增“待審核”列(鍵名 review) */
add_filter( 'manage_link-manager_columns', function ( $cols ) {$cols['review'] = '待審核';return $cols;
} );/* 單元格輸出紅色氣泡 */
add_action( 'manage_link_custom_column', function ( $col, $link_id ) {if ( $col === 'review' ) {echo get_bookmark_field( 'link_visible', $link_id ) === 'N'? '<span style="display:inline-block;background:#e60026;color:#fff;font-size:11px;padding:2px 6px;border-radius:10px;margin-left:4px;">待審</span>': '';}
}, 10, 2 );/* --------------------------------------------------* 2. 后臺“鏈接”菜單右上角紅色數字氣泡* -------------------------------------------------- */
add_action( 'admin_menu', function () {$count = 0;foreach ( get_bookmarks( [ 'hide_invisible' => 0 ] ) as $link ) {if ( $link->link_visible === 'N' ) $count++;}if ( $count ) {global $menu;foreach ( $menu as &$item ) {if ( $item[2] === 'link-manager.php' ) {$item[0] .= ' <span class="awaiting-mod"><span class="pending-count">' . $count . '</span></span>';break;}}}
} );/* --------------------------------------------------* 3. Ajax 接收端(無郵件)* -------------------------------------------------- */
add_action( 'wp_ajax_nopriv_submit_link_apply', 'handle_link_apply' );
add_action( 'wp_ajax_submit_link_apply',        'handle_link_apply' );
function handle_link_apply() {$name  = sanitize_text_field( $_POST['link_name'] ?? '' );$url   = esc_url_raw        ( $_POST['link_url']  ?? '' );$email = sanitize_email      ( $_POST['link_owner_email'] ?? '' );$desc  = sanitize_text_field( $_POST['link_description'] ?? '' );$img   = esc_url_raw        ( $_POST['link_image']       ?? '' );if ( empty( $name ) || empty( $url ) || ! is_email( $email ) ) {wp_send_json_error( '請完整填寫必填項' );}wp_insert_link( ['link_name'        => $name,'link_url'         => $url,'link_description' => $desc,'link_image'       => $img,'link_owner_email' => $email,'link_visible'     => 'N',] );wp_send_json_success( '已收到申請,審核后顯示,感謝!' );
}

上傳代碼至Meteor主題目錄完成部署,最后在functions.php中啟用link_manager并調用pending-links.php處理后臺任務。

WordPress的functions.php文件中添加指定代碼可實現特定功能,需注意代碼正確性和備份以防出錯。


/* 開啟后臺鏈接 */
add_filter( 'pre_option_link_manager_enabled', '__return_true' );/* 后臺新增友鏈提示功能 */
require_once get_theme_file_path( '/self-innovate/pending-links.php' );

最終展示

Eucayptus-友鏈

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/95320.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/95320.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/95320.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

QT控件QPlainTextEdit、QTextEdit與QTextBrowser的區別

一.主要功能對比二.關鍵功能差異1.文本類型支持QPlainTextEdit&#xff1a;僅支持純文本&#xff08;Plain Text&#xff09;&#xff0c;不處理任何格式&#xff08;如字體、顏色、鏈接、圖片等&#xff09;。文本以原始字符形式存儲&#xff0c;適合處理日志、代碼、配置文件…

【思考】WSL是什么

WSL WSL是什么呢&#xff1f; WSL 是 windows subsystem for linux 的簡寫&#xff0c;指的是 windows10 的一個子系統&#xff0c;這個子系統的作用是在 windows 下運行 linux 操作系統。 有了WSL&#xff0c;就可以在 windows10 中運行linux操作系統了。許多在 linux 種運行的…

基于單片機智能飲水機/智能熱水壺

傳送門 &#x1f449;&#x1f449;&#x1f449;&#x1f449;其他作品題目速選一覽表 &#x1f449;&#x1f449;&#x1f449;&#x1f449;其他作品題目功能速覽 概述 基于單片機的智能飲水機系統通過嵌入式技術實現水溫控制、水量監測及用戶交互功能。系統采用STM3…

Unity游戲打包——iOS打包基礎、傳包

本文由 NRatel 歷史筆記整理而來&#xff0c;如有錯誤歡迎指正。 相關參考文檔 Unity文檔 -> 平臺開發 -> IOS https://docs.unity3d.com/cn/2021.3/Manual/iphone.html Unity導出的Xcode 項目的結構 Modifying an Xcode project use Xcode.PBXProject. https://doc…

pyside6小項目:進制轉換器

from PySide6.QtUiTools import QUiLoader from PySide6.QtWidgets import QApplication,QWidgetclass MyWindow(QWidget):def __init__(self):super().__init__()self.ui QUiLoader().load(trans.ui)self.ui.show()#stor data type dictionaryself.lengthVar {米:100, 千米:…

再見 K8s!3款開源的云原生部署工具

前文&#xff0c;和大家分享了云原生中的核心工具 K8s&#xff1a; 關于 K8s&#xff1a;入門&#xff0c;這篇就夠了 K8s是個好東西&#xff0c;就是上手門檻有點高。這不&#xff0c;需求就來了&#xff1f; 有需求&#xff0c;就有工具。 為了解決K8s的配置難題&#xf…

C++ 快速復習指南(上半部分)

1.基礎語法基本結構#include <iostream> 頭名 using namesapce std ; 統一使用命名空間 int main () { 程序執行門戶 主題內容}基本輸出 cout << "string " << endl; // 輸出 string 變量和數據類型 格式int intger 10 ;常量的引入 需要在變量…

ArcGIS Pro 地圖打包與解包

如果需要在ArcGIS Pro 打包某一個地圖文檔&#xff0c;在 菜單欄中 點擊 共享&#xff0c;點擊地圖。彈出 打包地圖 面板&#xff0c;可以打包到Online、打包到地圖包&#xff0c;選擇將包保存到文件&#xff0c;修改項目詳細信息&#xff0c;點擊 包&#xff0c;即可實現打包。…

sunset: twilight靶場

sunset: twilight 來自 <sunset: twilight ~ VulnHub> 1&#xff0c;將兩臺虛擬機網絡連接都改為NAT模式 2&#xff0c;攻擊機上做namp局域網掃描發現靶機 nmap -sn 192.168.23.0/24 那么攻擊機IP為192.168.23.128&#xff0c;靶場IP192.168.23.145 3&#xff0c;對靶機…

【機器學習基礎】無監督學習算法的現代演進:從數據探索到智能系統的自主發現能力

1. 引言:無監督學習在人工智能革命中的核心價值 在人工智能技術飛速發展的今天,無監督學習正在成為推動AI系統實現真正智能的關鍵技術。與需要大量標注數據的監督學習不同,無監督學習能夠從原始數據中自主發現隱藏的模式和結構,這種能力使其在現代AI應用中具有不可替代的價…

PetaLinux的JTAG啟動

csdn–PetaLinux 使用技巧與緩存配置 xilinx官網–PetaLinux 工具文檔參考指南 (ug1144) xilinx官網–設備樹配置文檔 內核官網–設備樹文檔 軟硬件準備 分類項目說明/用途驗證方法示例硬件JTAG 線JTAG 下載、調試—UART 串口線查看 zynq 啟動日志—網口線用于 TFTP 下載—…

單片機中的按鍵防抖

按鈕&#xff08;按鍵&#xff09;抖動是單片機開發中常見的硬件問題&#xff0c;本質是機械觸點接觸瞬間的物理彈跳導致的電信號不穩定。消除抖動&#xff08;防抖&#xff09;是確保按鍵狀態檢測準確的關鍵&#xff0c;下面從原理到實現詳細講解。 一、按鈕抖動的原理&#x…

面經分享--小米Java一面

目錄 1.Kafka和RocketMQ的區別 2.反射的作用 3.類加載的具體過程&#xff0c;雙親委派模型的機制 4.TCP的四次揮手 5.多線程的優勢 6.死鎖產生的原因&#xff0c;怎么解決 7.Java并發的工作原理 8.常用的git命令 9.算法題 1.leetcode 3.無重復字符的最長子串&#xff…

Python在邊緣計算與物聯網中的創新實踐:實時數據處理與設備控制

近年來&#xff0c;Python語言的普及度持續攀升&#xff0c;尤其在人工智能、數據科學等熱門領域備受青睞。然而&#xff0c;一個新興趨勢——邊緣計算與物聯網&#xff08;IoT&#xff09;的結合——正悄然改變技術格局。邊緣計算強調在數據源頭進行實時處理&#xff0c;減少云…

Spring Cloud Gateway 網關(五)

目錄 一 概念引入 二 具體使用 1 首先創建一個網關模塊 2 啟動類 3 配置類 4 對應方法的修改 5 展示借助81端口進行轉發控制 6 斷言規則?編輯 三 過濾器 1 將前置的請求參數給過濾掉&#xff0c;降低繁瑣程度。 2 默認過濾器 3 全局過濾器 4 自定義過濾器工廠 5…

產品經理操作手冊(8)——業務需求文檔(BRD)

一、BRD的定義與價值 **業務需求文檔(BRD)**是產品開發前期的基礎性文檔&#xff0c;它將業務訴求轉化為結構化的產品需求&#xff0c;是連接業務方與交付團隊的橋梁。“BRD不僅是一份文檔&#xff0c;而是一個對齊的過程。”BRD核心價值 統一認知&#xff1a;確保各方對業務目…

Excel表格多級下拉選項,如何制作?

之前分享過如何設置下拉選項&#xff0c;但那只是簡單的一級下拉菜單&#xff0c;今天再給大家分享多級下拉菜單如何制作。也就是根據前面的下拉選項改變后面的選項。 我們現來復習一級下拉菜單&#xff0c;再接著講多級下拉菜單 一級下拉選項 首先我們先將表格內容湊填寫好…

[Sync_ai_vid] 唇形同步評判器 | 圖像與視頻處理器 | GPU測試

第4章&#xff1a;SyncNet唇形同步評判器 在前幾章中&#xff0c;我們了解了唇形同步推理流程如何協調生成唇形同步視頻&#xff0c;以及音頻特征提取器(Whisper)如何為LatentSync UNet提供關鍵音頻線索。 UNet利用這些線索巧妙調整唇部動作。但我們如何判斷UNet的生成效果&a…

算法:插入排序

插入排序&#xff08;直接插入排序&#xff09; 是一種基于“插入”的排序 思路 它的核心思想是把數組分成兩部分&#xff1a;一部分是有序區&#xff0c;另一部分是亂序區也就是待排序區。 每次從未排序部分“取出”一個元素&#xff0c;插入到前半部分合適的位置&#xff0c;…

MCP Go SDK

MCP Go SDK v0.3.0 Open in GitHub Codespaces &#xff08;在 GitHub Codespaces 中打開&#xff09; BREAKING CHANGES &#xff08;重大變更&#xff09; This version contains breaking changes. See the release notes for details PkgGoDev &#xff08;Go 官方包文檔入…