Dagens iteration av formmotor:
Stöd flera formulär på en sida;
Stöder applikation i veiws-motorn, så att olika åtgärder kan läggas till i listan som återges av veiws-motorn.
Visningsskiktet och kontrollskiktet i formulärmotorn är separerade.
Lägg till ett fält för en rullgardinsknapp.
Eftersom formulärmotorn och vymotorn separerades från lågkodsplattformen och en del rekonstruktion gjordes, har denna iteration helt gjort sina möjligheter utöver den tidigare versionen.
被这个小问题卡了一天。
wordpress中设置cookie比较特别。要写在theme的functions文件中,并加载到init钩子上。
function custom_set_cookie() {
setcookie( 'key', 'value', time() + 3600 * 24, COOKIEPATH, COOKIE_DOMAIN );
}
add_action( 'init', 'custom_set_cookie' );
最简单的解决方法,就是在冲突的package后边不加版本号,而是加上“any”,这样flutter会自动匹配合适的包依赖的版本。
dart_code_metrics: any
一直没搞懂wordpress列表的分页原理。今天终于搞明白了。
wordpress的列表和分页数据都写在全局参数:$wp_query中,只要把查询出来的列表数据放进这个参数,就可以用the_posts_pagination() 或get_the_posts_pagination()将分页显示出来,至于点击分页后出现的页面,不用管,wordpress都做好了。
Koda:
global $wp_query;
$wp_query=new WP_Query($arg);
然后,就可以在这个列表下边用the_posts_pagination()显示分页了。
# 把百度的文心千帆大模型整合进wordpress,并对比GPT
上周末,把百度的文心千帆大模型整合进了wordpress。
一、基本的过程:
1、先在百度申请体验文心千帆大模型,需要先认证。
2、通过后,开通一下大模型,因为百度的大模型使用是收费的,按token收费,需要你的账户中有余额才能开通。
3、然后,创建一个应用,这样就有了appid、api key和secret key
4、然后,再看文档,接相应的接口。
基本就是通过api key和secret key获得access token,然后再提交问题,获取答案。
二、关键代码
1、获取access token的关键代码
“`php
private function getAccessToken(){
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => “https://aip.baidubce.com/oauth/2.0/token?client_id=”.$this->client_id.”&client_secret=”.$this->client_secret.”&grant_type=client_credentials”,
CURLOPT_TIMEOUT => 30,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => ‘POST’,
CURLOPT_HTTPHEADER => array(
‘Content-Type: application/json’,
‘Accept: application/json’
),
));
$response = curl_exec($curl);
curl_close($curl);
$rtn = json_decode($response);
return $rtn->access_token;
}
“`
2、调用Ernie Bot大模型的关键代码
“`php
public function runErnieBot($message) {
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => “https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions?access_token={$this->getAccessToken()}”,
CURLOPT_TIMEOUT => 30,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => ‘POST’,
CURLOPT_POSTFIELDS =>$message,
CURLOPT_HTTPHEADER => array(
‘Content-Type: application/json’
),
));
$response = curl_exec($curl);
curl_close($curl);
return $response;
}
“`
3、调用Ernie Bot Turbo大模型的关键代码
“`php
public function runErnieBotTurbo($message) {
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => “https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/eb-instant?access_token={$this->getAccessToken()}”,
CURLOPT_TIMEOUT => 30,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => ‘POST’,
CURLOPT_POSTFIELDS =>$message,
CURLOPT_HTTPHEADER => array(
‘Content-Type: application/json’
),
));
$response = curl_exec($curl);
curl_close($curl);
return $response;
}
“`
这几天的测试,百度文心千帆大模型在中文方面的表现的确比GPT好多了。
GPT的中文水平,就是“说明文”的水平。
百度文心千帆大模型的中文水平,至少也比“说明文”好一些。
För plattformen CMS jag byggt själv har medlemsprenumerationsdelen alltid varit "enkel att implementera". I helgen strukturerade jag om den här delen och utvecklade kärndelen.
1. Metod
Generellt sett inkluderar medlemskapsprenumerationen huvudsakligen tre delar: medlemskapsprenumerationsplan och -köp, medlemsbehörighetskontroll och medlemshantering.
1. För medlemsprenumerationsplaner och köp
Förbered dig bara på att göra några tillägg baserat på det befintliga köpcentrets system.
2. För medlemsbehörighetskontroll,
Detta behöver nämnas särskilt. Vi planerar inte att göra det utifrån ett rollbehörighetssystem, utan ett separat medlemskontrollerat system.
Utifrån rollbefogenhetssystemet görs medlemmar till en rollserie och varje typ av medlem görs till en roll i denna rollserie. Det låter rimligt. Men i det här fallet är det väldigt besvärligt att göra eller använda, speciellt när det är mycket affärer, de olika logikerna kommer att vara mycket komplicerade och alla typer av förvirring kommer att uppstå om du inte är försiktig. Och det är inte tillräckligt flexibelt.
Dessutom är medlemsprenumerationsdelen av många utmärkta system faktiskt inte rollbaserad. Istället implementeras behörighetskontroll baserat på "märken" eller order. Många välsäljande plugin-program för medlemskapsabonnemang, inklusive WordPress, görs på detta sätt.
Baserat på "användartaggar":
I huvudsak är det samma princip som karaktärssystemet. Det är för att definiera några "märken" för medlemmar. Användare som köper medlemskapsabonnemangsplanen som är kopplade till detta "märke" kommer att "märkas med detta märke", så att kontrollen av medlemsbehörigheter kan uppnås.
Baserat på beställning:
Köp en medlemsprenumerationsplan och gör en beställning Efter betalning kommer utgångstiden att skrivas in i beställningen. Därför kan du utifrån ordningen bedöma om användaren är medlem, vilken typ av medlem det är och om den har gått ut. På så sätt kan du kontrollera medlemsbehörigheter.
Jag har gjort en orderbaserad metod tidigare, och den här gången planerar jag att använda "användartaggar".
Det är inget fel med att vara baserad på beställningar, men beställningssystemet för plattformen CMS jag bygger nu stödjer många beställningstyper, vilket gör att beställningsmodellen är relativt "stor, jag planerar inte att "lägga till vikt" till den längre. så jag valde Baserat på "användartaggar".
3. Medlemshantering
Baserat på den befintliga användarhanteringstillägget planerar vi inte att göra medlemshantering ensam.
2. Tillämpliga scenarier
1. Grundscenario
Hela produkten har en eller flera prenumerationsplaner, som användare köper och njuter av medlemstjänster.
Definiera medlemskapstaggar globalt Varje medlemskapstagg innehåller minst tre fält: namn, slug och tillhörande prenumerationsplan-id.
När en användare köper en prenumerationsplan med ett medlemsmärke, kommer medlemsmärket och utgångstiden att skrivas in i användarens metadata.
2. Scenario för plattform/flerhyresgäst
För plattformar och SAAS med flera hyresgäster finns det ett mycket viktigt scenario: prenumerationsplanen som tillhandahålls av leverantören själv.
Definiera leverantörens medlemstagg i leverantörens användares metadata. Nyckeln till leverantörens medlemstagg kan inte vara densamma som nyckeln för den globala medlemstaggen.
När en användare köper en prenumerationsplan från den här leverantören kommer motsvarande medlemskapstagg och utgångsdatum att skrivas till den köpande användarens metadata.
Denna iteration implementerar bara grundläggande scenarier, men den måste kunna utvidgas till plattforms- och multi-tenant-scenarier.
3. Ta reda på om medlemskapet har gått ut när du loggar in
När användaren loggar in bedöms det om det har gått ut. Om det har gått ut, uppdatera medlemsmärket i metadatan till falskt och utgångsdatumet till falskt.
嵌入的网页必须是https的url才能显示,http的url不显示。
对于wordpress的theme作者和plugin作者,翻译自己的theme和plugin就避不开po文件和 […]
2019年做了一个出海的短视频社交APP。当时对tiktok和抖音用户行为做了一些对比分析。以下是当时的一些笔记。
1、关于短视频和直播
对于国内用户,短视频和直播都是用来做内容的,所以,短视频和直播都是内容形式。
对于海外用户,短视频和直播,首先是通讯方式,短视频首先是短信的概念,只不过发的是视频。直播,首先是打电话的概念,只不过可以同步视频画面,无论是一对一还是一对多。
这也是为什么海外会有很多基于短视频和直播通讯的社交APP,而国内,大多是制作短视频和为更好地做直播节目而服务的产品。
2、关于粉丝
对于国内用户来说,粉丝就是钱,关注量就是用来变现的关键数字。
对于海外用户来说,尤其对欧美用户来说(tiktok的用户群普遍年龄比较小),粉丝就是朋友,这是一个很值得炫耀的数字,tiktok上大量的年龄比较小的用户普遍以有很多朋友为傲。
3、关于直播和直播礼物
国内的直播都是做内容的。主要就是卖艺和卖商品。画面精美、各种诱惑、费尽心机。
海外的直播,包括tiktok,真的就是“通讯工具”。
首先,是直播总量上,和抖音没法比。
然后,最常见的就是一个女的和一群男的瞎聊天,画面?诱惑?那是啥?就是随便聊个天。这样的,送礼物,极少。
偶尔也有卖艺的,但其质量、人气等和国内的直播相去甚远。送礼物的情况,整体上也和国内的直播没法比。
js的问题,都是异步的问题。
wordpress对各种js的加载也是按一定的顺序的。wordpress基本上是先加载本身的js,然后再加载自己定义的js。
$(function(){})
这样如果遇到如下问题
uncaught typeerror: $ is not a function
可以换个写法
jQuery(function($){})