|
...
|
...
|
@@ -508,31 +508,66 @@ class UpdateSeoTdk extends Command |
|
|
|
|
|
|
|
$project = Project::find($project_id);
|
|
|
|
#TODO 2025-05-16 发现{qz_x}{hz_x} 已经应用到其他指令里面,去掉限制
|
|
|
|
if (!in_array(8, explode(',', $project->deploy_optimize->special))) {
|
|
|
|
// 前缀关键词
|
|
|
|
if (preg_match_all("/\{qz_(\d+)\}/", $prompt, $matches)) {
|
|
|
|
foreach ($matches[0] as $key => $val) {
|
|
|
|
if (!in_array(8, explode(',', $project->deploy_optimize->special))) {
|
|
|
|
$keyword = $this->getPrefixKeyword($project_id, 'prefix', $matches[1][$key]);
|
|
|
|
if (!$keyword) {
|
|
|
|
echo getmypid() . ' ' . '前缀关键词为空 跳过' . PHP_EOL;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
$prompt = str_replace($val, $keyword, $prompt);
|
|
|
|
} else {
|
|
|
|
echo getmypid() . ' ' . '特殊前后缀项目,指令中有前缀变量 跳过' . PHP_EOL;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// 后缀关键词
|
|
|
|
if (preg_match_all("/\{hz_(\d+)\}/", $prompt, $matches)) {
|
|
|
|
foreach ($matches[0] as $key => $val) {
|
|
|
|
if (!in_array(8, explode(',', $project->deploy_optimize->special))) {
|
|
|
|
$keyword = $this->getPrefixKeyword($project_id, 'suffix', $matches[1][$key]);
|
|
|
|
if (!$keyword) {
|
|
|
|
echo getmypid() . ' ' . '前缀关键词为空 跳过' . PHP_EOL;
|
|
|
|
echo getmypid() . ' ' . '后缀关键词为空 跳过' . PHP_EOL;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
$prompt = str_replace($val, $keyword, $prompt);
|
|
|
|
} else {
|
|
|
|
echo getmypid() . ' ' . '特殊前后缀项目,指令中有后缀变量 跳过' . PHP_EOL;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// $project = Project::find($project_id);
|
|
|
|
// #TODO 2025-05-16 发现{qz_x}{hz_x} 已经应用到其他指令里面,去掉限制
|
|
|
|
// if (!in_array(8, explode(',', $project->deploy_optimize->special))) {
|
|
|
|
// // 前缀关键词
|
|
|
|
// if (preg_match_all("/\{qz_(\d+)\}/", $prompt, $matches)) {
|
|
|
|
// foreach ($matches[0] as $key => $val) {
|
|
|
|
// $keyword = $this->getPrefixKeyword($project_id, 'prefix', $matches[1][$key]);
|
|
|
|
// if (!$keyword) {
|
|
|
|
// echo getmypid() . ' ' . '前缀关键词为空 跳过' . PHP_EOL;
|
|
|
|
// return false;
|
|
|
|
// }
|
|
|
|
// $prompt = str_replace($val, $keyword, $prompt);
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
// // 后缀关键词
|
|
|
|
// if (preg_match_all("/\{hz_(\d+)\}/", $prompt, $matches)) {
|
|
|
|
// foreach ($matches[0] as $key => $val) {
|
|
|
|
// $keyword = $this->getPrefixKeyword($project_id, 'suffix', $matches[1][$key]);
|
|
|
|
// if (!$keyword) {
|
|
|
|
// echo getmypid() . ' ' . '前缀关键词为空 跳过' . PHP_EOL;
|
|
|
|
// return false;
|
|
|
|
// }
|
|
|
|
// $prompt = str_replace($val, $keyword, $prompt);
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
|
|
|
|
// 多个核心关键词
|
|
|
|
if(strpos($prompt, '{core keywords 8}') !== false) {
|
|
|
|
$main_keyword = $this->mainKeywords($project_id, 8);
|
...
|
...
|
|