怎么添加一言功能? - WordPress開發

    簡單來說,一言指的就是一句話,留下你所喜歡的那一句句話,與大家分享,這就是一言存在的目的,這次的wordpress開發教你怎么添加一言功能

    做一個個人博客,如何展示自己收集或是喜歡的句子?做一個企業網站,如何展示自己的企業理念?也許在不經意的某處,一言能幫上你。簡單來說,一言指的就是一句話,留下你所喜歡的那一句句話,與大家分享,這就是一言存在的目的,這次的wordpress開發教你怎么添加一言功能。

    什么是一言?

    動漫也好、小說也好、網絡也好,不論在哪里,我們總會看到有那么一兩個句子能穿透你的心。我們把這些句子匯聚起來,形成一言網絡,以傳遞更多的感動。如果可以,我們希望我們沒有停止服務的那一天。

    簡單來說,一言指的就是一句話,可以是動漫中的臺詞,也可以是網絡上的各種小段子。 或是感動,或是開心,有或是單純的回憶。來到這里,留下你所喜歡的那一句句話,與大家分享,這就是一言存在的目的。

    打開上面的網址,每一次刷新頁面,中間的文本就會改變。

    怎么添加一言功能? - WordPress開發

    怎么添加?

    • 一言官網
    • 本地部署(推薦版)
    • 本地部署(急速版)
    • 本地部署(便捷版)
    • 遠程部署(極簡版)
    • 遠程部署(豐富版)
    • 遠程部署(JS腳本)
    • 本地部署PHP版(孟坤)

    本地部署(推薦版)

    請您在主題根目錄下的 functions.php 文件下的 <?php 下添加以下代碼:

    /**
     * 本地一言
     */
    	function lifet_yiyan () {
    
        function random_str () {
        	$poems="Npcink致力于促進廣大站長成長
        	找wordpress主題,就來Npcink
        	找wordpress主題,也來Npcink";
        	$poems=explode("\n",$poems);
        	return $poems[rand(0,count($poems)-1)];
        	}
        
        	echo random_str();
        
        }

    調用:

    請在您需要調用一言的地方添加以下代碼調用:

    <?php lifet_yiyan();?>

    注意:請您自定義您的樣式。

    本地部署(極速版)

    在主題根目錄下的 inc 文件夾下新建 saying 文件夾,下載本頁底部提供的 hitokoto 壓縮包,解壓后添加至上方創建的saying 文件夾。

    在主題根目錄下的 functions.php 文件下的 <?php 下添加以下代碼:

    /*
     * 加載極速版一言
     */
    require ( get_template_directory() . '/inc/saying/hitokoto.php' );

    調用:

    在您需要展示一言的地方添加以下代碼調用:

    <?php hitokoto(); ?>

    本地部署(便捷版)

    一言官網API遠程部署:

    此方法很省事,而且言論的質量很高,但可能會在一定程度上影響網站加載速度

    遠程部署(極簡版):

    在你需要添加一言顯示的地方添加以下代碼即可。

    <?php
        $url = "https://v1.hitokoto.cn";
        $json_date=file_get_contents($url);
        $date=json_decode($json_date, true);       
        echo wp_trim_words($date["hitokoto"], 140 )
    ?>

    第5行的“140”為字數限制,推薦為140.

    遠程部署(豐富版,不可用)

    在主題根目錄下的 functions.php 文件的 <?php 下添加以下代碼:

    // WordPress集成一言(Hitokoto)API經典語句功能
    function LxtxgetHitokoto(){
        $url = 'https://sslapi.hitokoto.cn/';  //url后綴可通過c字段限定返回語句類型,類型詳見下方表格。
        $data = array(
                    // 'c'=>'d', // 限定內容類型
                    'encode'=>'json'
                );
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 跳過證書檢查
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); // 從證書中檢查SSL加密算法是否存在
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_TIMEOUT, 6);
        $response = curl_exec($ch);
        if($error=curl_error($ch)){
            return '歡迎來到堵文斐的個人博客~'; // 如果6s內,一言API調用失敗則輸出這個默認句子~
        }
        curl_close($ch);
        $array_data = json_decode($response,true);
        $lxtx_content = $array_data['hitokoto'].'----《'.$array_data['from'].'》'; // 輸出格式:經典語句----《語句出處》
        return $lxtx_content;
    }
    
    // 如果獲取不到一言內容,返回301永久重定向,在上述代碼中添加curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1); 直接抓取跳轉的頁面即可解決。

    在需要展示的位置添加以下代碼調用:

    <?php echo LxtxgetHitokoto(); ?>

    一言API的返回參數:

    • id:本條一言的id,可以鏈接到 https://hitokoto.cn?id=[id] 查看這個一言的完整信息。
    • hitokoto:一言正文,編碼方式 usc2,使用 utf-8。
    • type:類型,跟請求參數相同。a: Anime - 動畫;b: Comic – 漫畫;c: Game – 游戲;d: Novel – 小說;e: Myself – 原創;f: Internet – 來自網絡;g: Other – 其他
    • from:一言的出處。
    • creator:添加者。
    • cearted_at:添加時間。

    遠程部署(JS腳本版)

    首先,在主題根目錄下的 footer.php 底部 </body> 前添加以下代碼

    //引入jquery
    <script type="text/javascript" src="http://libs.baidu.com/jquery/1.8.3/jquery.min.js"></script>
    //添加js
    <script type='text/javascript'>
    $.get("https://v1.hitokoto.cn/",function(data,status){
      if (status == 'success'){
        $('.hitokoto').text(data.hitokoto);
      }else{
        $('.hitokoto').text('獲取出錯!');
      }
    });
    </script>
    //添加樣式
    <style type="text/css">
    .hitokoto{
        border-left: 5px solid #61B3E6;
        border-right: 5px solid #61B3E6;
        background-color: #ebebeb;
        padding: 10px;text-align: left;
        color: #095AD4;
        margin: 5px 0 5px 0;
    }
    </style>

    在需要展示的地方添加以下代碼調用:

    <div class='hitokoto'></div>

    本地部署PHP版(非wordpress)

    存儲數據文件:本頁頁底(data)

    file_get_contents?函數實現版:

    <?php
    // 存儲數據的文件
    $filename = 'data.dat';        
     
    // 指定頁面編碼
    header('Content-type: text/html; charset=utf-8');
     
    if(!file_exists($filename)) {
        die($filename . ' 數據文件不存在');
    }
     
    // 讀取整個數據文件
    $data = file_get_contents($filename);
     
    // 按換行符分割成數組
    $data = explode(PHP_EOL, $data);
     
    // 隨機獲取一行索引
    $result = $data[array_rand($data)];
     
    // 去除多余的換行符(保險起見)
    $result = str_replace(array("\r","\n","\r\n"), '', $result);
     
    echo $result;

    如何在靜態頁面中引用

    上面的代碼都是直接在頁面中就輸出了隨機的句子。如果想像一言那樣在靜態的網頁中引用這個 api,該如何實現呢?

    很簡單,將最后那一行的?echo $result;?換成

    echo 'document.write("'.htmlspecialchars($result).'");';

    然后在需要的位置用引入 js 的方式進行調用即可。

    示例代碼:

    <script src="http://yourwebsite.com/api.php"></script>

    下載權限
    查看
    • 免費下載
      評論并刷新后下載
      登錄后下載
    • {{attr.name}}:
    您當前的等級為
    登錄后免費下載登錄 小黑屋反思中,不準下載! 評論后刷新頁面下載評論 支付以后下載 請先登錄 您今天的下載次數(次)用完了,請明天再來 支付積分以后下載立即支付 支付以后下載立即支付 您當前的用戶組不允許下載升級會員
    您已獲得下載權限 您可以每天下載資源次,今日剩余
    國外主題

    Baxel - WordPress的最小博客主題

    2019-11-18 7:29:00

    資源

    虎年頭像生成器和冰墩墩表情生成器

    2022-2-13 11:46:44

    ??
    Npcink上的部份代碼及教程來源于互聯網,僅供網友學習交流,若您喜歡本文可附上原文鏈接隨意轉載。
    無意侵害您的權益,請發送郵件至 1355471563#qq.com 或點擊右側 私信:Muze 反饋,我們將盡快處理。
    4 條回復 A文章作者 M管理員
    1. 本地部署便捷版 不顯示結果,控制臺報錯 Uncaught TypeError: hitokoto is not a function at (index):198

      • 感謝您的反饋,經測試發現,該代碼確實無效,抱歉了。
        由于已經有了其他便捷的解決方案,也可供您參考。

      • Muze

        是說的 遠程部署(JS腳本版)這個嗎,這個我試了是有效的,就是不能自定義想要的句子 ?笑哭了?

      • 也可以看看其他的版本嘛

    ?
    個人中心
    購物車
    優惠劵
    今日簽到
    有新私信 私信列表
    搜索
    主站蜘蛛池模板: 欧美日韩一区二区成人午夜电影| 日本大香伊一区二区三区| 日韩在线视频不卡一区二区三区| 国产精品综合一区二区| 国产亚洲一区二区三区在线不卡| 无码国产精品一区二区免费式直播| 一区五十路在线中出| 中文字幕AV一区二区三区| 狠狠色婷婷久久一区二区| 国产日韩精品一区二区在线观看播放| 伊人精品视频一区二区三区| 无码人妻精品一区二区三区久久久 | 免费一区二区三区四区五区| 无码视频一区二区三区在线观看| 国产精品视频无圣光一区| 一区二区在线电影| 久久精品国产一区二区| 精品91一区二区三区| 国产成人精品久久一区二区三区| 日本大香伊一区二区三区| 一区二区三区免费看| 黑巨人与欧美精品一区| 亚洲一区中文字幕在线观看| 伊人色综合一区二区三区 | 国产激情视频一区二区三区| 国产伦一区二区三区高清 | 国产一区二区精品久久| 精品一区二区三区无码免费直播| 亚洲国产激情在线一区| 亚洲国产日韩一区高清在线| 国产一区二区三区夜色| 一区二区国产在线播放| 国产中文字幕一区| 性色AV一区二区三区无码| 亚洲一区二区三区在线网站| 一区二区三区观看免费中文视频在线播放 | 国产在线视频一区| 无码精品蜜桃一区二区三区WW| 国精产品一区一区三区有限在线| 亚拍精品一区二区三区| 亚洲一区无码中文字幕乱码|